2010-03-23 68 views
0

我的应用程序启动时必须提供一个alertview。我的应用支持两种风景模式。iphone - 以正确的方向呈现alertview

尽管横向模式设备是当应用程序启动alertview始终显示肖像。

我试图使用加速计来检测方向通知之前的界面方向,并在alertview显示前2秒有正确的方向。

然后,我用这个代码到状态栏设置为不同的方向,希望alertview将遵循...

[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight]; 

或留下,取决于横向模式。

没有用。

有没有办法强制alertview尊重方向?

这里的要点是:我不能为状态栏设置一个横向,我必须检测设备的方向,然后设置状态栏的方向。

感谢您的任何帮助。

+0

使用您所描述的代码,我能够创建一个简单的应用程序,显示在景观UIAlertView中。我已经把它放在这里:http://www.thermoglobalnuclearwar.com/stuff/Example.zip – 2010-03-23 09:24:50

+0

谢谢,但你正在修复委托方向。你不能这样做。我的应用程序(iPad版)被苹果拒绝了。您必须检测用户所处的景观并相应地设置状态栏。如果用户不在任何横向上,则可以将一个横向设置为左侧或右侧。重点是在检测到设备所在的方向后设置状态栏方向。但是你很快就会发现,在那个代表的那一刻,定位通知还没有正常工作...... – SpaceDog 2010-03-23 10:11:25

回答

1

您的应用程序是否使用UITabBarController或UINavigationController?尝试从rootViewController调用警报,该警报可能是UITabBarController或任何其他rootController。 不显示来自即时屏幕(或子视图)的警报。通过覆盖UITabBarController并从里面调用[alert show]。

我希望我得到了你的问题所在

干杯,

Harikant Jammi

+0

谢谢!!!!!!!!!!!!! – SpaceDog 2010-03-26 13:59:57