我有一个名为"CustomCell"的自定义UITableViewCell,我在init方法中设置了约束。当我子类"自定义单元格"时,我添加新的 UI 元素并尝试更新约束,但一切都出错了。为了使它正常工作,我在-(void)layoutSubviews
中创建我的约束,但我不确定这是否正确。我想知道我是否在正确的 UITableViewCell 方法中创建我的约束。
是否有任何最佳实践告诉我们应该使用哪种方法创建或更新布局约束?
在下面的init
方法上设置constraint
对UITableViewCell
有好处。因为cell
的框架已经更新了:-
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
看看调试窗口是否在说一些关于不明确的布局。新添加的 UI 元素的 NSAutoressizeMaskLayoutConstraint 可能与您手动设置的元素冲突。如果是这样,请尝试通过您的UIObject.translatesAutoressizeMaskIntoConstraint= NO关闭它们;
但是,如果您有可能从界面生成器创建一个单元格,它将允许从那里设置约束,这是建议遵循的路径