MFMailComposeViewController Swift - 将方向模式设置为仅纵向

MFMailComposeViewController Swift - Set orientation mode as portrait only

我正在使用 MFMailComposeViewController 如何将方向模式设置为仅纵向

MFMailComposeViewController 只是一个 ViewController。因此,您可以做的是创建您自己的 MFMailComposeViewController 子类并根据需要覆盖方向方法。

override func shouldAutorotate() -> Bool {
    return false
}

override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask {
    return .Portrait
}

基本格式是 CGAffineTransformMakeRotation( angle ),其中 angle 是以弧度表示的 CGFloat。您可以使用下面的示例代码轻松 rotate 任何 object,而且如果您的项目只有横向,代码 advantage 不关心代码将您的视图转换为纵向

使用这个;

 override func viewWillAppear(animated: Bool) {

        super.viewWillAppear(animated)

        let screenSize: CGRect = UIScreen.mainScreen().bounds
       // Set whatever frame you want
          self.view.frame = CGRectMake(0,0,screenSize.width,screenSize.height)

        self.view.transform = CGAffineTransformMakeRotation(CGFloat(-M_PI_2))


    }

您还可以通过以下方式旋转视图更改:-M_PI_2

  • M_PI = π = 180 度
  • M_PI_2 = π/2 = 90度
  • M_PI_4 = π/4 = 45度