Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/97.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UITableview边框隐藏截面单元_Ios_Objective C_Uitableview_Tableviewcell_Uitableviewsectionheader - Fatal编程技术网

Ios UITableview边框隐藏截面单元

Ios UITableview边框隐藏截面单元,ios,objective-c,uitableview,tableviewcell,uitableviewsectionheader,Ios,Objective C,Uitableview,Tableviewcell,Uitableviewsectionheader,我正在尝试创建带边框、节标题和单元格的UITableview。我正在使用xib文件。UITableview和单元格是使用xib文件创建的,其中“ViewForHeaderSection”用于节头,但当我尝试将边框设置为UITableview时,它会隐藏节及其后面的单元格。 } 我想要UITableview边框,但有完整的节头和单元格,有人知道如何实现吗?您可以尝试假装您想要的行为。不使用边框,您必须使用添加在UITableViewCell的所有四个角上的UIView,每个UIView具有适当的

我正在尝试创建带边框、节标题和单元格的UITableview。我正在使用xib文件。UITableview和单元格是使用xib文件创建的,其中“ViewForHeaderSection”用于节头,但当我尝试将边框设置为UITableview时,它会隐藏节及其后面的单元格。

}


我想要UITableview边框,但有完整的节头和单元格,有人知道如何实现吗?

您可以尝试假装您想要的行为。不使用边框,您必须使用添加在
UITableViewCell
的所有四个角上的
UIView
,每个
UIView
具有适当的高度/宽度,并使用灰色作为背景色。现在,在您的
cellForRow
中,您必须检查单元格的位置,并根据该位置隐藏/取消隐藏顶部和底部
UIView
(左侧和右侧
UIView
)。大概是这样的:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

    .....
    if(indexPath.row == 0){

        [cell.topBorderView setHidden: NO];
        [cell.bottomBorderView setHidden: YES];

    }else if(indexPath.row == dataSourceArray.count - 1){

        [cell.topBorderView setHidden: YES];
        [cell.bottomBorderView setHidden: NO];

    }else{

        [cell.topBorderView setHidden: YES];
        [cell.bottomBorderView setHidden: YES];
    }

    return cell;
} 

当然,删除整个
UITableView上的边框

您可以尝试假装您想要的行为。不使用边框,您必须使用添加在
UITableViewCell
的所有四个角上的
UIView
,每个
UIView
具有适当的高度/宽度,并使用灰色作为背景色。现在,在您的
cellForRow
中,您必须检查单元格的位置,并根据该位置隐藏/取消隐藏顶部和底部
UIView
(左侧和右侧
UIView
)。大概是这样的:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

    .....
    if(indexPath.row == 0){

        [cell.topBorderView setHidden: NO];
        [cell.bottomBorderView setHidden: YES];

    }else if(indexPath.row == dataSourceArray.count - 1){

        [cell.topBorderView setHidden: YES];
        [cell.bottomBorderView setHidden: NO];

    }else{

        [cell.topBorderView setHidden: YES];
        [cell.bottomBorderView setHidden: YES];
    }

    return cell;
} 

当然,删除整个
UITableView

上的边框。您的边框宽度太大,需要添加的内容太多 用于单元格中的配置文件图片 您应该以边框宽度的增量设置profile Picture imageView left

let margin_left =  BorderWidth  + space_from_left. 
ProfileImageView.frame = CGRect(x: margin_left,y:Y,width:yourRequiredWidth,  height:requiredHeight)
和节标题标签相同

 let margin_left =  BorderWidth  + space_from_left. 
    headerLabel.frame = CGRect(x: margin_left,y:Y, width:yourRequiredWidth,  height:requiredHeight)

您的边框宽度太大,您必须添加的是 用于单元格中的配置文件图片 您应该以边框宽度的增量设置profile Picture imageView left

let margin_left =  BorderWidth  + space_from_left. 
ProfileImageView.frame = CGRect(x: margin_left,y:Y,width:yourRequiredWidth,  height:requiredHeight)
和节标题标签相同

 let margin_left =  BorderWidth  + space_from_left. 
    headerLabel.frame = CGRect(x: margin_left,y:Y, width:yourRequiredWidth,  height:requiredHeight)

你能分享你的代码吗?做一件事。我不知道这是正确的答案。但是试试看。增加边框高度的大小,并在节标题的底部设置标签。我们可以自定义节标题。这里有一个委托方法。您可以再做一件事来避免此问题。根据边框宽度将tableView的边框颜色设置为背景色或tableView的父视图和左填充。这样可以避免这个问题。您将边框宽度设置为20px,这将隐藏高度为50px的节标题顶部区域。实际上,您将看到节标题的30像素。您应该增加剖面高度并为子视图添加高度偏移20 px,或者减少边框宽度以查看放置的子视图。是否可以共享代码?请执行一件事。我不知道这是正确的答案。但是试试看。增加边框高度的大小,并在节标题的底部设置标签。我们可以自定义节标题。这里有一个委托方法。您可以再做一件事来避免此问题。根据边框宽度将tableView的边框颜色设置为背景色或tableView的父视图和左填充。这样可以避免这个问题。您将边框宽度设置为20px,这将隐藏高度为50px的节标题顶部区域。实际上,您将看到节标题的30像素。您应该增加剖面高度并为子视图添加高度偏移20 px,或者减少边框宽度以查看放置的子视图