我有 UITableView,其中单元格取自使用 Interface Builder (xib) 文件创建的 UITableViewCell。
问题是单元格的触摸区域不受影响,无论单元格的框架如何。有没有办法来解决这个问题 ?
- xib 视图大小为 768x60(因为还需要支持纵向)
- 内容调整大小没有问题,但触摸区域保持不变。我来自 IB 的原始单元格大小是 768x60,而新大小是 1024x60(横向)。
- 但是,如果触摸 X 点在 768-1024 之间,则单元格不会被选中)
IB 的结构设置如下(检查图像),我也尝试了一些不同的设置。
我该如何解决 ?这是 UITableViewCell 类中 layoutSubviews 方法的日志。
代码
- (void)layoutSubviews
{
NSLog(@"pre frame > %@ ",NSStringFromCGRect(self.contentView.frame));
[super layoutSubviews];
NSLog(@"post frame > %@ ",NSStringFromCGRect(self.contentView.frame));
}
输出
pre frame > {{0, 0}, {748, 62}} // before calling [super layoutSubviews]
post frame > {{0, 0}, {1004, 62}} // after calling [super layoutSubviews]
* * 更新 * *
由于截止日期,我无法弄清楚修补此代码,因此我从头开始创建了 xib 文件(对于包含 UITableView 而不是 UITableViewCell 的大容器视图),问题似乎已经消失。感谢所有试图提供帮助的人。