iOS應用效能調優的25個建議和技巧 19

2021-07-24 17:23:47 字數 937 閱讀 8685

19.

設定shadowpath

如何在乙個

view

或者乙個

layer

上加乙個

shadow

呢,quartzcore

框架是很多開發者的選擇: 123

4567

89

#import

// somewhere later ...

uiview *view = [[uiview alloc] init];

// setup the shadow ...

view.layer.shadowoffset = cgsizemake(-1.0f, 1.0f);

view.layer.shadowradius = 5.0f;

view.layer.shadowopacity = 0.6;

看起來很簡單,對吧。

可是,壞訊息是使用這個方法也有它的問題

…core animation

不得不先在後台得出你的圖形並加好陰影然後才渲染,這開銷是很大的。 使用

shadowpath

的話就避免了這個問題:

view.layer.shadowpath = [[uibezierpath bezierpathwithrect:view.bounds] cgpath]; 使用

shadow path

的話ios

就不必每次都計算如何渲染,它使用乙個預先計算好的路徑。但問題是自己計算

path

的話可能在某些

view

中比較困難,且每當

view

的frame

變化的時候你都需要去

update shadow path.

mark pospesel的這篇

iOS應用效能調優的25個建議和技巧 4

4.避免過於龐大的 xib ios5 中加入的 storyboards 分鏡 正在快速取代 xib。然而 xib在一些場景中仍然很有用。比如你的 需要適應 ios5 之前的裝置,或者你有乙個自定義的可重用的 view,你就不可避免地要用到他們。如果你不得不 xib的話,使他們盡量簡單。嘗試為每個 c...

ioS應用效能調優的25個建議和技巧 8

開啟 gzip 壓縮 大量依賴於遠端資源和第三方 apixml,json,html 或者其它格式的。問題是我們的目標是移動裝置,因此你就不能指望網路狀況有多好。乙個使用者現在還在 edge 網路,下一分鐘可能就切換到了 3g。不論什麼場景,你肯定不想讓你的使用者等太長時間。減小文件的乙個方式就是在服...

iOS應用效能調優的25個建議和技巧 10

10.cache,cache,還是cache 乙個極好的原則就是,快取所需要的,也就是那些不大可能改變但是需要經常讀取的東西。我們能快取些什麼呢?一些選項是,遠端伺服器的響應,甚至計算結果,比如 uitableview 的行高。nsurlconnection 缺省會快取資源在記憶體或者儲存中根據它所...