4.
避免過於龐大的
xib
ios5
中加入的
storyboards(分鏡)
正在快速取代
xib。然而
xib在一些場景中仍然很有用。比如你的
需要適應
ios5
之前的裝置,或者你有乙個自定義的可重用的
view,
你就不可避免地要用到他們。
如果你不得不
xib的話,使他們盡量簡單。嘗試為每個
controller
配置乙個單獨的
xib,盡可能把乙個
view controller
的view
層次結構分散到單獨的
xib中去。
需要注意的是,當你載入乙個
xib的時候所有內容都被放在了記憶體裡,包括任何。如果有乙個不會即刻用到的
view
,你這就是在浪費寶貴的記憶體資源了。
storyboards
就是另一碼事兒了,
storyboard
僅在需要時例項化乙個
view controller.
當家在xib是,所有都被
chache
,如果你在做
os x
開發的話,聲音檔案也是。
在的記述是:
當你載入乙個引用了或者聲音資源的
nib時,
nib載入**會把和聲音檔案寫進記憶體。在
os x
中,和聲音資源被快取在
named cache
中以便將來用到時獲取。在
ios中,僅資源會被存進
named caches
。取決於你所在的平台,使用
nsimage
或uiimage
的`imagenamed:`
方法來獲取資源。
很明顯,同樣的事情也發生在
storyboards
中,但我並沒有找到任何支援這個結論的文件。如果你了解這個操作,寫信給我!
storyboards
的內容的話你可以看看
matthijs hollemans
的beginning storyboards in ios 5
part 1
和part 2
ioS應用效能調優的25個建議和技巧 8
開啟 gzip 壓縮 大量依賴於遠端資源和第三方 apixml,json,html 或者其它格式的。問題是我們的目標是移動裝置,因此你就不能指望網路狀況有多好。乙個使用者現在還在 edge 網路,下一分鐘可能就切換到了 3g。不論什麼場景,你肯定不想讓你的使用者等太長時間。減小文件的乙個方式就是在服...
iOS應用效能調優的25個建議和技巧 10
10.cache,cache,還是cache 乙個極好的原則就是,快取所需要的,也就是那些不大可能改變但是需要經常讀取的東西。我們能快取些什麼呢?一些選項是,遠端伺服器的響應,甚至計算結果,比如 uitableview 的行高。nsurlconnection 缺省會快取資源在記憶體或者儲存中根據它所...
iOS應用效能調優的25個建議和技巧 12
12.處理記憶體警告 一旦系統記憶體過低,ios會通知所有執行中 在官方文件中是這樣記述 如果你的 object 和其他一些可以重建立的 objects 的strong references.幸運的是,uikit 提供了幾種收集低記憶體警告的方法 在中使用 的方法 在你的自定義 uiviewcont...