我只是想知道是否可以阻止 UINavigationBarItem 随设备旋转,我的意思是当应用程序以纵向模式启动时,导航栏位于设备的“顶部”。一旦用户旋转设备,“左”或“右”侧将成为新的“顶”侧,导航栏将旋转到新的“顶”栏。是否有可能停止这种行为,比如旋转导航栏以外的所有内容?更好的是,我能否旋转导航栏按钮,以便用户仍然可以看到正常的按钮图标?
谢谢!
最佳答案
我看到两个可能的选择:
首先是为您的应用禁用旋转。然后为 UIDevice 方向编写自己的自定义旋转监控。然后当设备方向改变时,手动调整按钮和 UI。
第二种是允许旋转,但创建一个不旋转的自定义导航栏。这个导航栏必须是完全自定义的,因为符合 UIToolbar 意味着有一个指定顶部或底部的委托(delegate)。左或右不是一个选项。
这两个都不是一个好的选择,我认为继续这个想法不会给您的用户带来良好的体验。标准的东西没有按预期响应可能会令人不快。
如果您确实选择这样做,我会推荐第二个选项,因为它可能需要更少的工作。
关于iOS - 是否可以在设备旋转时仅旋转导航栏按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19698327/