2011-07-10 30 views
0

我正在使用btn_default作爲我的微調背景,而且效果很好。我現在想讓btn_default透明。我已閱讀過有關可能使用九個補丁製作基於btn_default的自己的按鈕,但無法在任何位置找到btn_default.png的問題。我不知道這是如何做到這一點,如果有人解釋如何使btn_default透明,將不勝感激。如何使android:drawable/btn_default透明

+0

你是什麼意思透明水淨化文本標籤?完全不可見? – iTurki

回答

0

這裏是我結束了這是修改btn_default_normal並刪除背景並將其保存爲btn_default_normal_invisible。透明度可能是一個貧窮的解釋,因爲我真的只是想這一切走了這麼微調看起來像那些不紡紗

 <Spinner 
     android:id="@+id/m1_ss_spinner" 
     android:background="@drawable/btn_default_normal_invisible" 
    /> 
1

您要查找的圖像位於android sdk文件夾中,即:我的mac上的android-sdk/platforms/android-1.6_r02-macosx/data/res/drawable/btn_default.xml。實際上它是一個狀態列表drawable,它定義了哪個圖像用於哪個按鈕狀態。

您可以將btn_default.xml和相應的圖像(btn_default_normal.9.png,...)複製到您的項目可繪製文件夾中並編輯png,並使按鈕使用您的自定義btn_default.xml作爲背景。如果你複製和更改圖像,你必須遵守許可證(我認爲它是Apache 2)。

編輯

沒有圖片 「btn_default.png」,只是一個statelist繪製 「btn_default.xml」。它列出了按鈕不同狀態的圖像。這些圖像是名稱:btn_default_normal.9.png,btn_default_selected.9.png,btn_default_pressed.9.png等

要找到某些圖像,您必須通過平臺特定的res文件夾工作。這些資源將位於他們所介紹的android版本的平臺文件夾中。即我可以在中找到btn_default_normal.9.png android-1.6_r02-macosx/data/res/drawableandroid-1.5/data/res/drawable,但不在android-8/data/res/drawable。這意味着1.5產生了資源,1.6以某種方式改變了資源,並且android-8正在使用來自早期版本(可能是1.6)的這個資源。

並非所有的資源都是公共的,這就是錯誤的原因:「錯誤:資源不是公開的(在'後臺',值爲'@android:drawable/btn_default_transparent')」。要使用btn_default_transparent.xml,請將btn_default_transparent及其引用的圖像複製到您的項目resfolder中。

+0

我進入了android sdk文件夾,例如:我的電腦上的C:\ android \ android-sdk \ platforms \ android-8 \ data \ res \ drawable \文件夾,並且看到了btn_default.xml,我也看到了btn_default_transparent.xml。所以我想如果btn_default工作,那麼應該btn_default_transparent,但我得到一個錯誤錯誤:錯誤:資源不公開。 (在'background'處,值爲'@android:drawable/btn_default_transparent')。我從來沒有見過btn_default.png,但認爲btn_default_transparent可以做到這一點,但如果它能工作。有人關心解釋一個作品,而不是另一個? thakns – WmBurkert

+0

我的項目res/drawable文件夾現在有btn_default_pressed.9.png,btn_default_selected.9.png,btn_default_transparent_normal.9.png和btn_default_transparent.xml。我的spiiner包含這一行android:background =「@ android:drawable/btn_default_transparent」,並獲得關於未公開的相同錯誤。我將搜索更多爲什麼,但我認爲我會張貼,以防您在我找到解決方案之前回復。我相信它的東西很傻。 – WmBurkert

+0

您仍在使用sdk的資源!您必須在您的項目中複製btn_default_transparent.xml,可能需要進行編輯!btn_default_transparent.xml是私人的!並將xml中的背景屬性更改爲android:background =「@ drawable/btn_default_transparent」 – thaussma