亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

自定義RadioButton&CheckBox樣式的實現

系統 2220 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文件下),但是不成功,到網上查找,也沒有正確的說法,我就開始自己嘗試,最后做好了。
  其實方法很簡單,同樣在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 設置android:button = "@drawable/radiobutton",就可以了!
  前后圖片對比如下:

自定義RadioButton&CheckBox樣式的實現


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,根結點選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,應用到Checkbox與Button不同,并不是設置Background屬性,而是設置style屬性,所以我們要寫一個style。
在style.xml寫一個style,
    <style name="MyCheckBox" parent="@android:style/Widget.CompoundButton.CheckBox">
<item name="android:button">@drawable/checkbox</item>
</style>
  

3,應用到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

風格化的 Toggle Buttons
http://blog.csdn.net/billpig/article/details/6634481

事實上,可以使用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樣式的實現

自定義RadioButton&CheckBox樣式的實現


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

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

【本文對您有幫助就好】

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

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产精品区一区二区免费 | 尤物黄色 | 日日碰日日操 | 99九九精品国产高清自在线 | 奇米网狠狠 | 亚洲另类视频在线观看 | 最新日本免费一区二区三区中文 | 波多野结衣在线一区 | 欧美曰韩免费视频一区 | 一区两区三不卡 | 日本操操操| 中文字幕 亚洲精品 | 在线国产一区二区 | 国产不卡免费 | 久久综合久久精品 | 伊人影院久久 | oldwoman中国老女人tv | 欧美一区二区在线播放 | 欧美片欧美日韩国产综合片 | 色偷偷亚洲| 爱爱网网站免费观看 | 爱爱视频欧美 | 色就操 | 伊人久久精品午夜 | 亚洲精品国产一区二区三 | 蜜月tv | 久久66久这里精品99 | 国产精品高清全国免费观看 | 日韩久久久精品首页 | 中国国产一国产一级毛片视频 | 999精品国产 | 99热久久免费精品首页 | 亚洲一级毛片免费在线观看 | 国产精品2020观看久久 | 99热这里都是精品 | 狠狠综合久久 | 天天干天天干天天干天天干天天干 | 免费国产成人午夜在线观看 | 国产精品bdsm在线调教 | 欧美日韩无线码在线观看 | 日韩精品第三页 |