我在故事板中创建了一个带有原型单元格的表视图,其中包含"使用Autolayout"在Xcode 5中未选中。
单元格是UITableViewCell的子类,主要是添加IBOutlets并且里面没有代码。结果是一个混乱的布局。我试着改变自动化面具而没有运气。还尝试了this。
如果我实现了一个空的layoutSubviews
,那么它显示正常。知道发生了什么事吗?
auto layout still enabled虽然取消了检查,但仍然是吗?
修改
更多细节......
@interface SettingDefaultTableViewCell : UITableViewCell
@property (nonatomic, weak) IBOutlet UILabel *label;
@property (nonatomic, weak) IBOutlet UIImageView *imageView;
@property (nonatomic, weak) IBOutlet UIView *backgroundView;
@end
@implementation SettingDefaultTableViewCell
- (void)layoutSubviews
{
// Emtpy implementation to fix weird layout bug
}
@end
禁用Autolayout的故事板:
未使用上述layoutSubviews
修复时的结果:
编辑2:
答案 0 :(得分:0)
未记录的UITableViewCell layoutSubviews
正在修改单元格:
backgroundView
框架。imageView
(“>”)移到左侧。因此,避免执行超级layoutSubviews
修复它。