我的一位同事建議我避免在我的移動應用中使用任何漸變,因爲手機無法處理渲染按鈕/背景上的漸變所需的工作負載等。我在呈現按鈕時沒有看到任何掛起或任何東西,但有沒有我應該避免的漸變?使用漸變會影響WP7的性能嗎?
回答
這取決於您在哪裏使用它。如果您正在比較SolidColorBrush和GradientBrush of course,則平臺需要做更多工作來渲染漸變,但這是微不足道的性能差異。
我能想到的唯一情況是,假設您在大型ListBox中使用複雜漸變並在ListBoxItems中使用它,這會使很多漸變得到實例化。在這種情況下,我寧願用低質量的JPEG替換漸變。 JPEG(圖像)會自動給我更多的系統級緩存,並且列表框的性能會比你在那裏提供矢量漸變更好。
但是,如果它是個別按鈕或其他控制樣式,使用漸變完全沒問題。 http://jobijoy.blogspot.com/2011/05/wp7dev-tip-2-few-things-to-remember-on.html
我不明白爲什麼漸變會影響性能,但漸變在許多WP7屏幕上不能很好地呈現,因爲它們針對地鐵進行了優化,不會促進漸變。我已經看到我們用於原型的HTC Trophy上的彩色條紋
使用漸變 - - 線性或放射狀 - 不應該有任何顯着的影響
更多這樣的提示可以在這裏我的博客上找到。但是,這並不意味着它不會。
WP7 Silverlight基於普通的Silverlight,而Silverlight基於WPF。在WPF中,線性漸變廣泛使用時會產生顯着影響,而徑向漸變無論出於何種原因都會產生相當大的影響。所以看它的歷史和譜系,經常使用可能會產生實質性影響。也就是說,如果考慮GPU實際需要做的工作來繪製這些圖像,線性和徑向漸變接近相同的工作量,並且可以優化以使用非常少的着色器指令。如果底層場景圖允許頂點修改,則線性降至4(如果我可以修改頂點,則徑向降至5),甚至在大多數情況下甚至可以爲3。這兩種着色器都非常簡單。這意味着不應該是會產生任何實際影響。也許這是微軟在某些時候可以優化的東西。
- 1. 使用jaxb XMLAdapter會影響性能嗎?
- 2. NSClassFromString會影響性能嗎?
- 3. Sysout會影響tomcat的性能嗎?
- 4. 會話變量的性能影響PHP
- 5. 您使用AWSDBProxy嗎?擴展時性能會受到影響嗎?
- 6. 急於加載會影響性能嗎?
- 7. django adminplus會影響性能嗎?
- 8. BindingExpression(path)錯誤會影響性能嗎?
- 9. Oracle數據泵會影響性能嗎?
- 10. Javascript SetTimeOut會影響頁面性能嗎?
- 11. 很多IFRAME會影響性能嗎?
- 12. 變量是否會影響性能?
- 13. 使用require()是否會影響性能?
- 14. 使用CALayer來顯示CGPaths會影響iOS的性能嗎?
- 15. GAC中有未使用的程序集會影響性能嗎?
- 16. 未使用的mysql表會影響網站性能嗎?
- 17. web.config中未使用的行會影響性能嗎?
- 18. 使用scriptlet會影響JSP的性能嗎?
- 19. 使用_config.GetSection(「section」)[「key」]會對性能產生影響嗎?
- 20. 使用'this'關鍵字會影響Java性能嗎?
- 21. 在Java中使用泛型會影響性能嗎?
- 22. 在GridView中使用android:numColumns =「auto_fit」會對性能產生影響嗎?
- 23. 使用KMS進行AWS RDS加密會影響性能嗎?
- 24. 使用完全限定名稱會影響性能嗎?
- 25. setTimeout()會影響性能
- 26. 代碼的重構會影響應用程序的性能嗎?
- 27. string.replaceAll()的性能會受到字符串不可變性的影響嗎?
- 28. 交叉編譯會影響應用程序的性能嗎?
- 29. 異常會影響應用程序的性能嗎?
- 30. 使用數據屬性會影響應用程序的性能?