我有一个应用程序将为用户自动登录。登录服务器时,将有 50% 透明视图显示“正在登录...”消息,它阻止用户做任何其他事情(请不要与我争论我是否应该通过 HIG 这样做,我们必须让用户登录才能做任何事情)。所以我所做的是在 IB 中创建一个 xib LoadingMessageViewController,在主视图控制器中- (void)viewDidLoad()
,我初始化视图控制器并执行[self.view addSubview:LoadingMessageViewController.view]
;
它在纵向模式下可以正常工作,但在横向模式下不行。我看到了很多关于这个问题的帖子,但没有什么对我有用。
我将 autoresizingMask 设置为 true,在 IB 中设置自动调整大小,我也尝试使用[[[window subviews] objectAtIndex:0] addSubview:LoadingMessageViewController.view]
而不是[self.view addSubview:LoadingMessageViewController.view]
. 使用的问题[[window subviews] objectAtIndex:0]
是它发生在 中-(void)ViewDidLoad
,此时视图还没有真正完成加载到屏幕上,此时的子视图为零,调用 objectAtIndex 将导致指针超出范围异常。
请指出正确的方向。
感谢您阅读我的帖子。
这是它的样子: