我正在重新设计现有项目以允许屏幕旋转和多个设备,但每当我在模拟器中旋转屏幕时,按钮就会消失。从头开始玩具示例有效,但不是活动项目。什么事可能导致这个?一切都在故事板中,并带有自动布局。
答案 0 :(得分:1)
根据您的问题首先,您必须检查您的应用程序是否使用了大小等级,另一件事请在更改方向时检查约束是否破坏。
这个问题没有违反以下程序的约束。但是如果您可以在下面的图像中看到类似的内容,那么您只需要更改约束。
其次如果没有那么你需要通过选择Main.storyboard或ViewController.xib来使用size类。
然后您需要转到文件检查器并选择使用自动布局下方的使用尺寸等级。
使用方向尺寸类的多个设备的应用程序派上用场。
请查看下面的图片。
一旦你做了更改,现在ViewController将能够根据不同方向的设备更改约束。
wAny-hAny 尺寸等级 - 适用于以横向或纵向显示视图的所有设备。在此大小类中添加所有必需的控件。
wCompact-hRegular 尺寸等级 - 仅限纵向模式下的所有iPhone 。如果您在此大小类中添加了任何控件,则当应用程序处于横向模式时也不会显示,也不会在iPad中显示。
wAny-hCompact 尺寸等级 - 仅限横向模式下的所有iPhone 。如果您在此大小类中添加了任何控件,则当应用程序处于纵向模式时也不会显示,也不会在iPad中显示。
在设备或模拟器中显示时的最终结果。其中label仅以纵向模式显示,在横向模式下不可见。
结论。要在横向模式下显示标签,您需要在 wAny-hAny 尺寸类中添加标签,然后更改纵向和横向模式的约束。 对于iPad,您可以使用 wRegular-hRegular 。
希望它可以帮助您解决问题。
答案 1 :(得分:0)