Ios 自定义UITableViewCell内容不';编辑时不要移动

Ios 自定义UITableViewCell内容不';编辑时不要移动,ios,objective-c,uitableview,Ios,Objective C,Uitableview,我正在使用自定义UITableViewCell进行编辑。进入编辑模式时,标签未正确移动。这是.m文件中的代码 - (id) init { self = [super init]; self.driverLabel.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleHeight; self.lastMessageLabel.autoresizingMask

我正在使用自定义UITableViewCell进行编辑。进入编辑模式时,标签未正确移动。这是.m文件中的代码

- (id) init
{
   self = [super init];

    self.driverLabel.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleHeight;
    self.lastMessageLabel.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleHeight;

    [self.contentView addSubview:self.driverLabel];
    [self.contentView addSubview:self.lastMessageLabel];

    return self;
}
自定义单元格映射到“我的故事板”中的单元格上。标签已放置在正确的位置


我在这里做错了什么?

您应该使用固定的左边距,因为您希望标签的左侧与内容视图的左侧保持固定距离,当您进入编辑模式时,内容视图会向右移动


您使用了灵活的左边距。因此,当内容视图的宽度减小时,如果标签不再合适,则标签的左边距将减小,并且看起来不会向右移动足够多。

我也遇到了同样的问题

当删除红色圆圈控件从左侧滑入时,我的自定义UITableViewCell不会向右滑动。这是因为我在Intervace Builder Size Inspector中将布局设置为自动

我将其更改为将掩码转换为约束,现在可以工作了。

您希望发生什么以及实际发生了什么?我不希望添加的标签在显示“删除圆”时向右移动一点。我是否应该设置自动重设网格?如何给出固定的左边距?设置灵活的高度是可以的。只是不要设置灵活的左边距。确保在编辑时
应显示
。你没有使用自动布局,对吗?有一件事可能会有帮助,那就是检查框架以准确地看到发生了什么。一种简单的方法是a)进入编辑模式,b)在
cellforrowatinexpath
中设置断点,c)滚动表格以便调用
cellforrowatinexpath
,d)在控制台中运行命令
po[self.tableView recursiveDescription]
。这将为您提供整个表视图层次结构,您可以很容易地看到内容视图及其内容发生了什么。这可能会给你下一条线索。