Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.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
UITableViewCell在iOS 7中具有额外的左右间距_Ios_Objective C_Uitableview_Ios7 - Fatal编程技术网

UITableViewCell在iOS 7中具有额外的左右间距

UITableViewCell在iOS 7中具有额外的左右间距,ios,objective-c,uitableview,ios7,Ios,Objective C,Uitableview,Ios7,我已经使用以下代码修复了分隔符问题: if([tableView respondsToSelector:@selector(setSeparatorInset:)]) { [tableView setSeparatorInset:UIEdgeInsetsZero]; } 但是,在iOS7中,UITableView和单元格.textlab或detailtextlab 我有自定义UITableViewCells,其中我指定了文本标签的位置,所以这会导致标签和iOS 6和iOS 7中的标

我已经使用以下代码修复了分隔符问题:

if([tableView respondsToSelector:@selector(setSeparatorInset:)]) {
      [tableView setSeparatorInset:UIEdgeInsetsZero];
}
但是,在iOS7中,
UITableView
单元格.textlab
detailtextlab

我有自定义UITableViewCells,其中我指定了文本标签的位置,所以这会导致标签和iOS 6和iOS 7中的标准单元格不对齐


有什么想法吗?

你在用故事板吗?如果你是,最好从故事板开始。从情节提要中的UIViewController中选择UITableView对象。在“属性检查器”下,找到“分隔符插入”,选择“自定义”,并确保“左”和“右”均为0

屏幕截图:-


对于UITableViewCell,只能在UITableViewCell的子类中修改cell.textLabel和detailTextLabel的框架。试试这个:

- (void)layoutSubviews{
    [super layoutSubviews];
    self.textLabel.frame = self.textLbFrame;
   self.detailTextLbFrame = self.detailTextLabel.frame; 
}

尝试以下解决方案,在ios 6,7上保持一致
您可以放置自定义
UILabel
并连接到自定义
UITableViewCell

您可以通过在单元格的底部边缘放置UIImageView来设置分隔符
并从情节提要中将分隔符样式设置为“无”


在序列图像板中配置约束以使约束相对于边距时,有一些选项。对于TableView,默认情况下似乎选择了该选项

要修复:选择每个水平约束,选择
Superview.Leading/training
并取消选中相对于边距的


您能提供屏幕截图吗?创建您自己的自定义单元格怎么样?没有太多的工作。如果你通过xcode 4.X使用它,它会工作得很好。这是Xcode 5的问题。没有出路。您必须使用自定义单元格分别有条件地编译ios6和ios7的代码。