我的應用程序中有很多按鈕,它們根據文本內容的大小而有所不同。我想自定義按鈕,但我不知道我是否應該使用Android創建自定義按鈕
A)Ninepatch png格式
B)創建
ÇAndroid的XML)的Photoshop的PNG
我想要的按鈕縮放很好,因此不會因屏幕尺寸而變形。上述方法的積極和消極之處是什麼?有沒有一種理想的方式來解決這個問題?
我的應用程序中有很多按鈕,它們根據文本內容的大小而有所不同。我想自定義按鈕,但我不知道我是否應該使用Android創建自定義按鈕
A)Ninepatch png格式
B)創建
ÇAndroid的XML)的Photoshop的PNG
我想要的按鈕縮放很好,因此不會因屏幕尺寸而變形。上述方法的積極和消極之處是什麼?有沒有一種理想的方式來解決這個問題?
這取決於它們應該是什麼樣子。圓角?複雜的圖像?陰影?純色?
如果你想要簡單的顏色單調按鈕,xml drawables是最好的解決方案。你可以通過xml來做圓角,所以如果你想要的是平淡的,這是最好的選擇。
如果您使用的是圖像,那麼9補丁是最好的選擇。使用sdk附帶的draw9patch工具來玩弄它。你也不一定只需要留意角落,有時你可能想要根據圖像分割可調整大小的區域。
PNGs是最後的手段,因爲它們是3個選項中最不靈活的。順便說一句,您應該考慮爲所有按鈕使用狀態列表,而不管您如何實現按鈕使用的可繪製對象。看到下面的鏈接:
http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList
感謝您的徹底答案! –
@JamesFazio np,您還可以使用層列表使用九個補丁和xml形狀的組合來放置一些相當不錯的drawable。 http://developer.android.com/guide/topics/resources/drawable-resource.html#LayerList – Flynn81