首页 > 解决方案 > 保留 iPhone X 主页指示器的纵向位置

问题描述

即使屏幕方向是横向,有没有办法在纵向位置显示主页指示器?

标签: iosiphoneswiftiphone-x

解决方案


正如@the4kman 指出的那样,实现这一目标的唯一方法是使用视图转换:

view.transform = CGAffineTransform(rotationAngle: .pi / 2)

而且,应该转变的观点应该是内心的观点。您需要将其高度设置为等于父视图宽度,并将其宽度设置为父视图高度。它应该垂直和水平居中

在此处输入图像描述

您可以支持应用程序中的所有方向,并且只为该特定控制器禁用它。

视图控制器实现:

import UIKit

class PortraitController: UIViewController {

    @IBOutlet weak var viewLandscaped: UIView!

    override func viewDidLoad() {
        super.viewDidLoad()

        viewLandscaped.transform = CGAffineTransform(rotationAngle: .pi / 2)
    }

    override var supportedInterfaceOrientations : UIInterfaceOrientationMask {
        return .portrait
    }
}

结果:

在此处输入图像描述 在此处输入图像描述


推荐阅读