iOS 方向改变时视图不会改变方向
iOS View does not change orientation on orientation change
我有一个根视图,其中包含一个滚动视图,其中包含一个(内容)视图。内容视图包含许多子控件。使用模拟器,当我改变方向时,none 视图,包括滚动视图改变方向。例如,下图以纵向模式开始,所有控件都可以正确播放,但切换到横向模式时,只会水平显示纵向模式:
所有这些都是使用 Interface Builder 布局的,因此除了一些 IB 控件外,我在控件视图文件中没有太多代码。
是否有某种约束阻止了所有控件和视图的重新定向?还是我总是必须在方向改变时手动布置它们?
首先,您需要通过勾选您想要的方向来检查您是否允许应用旋转:
- 单击左上角(显示项目导航器)
- Select你的项目名称
- 看看General->Deployment Info->Device Orientation下有什么。
- 相应地调整复选框。
更新:
同时在模拟器上向上滑动并检查设备的旋转是否未锁定。
尝试将其放入您的 AppDelegate/view 控制器中:
- (BOOL)shouldAutorotateToInterfaceOrientation:
(UIInterfaceOrientation)interfaceOrientation
{
return YES;
}
(我认为这不是 constraint/layout 问题,因为状态栏甚至没有旋转)
我有一个根视图,其中包含一个滚动视图,其中包含一个(内容)视图。内容视图包含许多子控件。使用模拟器,当我改变方向时,none 视图,包括滚动视图改变方向。例如,下图以纵向模式开始,所有控件都可以正确播放,但切换到横向模式时,只会水平显示纵向模式:
所有这些都是使用 Interface Builder 布局的,因此除了一些 IB 控件外,我在控件视图文件中没有太多代码。
是否有某种约束阻止了所有控件和视图的重新定向?还是我总是必须在方向改变时手动布置它们?
首先,您需要通过勾选您想要的方向来检查您是否允许应用旋转:
- 单击左上角(显示项目导航器)
- Select你的项目名称
- 看看General->Deployment Info->Device Orientation下有什么。
- 相应地调整复选框。
更新:
同时在模拟器上向上滑动并检查设备的旋转是否未锁定。
尝试将其放入您的 AppDelegate/view 控制器中:
- (BOOL)shouldAutorotateToInterfaceOrientation:
(UIInterfaceOrientation)interfaceOrientation
{
return YES;
}
(我认为这不是 constraint/layout 问题,因为状态栏甚至没有旋转)