創建一個完全空的Drawable看起來像一個普通的需求,作爲佔位符,初始狀態等,但似乎沒有一個好方法來做到這一點......至少在XML中。有幾個地方是指系統資源@android:drawable/empty
,但據我所知(即它不在參考文檔中,並且aapt扼流圈說它找不到資源),這不存在。在Android中創建一個空的Drawable
是否有引用空Drawable的一般方法,或者最終是否爲每個項目創建了一個假的空PNG?
創建一個完全空的Drawable看起來像一個普通的需求,作爲佔位符,初始狀態等,但似乎沒有一個好方法來做到這一點......至少在XML中。有幾個地方是指系統資源@android:drawable/empty
,但據我所知(即它不在參考文檔中,並且aapt扼流圈說它找不到資源),這不存在。在Android中創建一個空的Drawable
是否有引用空Drawable的一般方法,或者最終是否爲每個項目創建了一個假的空PNG?
對我而言,當我在製作空白繪圖時嘗試使用@android:id/empty
時,它不起作用。對我而言,@android:color/transparent
就是其中之一。
凱,我不知道爲什麼會這樣,但我得到了同樣的問題。我認爲這可能與您正在編譯的Android版本有關?無論如何,我發現只需使用@android:id/empty就可以使用@android:drawable/empty。
對我來說,使用@android:drawable/empty會顯示錯誤並阻止編譯。使用@android:id/empty修復了錯誤並讓我編譯,但在Eclipse佈局編輯器中顯示「NullPointerException:null」。我將它改爲@android:color/transparent,現在一切正常。
我還不能投票,否則我會提高Emil的答案。
我用一個空ShapeDrawable
,即創建一個包含只是<shape/>
@null
在XML我自己繪製/ empty.xml具有作爲使用null
作爲Java中的Drawable
同樣的效果。
<shape />
創建一個空的形狀,爲我做的伎倆。或者創建一個文件empty_drawable.xml,其中包含:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" />
因此您可以在其他地方使用它。
你也可以做一個形狀消失時,它在使用的視圖不被創建my_disablable_view.xml啓用:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="true">
<shape android:shape="oval">
<size android:height="10dp" android:width="10dp" />
<solid android:color="@android:color/white" />
</shape>
</item>
<item android:state_enabled="false">
<shape />
</item>
</selector>
我希望這會工作,但如果我用它繪製XML和某個設定作爲佈局XML的背景,我得到錯誤「- 標籤需要'drawable'屬性或子標籤定義可繪製的」 –
user3175580
2016-12-02 00:59:39