iOS 橫豎屏切換及某個界面橫屏

進入正文前先認識幾個概念

portrait? 豎屏(Home鍵在下邊)

upside down? 豎屏(Home鍵在上邊)

landscape? 橫屏 ? |landscape left? 橫屏Home鍵在左邊

|landscape right 橫屏Home鍵在右邊

1、先讓窗口支持橫豎屏

兩種方法可以修改窗口對橫豎屏的支持

一種,代碼控制

在appDelegate中重寫方法,比如

- (UIInterfaceOrientationMask)application:(UIApplication*)application supportedInterfaceOrientationsForWindow:(UIWindow*)window {

if(self.isShouAutoRotate) {

returnUIInterfaceOrientationMaskAll;

}

returnUIInterfaceOrientationMaskPortrait;

}

另一種就是,在【General】-->【Device Orientation】中設置好支持的方向

如圖

兩種方法的利弊,讀者自己推敲。

2、下面認識三個方法

//是否自動旋轉

- (BOOL)shouldAutorotate {

returnYES;

}

//返回支持的方向

- (UIInterfaceOrientationMask)supportedInterfaceOrientations {

returnUIInterfaceOrientationMaskLandscapeRight;

}

//切換橫豎屏時,可以重寫這個方法,來重新布局界面

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {}

3、個別界面橫屏

第一種處理方式: ? 1中對應的設置支持橫屏完成后,在相應的控制器直接實現(xiàn)2中的方法二

第二種處理方式: ? 1中對應的設置支持橫屏完成后,在相應控制器的viewDidLoad方法中強制設置設備朝向,代碼如下:

NSNumber*value = [NSNumbernumberWithInt:4];

[[UIDevicecurrentDevice]setValue:valueforKey:@"orientation"];

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • iOS 中橫豎屏切換的功能,在開發(fā)iOS app中總能遇到。以前看過幾次,感覺簡單,但是沒有敲過代碼實現(xiàn),最近又碰...
    零度_不結冰閱讀 2,301評論 0 0
  • 以下是復制別人的文章過來的,目的是保留下這個方法,便于今后查閱使用,該文章不會用于任何商業(yè)用途,該文章的出處:ht...
    鴻蒙一笑萬物開閱讀 8,746評論 0 3
  • Android開發(fā)中,大多APP可能根據(jù)實際情況直接將APP的界面方向設死了,或豎屏或橫屏。但是,我們還是會遇到橫...
    yoosir閱讀 51,004評論 7 112

友情鏈接更多精彩內容