【问题标题】:Portrait view gives the same width as landscape mode in swift纵向视图在swift中提供与横向模式相同的宽度
【发布时间】:2015-09-12 05:14:58
【问题描述】:

我的第一个视图控制器是横向的。当按下按钮时,第二个 vc 需要以纵向模式显示。我根据框架宽度以编程方式创建按钮。但是纵向 vc 给出了 Width

(self.view.frame.width) = 1024 instead of 798.

这会导致隐藏我的按钮和一些界面问题。

接口代码:

override func shouldAutorotate() -> Bool {

return true
}

override func supportedInterfaceOrientations() -> Int {

return Int(UIInterfaceOrientationMask.PortraitUpsideDown.rawValue)

}

在 info.plist 中,项目设置方向。所有方向都被选中

我的视图控制器层次结构

  1. 视图控制器 - 横向
  2. vc - 肖像
  3. vc- 肖像
  4. vc -风景
  5. vc - 肖像

所以我无法在 info.plist 中更改一个方向

更新:

当我将 info.plist 支持的方向全部更改为纵向时。删除上面的代码意味着没有问题。

但问题在于使用时

      override func supportedInterfaceOrientations() -> Int {

return Int(UIInterfaceOrientationMask.PortraitUpsideDown.rawValue)

}

它以纵向模式显示视图,但宽度和高度与横向模式相同。

但是当 info.plist 中的所有内容发生变化时,它会给出正确的纵向高度和宽度。

如何解决。

谢谢

【问题讨论】:

    标签: ios performance swift ipad uiinterfaceorientation


    【解决方案1】:

    我只是创建一个自定义视图,如果我需要纵向意味着宽度 768 和高度 1024,在 viewDidload 中解决了我的问题

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-18
      相关资源
      最近更新 更多