我创建了一个UIView,它有两个控件,一个标签和一个活动指示器(旋转轮),以便在设备同步时显示。由于这个UIViewController需要全局访问,我在应用程序的FinishedLaunching事件中添加它:
window.AddSubview(navigationController.View); window.AddSubview(SyncSpinner.View); window.MakeKeyAndVisible();
我重写了shouldAutoRotate事件并返回true以允许使用设备旋转视图。但是,我无法让这个视图旋转。我甚至尝试从navigationController的视图shouldAutoRotate事件中调用teh shouldAutoRotate事件,但它仍然不会旋转。
如何创建一个非常简单的视图,用作状态对话框,顶部带有标签,中间有微调器,并且正确旋转?
谢谢。
答案 0 :(得分:1)
类似的事情发生在我身上。 我不知道为什么,但iPhone只会将自动旋转消息发送到最新添加的视图的控制器。
解决方法是生成通知并将其发送到控制器。 在完成的启动方法中使用此代码块:
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
[[NSNotificationCenter defaultCenter] addObserver: viewController selector:@selector(changeOrientation:) name:UIDeviceOrientationDidChangeNotification object:nil];
答案 1 :(得分:1)
至少在TweetStation上,问题是我需要从第一个UIViewController传播旋转属性。如果顶层UIViewController不支持旋转,嵌套的那些也不支持。
在TweetStation中,我使用帮助顶级类运行我的顶级tabbar控制器:
http://github.com/migueldeicaza/TweetStation/blob/master/TweetStation/Main.cs#L409