在加载tableview之前检测iPhone方向

时间:2011-09-10 03:16:53

标签: objective-c uitableview uiinterfaceorientation

所以,我有点绑定...根据this post,iPhone / iPad的方向是纵向一直到控制器内部的“自动旋转”功能告诉iOS,方向已经改变。我的问题是,在我有机会检测到方向的变化之前,似乎表格视图单元格正在加载。我的tableview取决于设备的方向,所以在知道方向之前我无法加载它。有什么我不知道的吗?

谢谢你们!

2 个答案:

答案 0 :(得分:0)

调用自动旋转功能时,您可以运行

[tableView reloadData]; 

在轮换发生后重新加载表。

答案 1 :(得分:0)

我相信您正在为应用程序提供LAndScape和Potrait模式的支持,因此您应该在cellForRowAtIndexPath方法中检测设备方向并为当前方向创建单元格:

if ([UIDevice currentDevice].orientation!=UIDeviceOrientationLandscapeLeft && [UIDevice currentDevice].orientation!=UIDeviceOrientationLandscapeRight) {

 Identifier= @"aCell_portrait"

 }else Identifier= @"DocumentOptionIdentifier_Landscape";