仅在设备旋转时旋转某些UI元素

时间:2014-02-11 18:23:03

标签: ios objective-c orientation

我有一个UI,其中布局可以在任何方向上工作,但是特定的UI元素需要旋转以匹配当前的设备方向,并且状态栏应始终处于当前方向。为此,在我的视图控制器中我有

- (BOOL)shouldAutorotate {
    return NO;
}

在我的设置中我做了

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(interfaceChange:) name:UIDeviceOrientationDidChangeNotification object:nil];

在选择器中,我将界面更改为动画,并将状态栏方向设置为新设备方向。这在我的应用程序中工作正常,但有一次导致控制中心的布局问题。我只是想检查这是实现这个目标的最佳/正确方法吗?

1 个答案:

答案 0 :(得分:0)

1)您可以通过以下链接创建2个视图层次结构并更改willRotateToInterfaceOrientation中的屏幕:Easiest way to support multiple orientations? How do I load a custom NIB when the application is in Landscape?

2)或者您可以通过以下链接自行处理所有轮换:Rotating an image 90 degrees on same position when orientation changes