iOS - 如何处理自定义表格单元格中的方向变化
Posted
技术标签:
【中文标题】iOS - 如何处理自定义表格单元格中的方向变化【英文标题】:iOS - how to handle orientation changes in custom table cells 【发布时间】:2010-09-27 22:20:11 【问题描述】:我将 UITableViewCell 子类化为 tableView 的自定义单元格。我将文本和图像添加到单元格的 contentView。
在横向模式 (iPad) 下一切看起来都很棒,但当我旋转到纵向时就没有那么多了。处理方向更改以便所有表格单元格可以重新定位其 contentView 中的内容的最佳位置在哪里?我是把这段代码放在 TableViewController 中还是 UITableViewCell 子类中?
【问题讨论】:
【参考方案1】:您可以使用单元格视图的 autoresizingMask 来查看是否可以自动获得正确的结果。如果这不起作用,您可以在 tableView 的 willAnimateRotationToInterfaceOrientation 中执行以下操作:
NSArray* visibleCells = [tableView indexPathsForVisibleRows];
[self.tableView reloadRowsAtIndexPaths:visibleCells withRowAnimation:NO];
【讨论】:
-reloadRowsAtIndexPaths:withRowAnimation:
的第二个参数不是BOOL
;这是一个UITableViewRowAnimation
类型
好的,我知道这是一个老话题,但是...您可以将BOOL
传递给该方法;苹果已经做到了,NO
不会给你动画,YES
会给你一个自动动画(不管那是什么意思)。
这个答案还是很有用的。我一直在尝试使用“viewWillLayoutSubviews”和使用方向代码来实现这一点,但这会占用太多内存。这很棒。以上是关于iOS - 如何处理自定义表格单元格中的方向变化的主要内容,如果未能解决你的问题,请参考以下文章
如何处理自定义 UIViewController 委托 (ARC)?