自定义 UIView 在设备方向变化时不会旋转

3
我创建了一个UIView,上面有两个控件,一个标签和一个活动指示器(旋转的轮子),用于在设备同步时显示。由于这个UIViewController需要全局访问,我将它添加到应用程序的FinishedLaunching事件中:
window.AddSubview(navigationController.View); window.AddSubview(SyncSpinner.View); window.MakeKeyAndVisible();
我重写了shouldAutoRotate事件,并返回true以允许视图随着设备旋转。然而,我无法使这个视图旋转。我甚至尝试从navigationController的view shouldAutoRotate事件调用shouldAutoRotate事件,但仍然无法旋转。
如何创建一个非常简单的视图作为状态对话框,顶部有一个标签,中间有一个旋转的spinner,并且可以正确旋转?
谢谢。
2个回答

1
我也遇到了类似的问题。 我不知道为什么,但是iPhone只会将自动旋转消息发送给最新添加的视图控制器。
解决方法是生成通知并将其发送到控制器。 在完成启动方法中使用以下代码块:
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
[[NSNotificationCenter defaultCenter] addObserver: viewController selector:@selector(changeOrientation:) name:UIDeviceOrientationDidChangeNotification object:nil];

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接