在我的应用程序中,我需要在用户单击按钮时加载新的视图控制器。我从 XIB 文件加载它。它是根据 XIB 文件中设置的 ORIENTATION 出现的(在视图的“模拟指标”中),而不是实际的设备方向。
如何有问题地更改视图的方向?
注意: 一旦加载视图控制器,它就会正确处理方向更改事件并在旋转时自动调整所有正确的大小。
编辑: 我通过为横向添加另一个 XIB 文件来使其工作:
[self initWithNibName: ( UIDeviceOrientationIsLandscape([[UIDevice currentDevice] orientation]) ? @"tfdSearchViewController_iPhone_Landscape" : @"tfdSearchViewController_iPhone" )]
但这很愚蠢,因为2 个 xib 文件之间的唯一区别是“方向”值。