iOS5中的UITableViewCell contentView宽度变化?

时间:2011-10-14 08:39:59

标签: uitableview ios5

在iOS< 5.0,这个代码用于我的分组表格单元格:

NSLog(@"%f", cell.contentView.bounds.size.width);

返回302。

但是在iOS5上,相同的代码返回320(即包括宽度中分组的单元格布局的边距)。

这是预期的行为吗?

如果是这样,那么我如何可靠地得到分组的tableview单元格的宽度,不包括边距?

1 个答案:

答案 0 :(得分:2)

我认为这种变化与单元格布局的时间有关,并且当更多了解附件,桌面样式等时,在viewWill *或viewDid *方法中设置302的宽度。

当我遇到这个问题时,我通过适当地设置autoresizingMask属性来修复它,以便在代码中将contentView调整为302后使用。

因为我得到了边界宽度所以我可以在单元格的右侧添加一个文本字段,只需添加:

valueTextField.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin;

让它回到了iOS5之前的状态。我怀疑如果设备被旋转或进入和退出编辑模式,我会得到更好的行为,但这个特殊的tableview不会做这些。

希望这有助于你!