日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

自定義RadioButton&CheckBox樣式的實(shí)現(xiàn)

系統(tǒng) 2638 0
http://hi.baidu.com/ljlkings/blog/item/a7945124de875c038a82a1b4.html

Android 自定義RadioButton的樣式

我們知道Android控件里的button,listview可以用xml的樣式自定義成自己希望的漂亮樣式。
  最近用到RadioButton,利用xml修改android:background="@drawable/button_drawable",其中button_drawable為自己定義的.xml文件(res/drawable文件下),但是不成功,到網(wǎng)上查找,也沒有正確的說法,我就開始自己嘗試,最后做好了。
  其實(shí)方法很簡單,同樣在res/drawable新建radiobutton.xml如下
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
       <item
            android:state_enabled="true"
             android:state_checked="true"
            android:drawable="@drawable/check" />
       <item
             android:state_enabled="true"
             android:state_checked="false"
             android:drawable="@drawable/checknull" />
   </selector>
  

  1 check和checknull分別為選中和位選中的圖片。
  1 然后在你的布局文件中,RadioButton 布局
  1 設(shè)置android:button = "@drawable/radiobutton",就可以了!
  前后圖片對比如下:

自定義RadioButton&CheckBox樣式的實(shí)現(xiàn)


RadioButton修改樣式
    
<?xml version="1.0" encoding="utf-8"?> 
<resources> 
<style name="CustomTheme" parent="android:Theme"> 
   <item name="android:radioButtonStyle">@style/RadioButton</item> 
</style> 
<style name="RadioButton" parent="@android:style/Widget.CompoundButton.RadioButton"> 
   <item name="android:button">@drawable/radio</item> 
</style> 
</resources> 

  

    
<?xml version="1.0" encoding="utf-8"?> 
    <selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_checked="true" android:state_window_focused="false" 
        android:drawable="@drawable/radio_hover" /> 
    <item android:state_checked="false" android:state_window_focused="false" 
        android:drawable="@drawable/radio_normal" /> 
    <item android:state_checked="true" android:state_pressed="true" 
        android:drawable="@drawable/radio_active" /> 
    <item android:state_checked="false" android:state_pressed="true" 
        android:drawable="@drawable/radio_active" /> 
    <item android:state_checked="true" android:state_focused="true" 
        android:drawable="@drawable/radio_hover" /> 
    <item android:state_checked="false" android:state_focused="true" 
        android:drawable="@drawable/radio_normal_off" /> 
    <item android:state_checked="false" android:drawable="@drawable/radio_normal" /> 
    <item android:state_checked="true" android:drawable="@drawable/radio_hover" /> 
    </selector> 


  


Android 自定義CheckBox 樣式
http://www.pocketdigi.com/20110623/347.html
1,新建Android XML文件,類型選Drawable,根結(jié)點(diǎn)選selector,在這定義具體的樣式。
    
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
	<item android:state_checked="true" android:state_pressed="true"
		android:drawable="@drawable/focused" />
	<item android:state_checked="false" android:state_pressed="true"
		android:drawable="@drawable/normal" />
	<item android:state_checked="false" android:drawable="@drawable/normal" />
	<item android:state_checked="true" android:drawable="@drawable/focused" />
</selector>

  

2,應(yīng)用到Checkbox與Button不同,并不是設(shè)置Background屬性,而是設(shè)置style屬性,所以我們要寫一個(gè)style。
在style.xml寫一個(gè)style,
    <style name="MyCheckBox" parent="@android:style/Widget.CompoundButton.CheckBox">
<item name="android:button">@drawable/checkbox</item>
</style>
  

3,應(yīng)用到Checkbox:
    
<CheckBox android:layout_width="wrap_content" 
android:layout_height="wrap_content"
style="@style/MyCheckBox"
/>

  



新浪搜索界面 用到 自定義RadioButton
http://www.eoeandroid.com/thread-53703-1-1.html

風(fēng)格化的 Toggle Buttons
http://blog.csdn.net/billpig/article/details/6634481

事實(shí)上,可以使用ToggleButton來模仿CheckBox:
    
<ToggleButton android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/bg_toggle"/>

  

bg_toggle.xml:
    
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true" android:drawable="@drawable/toggle_me_on" /> 
    <item android:drawable="@drawable/toggle_me_off" />
</selector>

  


讓CheckBox的選擇框顯示在右邊



只要注意android:button和android:drawableRight就行了:
    
<style name="style_checkbox">
        <item name="android:layout_width">wrap_content</item>
		<item name="android:layout_height">wrap_content</item>
		<item name="android:paddingRight">25dp</item>
		<item name="android:paddingTop">5dp</item>
		<item name="android:paddingBottom">5dp</item>
		<item name="android:textColor">@color/white</item>
		<item name="android:textSize">@dimen/font_middle</item>
		<item name="android:textStyle">italic</item>
		<item name="android:singleLine">true</item>
		<item name="android:button">@null</item>
		<item name="android:drawableRight">@drawable/mycheckbox</item>
		<item name="android:drawablePadding">5dp</item>
		<item name="android:background">@android:color/transparent</item>
    </style>

  



自定義RadioButton&CheckBox樣式的實(shí)現(xiàn)

自定義RadioButton&CheckBox樣式的實(shí)現(xiàn)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 合作市| 霍山县| 孝昌县| 新郑市| 托克逊县| 东明县| 石河子市| 广宁县| 团风县| 洛浦县| 那坡县| 康保县| 水城县| 阿鲁科尔沁旗| 高邑县| 邵阳县| 乌恰县| 平阳县| 九寨沟县| 尚义县| 黑山县| 南丰县| 都匀市| 泸州市| 通道| 轮台县| 杭锦后旗| 乌兰浩特市| 辉县市| 确山县| 海门市| 阜阳市| 曲沃县| 秦皇岛市| 连南| 望城县| 九龙城区| 仲巴县| 分宜县| 肃南| 怀远县|