ios6和iphone5的適配 1 之UI適配

2021-06-10 16:46:23 字數 2520 閱讀 1598

蘋果每發布乙個系統,都夠開發者忙活一陣的,更新xcode適配新系統:像ios4支援retain需要@2x的圖;像ios5不支援udid;像現在的ios6和iphone5要面對的下面的一堆問題。

1.新增retina 4 launch image,執行工程的時候會主動提示你。

這時候直接點add就好了。會預設新增一張

[email protected]的黑圖:

不新增的話,程式執行起來會上下有黑邊兒的喲

新增完以後的效果

這個地方再囉嗦兩句:當透明第一次在群裡說要新增這麼一張圖的時候,我的第一反應是:那不是程式啟動的時候會有一張黑圖麼?而我的程式是不需要啟**的。而當自已新增這張圖的時候才發現,這個擔心是多餘的。估計蘋果自已做了什麼優化,判斷出來是黑圖的時候就直接給跳過了。

2.group table view background color is deprecated in ios 6.0

在使用背景色的時候,我最喜歡用的乙個系統自帶的顏色就是:"group table view background color"。現在既然這個顏色消失了,換個別的顏色就好嘍。

3.關於多個target

我們知道新增的時候,會直接新增到工具裡,這時候如果有多個target的時候,直接將

[email protected]檔案,拖拽到相應的"copy bundle resources"裡就好了。

再有要注意的就是多個target在模擬器執行的時候,現在不像原來那麼方便,直接切換配置檔案就可以執行了。需要在測試不同target表示的時候,除了切換配置檔案還需要清空模擬器,不然不好使喲~

4.xcode4.5不再支援armv6即:ios4.3.3以下的系統.

不被支援的硬體裝置包括:ipod 2nd gen, iphone 3g 或更老的iphone

例如我打包時的錯誤提示就是:

warning: ios deployment targets lower than 4.3 are not supported (current iphoneos_deployment_target ="4.0", archs ="armv7").

因為喜歡用block,所以我開發的東東,一般最低都支援ios4.0,看來是蘋果逼著開發者和使用者公升級啊。

5.奉上一段判斷iphone的**?

#define iphone5 ([uiscreen instancesrespondtoselector:@selector(currentmode)] ? cgsizeequaltosize(cgsizemake(640, 1136), [[uiscreen mainscreen] currentmode].size) : no)

用時候直接?

if(iphone5) ooxx

就可以了。

另外,如果**寫介面的話,在iphone5下view的高是568喲~

6.關於xib自適應的問題

預設的話,如果你的介面上包含scrollview/tableview的話,這個介面基本上是不用改的,因為中間部分會自動拉伸。如果不包含這兩個全屏的控制項的話,怕是要自已再新增乙個專門針對iphone5的xib了。辦法很簡單,新建乙個xib檔案,將裡面view的size設定成retina 4 full screen就可以了。上面已經提到怎麼判斷iphone5了,怎樣讀取不同的xib檔案不用上**了吧?

7.關於螢幕旋轉(ios5的時候就出過一次狀況,這次又來)

要深入理解這個問題,還需要您自已親自做一些實驗,ios6取消了乙個api,增加了兩個api,但是這一去一加滿足不了我的情況:應用在所有的介面都是豎屏,只在乙個螢幕是橫屏。就這乙個情況要實現費了我半天的功夫。只說一下我最後怎麼實現的。

首先:這橫屏的xib裡面的view就是橫的

其次:螢幕適應只支援橫屏?

- (bool)shouldautorotatetointe***ceorientation:(uiinte***ceorientation)inte***ceorientation

第三:在這個view是present出來的

第四:viewdidload裡隱藏狀態列?

- (void)viewdidload

}

?- (voidbool)animated

else

}];

}

如何去舊工程適配iOS6和iPhone5

蘋果每發布乙個系統,都夠開發者忙活一陣的,更新xcode適配新系統 像ios4支援retain需要 2x的圖 像ios5不支援udid 像現在的ios6和iphone5要面對的下面的一堆問題。1.新增retina 4 launch image,執行工程的時候會主動提示你。這時候直接點add就好了。會...

如何去舊工程適配iOS6和iPhone5

蘋果每發布乙個系統,都夠開發者忙活一陣的,更新xcode適配新系統 像ios4支援retain需要 2x的圖 像ios5不支援udid 像現在的ios6和iphone5要面對的下面的一堆問題。1.新增retina 4 launch image,執行工程的時候會主動提示你。這時候直接點add就好了。會...

舊工程適配iOS 6和iPhone 5的一些故事

蘋果每發布乙個系統,都夠開發者忙活一陣的,更新xcode適配新系統 像ios4支援retina需要 2x的圖 像ios5不支援udid 像現在的ios6和iphone5要面對的下面的一堆問題。不被支援的硬體裝置包括 ipod 2nd gen,iphone 3g 或更老的iphone 例如我打包時的錯...