android修改checkbox樣式邊框顏色
阿新 • • 發佈:2018-12-15
之前寫了一個自動登入和記住密碼的功能,用的是checkbox控制元件,但是原生控制元件邊框樣式不太符合要求
如圖,我想修改成白色
在網上查了一些資料,說在style.xml檔案中定義一個樣式
<style name="My_CheckBox" parent="@android:style/Widget.Material.CompoundButton.CheckBox"> <item name="android:colorControlActivated">@color/white</item> <item name="android:colorControlNormal">@color/white</item> </style>
在xml檔案checkbox控制元件下新增樣式 注意 要用
android:theme="@style/My_CheckBox"
這個parent是Material下面的,修改之後的樣式如下
本來沒什麼問題 ,但是後來偶爾登入一次 發現xml檔案報錯,是checkbox報錯,但是xml檔案又沒有標紅,找了半天才發現問題出在樣式上面 然後查詢資料 發現還有一種自定義樣式是
<style name="MyCheckBox" parent="Theme.AppCompat.Light"> <item name="colorControlNormal">@color/white</item> <item name="colorControlActivated">@color/white</item> </style>
這個樣式parent是Theme.AppCopat.Light
換上這一種就OK了 。
網上看到還有一種
<style name="CustomCheckboxTheme" parent="@android:style/Widget.CompoundButton.CheckBox">
<item name="android:button">@drawable/checkbox_style</item>
</style>
parent是Widget.CompoundButton.CheckBox 暫未驗證是否正確
先記錄下來,回頭再查查資料再作記錄