相关疑难解决方法(0)

我无法理解iOS6中的旋转机制

我的应用程序有视图控制器子类化shouldautorotateToInterfaceOrientation.在其中,我决定每个视图的旋转.这工作正常.但在iOS6中,虽然我阅读了Apple提供的文件,但我无法理解.

我的应用程序将导航控制器作为根视图控制器 该导航控制器具有标签控制器.标签控制器有一些视图控制器.我希望第一个视图控制器(在标签控制器中)仅作为纵向模式查看,第二个视图控制器(在标签控制器中)同时查看纵向和横向模式.它在iOS5中正常工作.但我不知道如何在iOS6中制作它.虽然我知道我应该子类化supportedInterfaceOrientations,但它在旋转发生时不起作用.令我惊讶的是,当一个视图显示时会调用它.如何制作我想要的东西?

谢谢你的阅读.

iphone rotation ios6

5
推荐指数
1
解决办法
2532
查看次数

shouldAutorotate不使用导航控制器swift 2

我的应用程序使用了几个库.Bassically KYDrawerController.我希望我的应用程序仅使用potraite Orientation,但对于一个ViewControllar我需要landscape和Potrait.

我搜索了互联网上的所有解决方案.每个解决方案都是子类化NavigationControllar和Override ShouldAutoRotate方法.但他们没有为我工作.

而这里是整个故事板的近距离观察

灰色的View是KYDrawerControllar视图,它是一个libry用来像Android这样的NavigationDrawer.

我已经为导航控制器创建了一个自定义类,并将其子类化为需要的ViewControllar的Navigation Controllar.

这是守则

class SettingsNavigation: UINavigationController {

override func viewDidLoad() {
    super.viewDidLoad()
   NSLog("visibleControllar", self.visibleViewController!.debugDescription)
    // Do any additional setup after loading the view.
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

override func shouldAutorotate() -> Bool {
    //return self.visibleViewController!.shouldAutorotate()
    return false
}
override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask {
    return UIInterfaceOrientationMask.Portrait
}

override func preferredInterfaceOrientationForPresentation() -> UIInterfaceOrientation {
    return UIInterfaceOrientation.Portrait
}



/*
// MARK: …
Run Code Online (Sandbox Code Playgroud)

uinavigationcontroller screen-orientation ios9 xcode7 swift2

2
推荐指数
1
解决办法
3421
查看次数