[英]Customizing Android checkbox
我正在嘗試部分更改 Android 復選框的圖像。 按照這里的教程,我做了以下實驗:
<CheckBox
android:checked="true"
android:layout_width="wrap_content" android:layout_height="wrap_content"/>
<CheckBox
android:checked="true"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:button="@android:drawable/btn_check_on"
android:background="@android:drawable/btn_check_label_background"/>
<CheckBox
android:checked="true"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:button="@drawable/cb_on"
android:background="@drawable/cb_background"/>
對於第三個復選框,我已將圖像btn_check_on.png和btn_check_label_background.9.png從 Android 的 SDK 復制到項目的res/drawable並將它們重命名為cb_on.png和cb_background.png 。 雖然我希望三個復選框具有相同的外觀,但令人驚訝的是,第三個復選框比前兩個大。 誰能解釋為什么? 我該如何解決這個問題?
嘗試在 cb_background.9.png 中重命名您的圖像 cb_background.png
.9 表示圖像是一個九塊圖像,它會自動重新縮放自身。
我認為這就是第三張圖片更大的原因。
有關九補丁的更多信息: 這里
我的猜測是您只復制了可繪制對象的一種分辨率。 您需要將它們(mdpi、hdpi、ldpi)全部復制到相應的 res 文件夾(drawable-mdpi、drawable-hdpi、drawable-ldpi)
@Jokahero 對 9 補丁的看法是正確的,@jkhouw1 對決議的看法是正確的。 對於復選框,您還需要了解StateListDrawable 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.