2013-01-15 106 views
2

在更新iPhone 5的4英寸屏幕的旧程序时,我发现导航控制器保持原来的3.5英寸屏幕尺寸,并且即使其视图控制器的视图和桌面视图控制器的视图都是全部时仍拒绝伸展以适应4英寸屏幕伸展到适合4英寸的屏幕。由于导航控制器的视图在正常使用期间不可见,因此人们可能会错过它。因为它拒绝适应新的4英寸屏幕,所以在横向模式下,屏幕超出了导航控制器的视图宽度,右边的按钮脱离边界并变得没有反应。为了显示上述情况,我将导航控制器视图的背景颜色设置为半透明红色,并将表格视图的背景颜色设置为半透明蓝色。如下面的屏幕截图所示。问题是,如何解决这个问题。在横向模式下,加号按钮不响应,但在纵向模式下,它可以正常工作。在iPhone 5横向模式下,导航栏右侧的按钮停止工作,如何修复?

http://zhuyali.homedns.org:900/images/screenshot1.jpg http://zhuyali.homedns.org:900/images/screenshot2.jpg

+0

导航控制器如何添加到视图层次?它应该自行调整就好了。 (使用主/明细模板创建一个新项目并自行证明。) – jsd

回答

0

无论您的导航控制器的视图,或者更可能的是,包含它的窗口,都没有得到建立与正确的框架。如果您使用代码创建窗口,请确保您使用的是UIScreen -applicationFrame-bounds,而不是硬编码(320, 460)(320, 480);如果您使用的是NIB,请检查您的自动调整掩码和布局设置。

+0

感谢您的快速解答。我去了MainWindows.xib,并检查了它的属性检查器,并将它的大小从none改为Freeform,它能很好地处理3.5英寸和4.0英寸的屏幕。看到下面的屏幕截图:http://zhuyali.homedns.org:900/images/screenshot3.jpg – user1981439

+1

其实,编译时,得到2个警告。我应该保持关于设置为无,并在启动时更改全屏幕Windows复选框,请参阅下面的截图:http://zhuyali.homedns.org:900/images/screenshot4.jpg – user1981439

相关问题