【移動(dòng)應(yīng)用開發(fā)技術(shù)】關(guān)于iOS屏幕旋轉(zhuǎn)的一些注意事項(xiàng)_第1頁
【移動(dòng)應(yīng)用開發(fā)技術(shù)】關(guān)于iOS屏幕旋轉(zhuǎn)的一些注意事項(xiàng)_第2頁
【移動(dòng)應(yīng)用開發(fā)技術(shù)】關(guān)于iOS屏幕旋轉(zhuǎn)的一些注意事項(xiàng)_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

【移動(dòng)應(yīng)用開發(fā)技術(shù)】關(guān)于iOS屏幕旋轉(zhuǎn)的一些注意事項(xiàng)

前言最近有個(gè)需求,是在App中有一個(gè)查看文件的頁面,由于查看文件橫屏?xí)奖汩喿x,所以boss說要讓這個(gè)頁面可以橫屏。之前都沒有接觸過橫屏的具體實(shí)現(xiàn)方法,一開始走了不少彎路,而且各種bug。在這里把遇到的問題分享一下,希望對(duì)大家有點(diǎn)幫助。要讓你的APP支持旋轉(zhuǎn),你需要進(jìn)行如下幾個(gè)步驟1、全局配置在工程->TARGETS->General->DeploymentInfo中配置

在AppDelegate中配置

2、全局配置做好了,你就可以在控制器中實(shí)現(xiàn)相應(yīng)的旋轉(zhuǎn)方法來讓你的APP支持旋轉(zhuǎn)了我們需要在什么地方實(shí)現(xiàn)控制器的旋轉(zhuǎn)方法呢?有以下兩種情況1、當(dāng)前控制器是window的rootViewController由rootViewController來管理旋轉(zhuǎn)的相關(guān)方法

典型的有UINavigationController、UITableBarController

2、當(dāng)前控制器是modal模式的時(shí)(控制器為modal顯示的控制器),由該控制器自己管理旋轉(zhuǎn)的相關(guān)方法

即控制器是通過presentViewController:animated:completion:方式出來的

控制器的旋轉(zhuǎn)方法介紹控制器的旋轉(zhuǎn)方法在iOS6之前和之后有了比較大的變化1、在iOS6之前只需要實(shí)現(xiàn)下面這個(gè)方法就可以

2、在iOS6之后由下面兩個(gè)方法替代

下面我重點(diǎn)講一下在iOS6之后旋轉(zhuǎn)方法的使用情況。因?yàn)樵趇OS6+、7、8中和iOS9中這兩個(gè)方法的調(diào)用順序以及處理邏輯是不一樣的(坑)

控制器的旋轉(zhuǎn)方法使用1、iOS6+、7、8中會(huì)先調(diào)用shouldAutorotate判斷屏幕是否支持旋轉(zhuǎn)2、iOS9+中會(huì)先調(diào)用supportedInterfaceOrientations來檢查控制器支持的方向枚舉集合

如果該返回YES,屏幕執(zhí)行相應(yīng)的旋轉(zhuǎn)

如果該返回NO,屏幕不會(huì)旋轉(zhuǎn),停止檢查

3、關(guān)于preferredInterfaceOrientationForPresentation方法,該方法的作用是返回最優(yōu)先顯示的屏幕方向。在iOS7之后就不會(huì)調(diào)用了,但是網(wǎng)上說在iOS7之前需要加上,不加會(huì)崩潰(沒有親測)

總結(jié)寫這邊文章主要是因?yàn)橹霸诰W(wǎng)上看了很多資料,但是并有提到旋轉(zhuǎn)方法他們的調(diào)用順序以及處理邏輯的介紹,大部分都是抄來抄去,沒有經(jīng)過自己試驗(yàn)的代碼也貼到網(wǎng)上來,坑了我千萬遍。以上就是這篇文章的全部內(nèi)容了,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論