标签:android style blog http color io ar 使用 2014
在使用自定义的CheckBox 或RadioButton时,自定义的图标和文字在不同的手机上显示的间距不同,有时不太好控制,下面是我自定义的CheckBox:
在Layout下的xml:
<CheckBox
android:id="@+id/recharge_activity_cb"
style="@style/CustomCheckboxTheme"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="我已经阅读并同意"
android:textColor="@color/huoqiuLightblackColor"
android:checked="true"
/><!-- 自定义CheckBox -->
<style name="CustomCheckboxTheme" parent="@android:style/Widget.CompoundButton.CheckBox">
<item name="android:button">@drawable/checkbox_style</item>
<item name="android:paddingLeft">@dimen/dp8</item>
</style><?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_checked="true" android:drawable="@drawable/agree"/>
<item android:state_checked="false" android:drawable="@drawable/disagree"/>
<item android:drawable="@drawable/disagree"/>
</selector>
<item name="android:paddingLeft">@dimen/dp8</item>
下面是我的解决方案:使用CheckedTextView控件
<CheckedTextView
android:id="@+id/recharge_activity_ctv"
android:checkMark="@drawable/checkbox_style"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
/>
<TextView
android:id="@+id/buy_write_jine_agree_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="我已经阅读并同意"
android:textColor="@color/huoqiuLightblackColor"
android:layout_marginLeft="@dimen/dp3"
/>其中checkMark就是上面drawable下的那个选中状态xml
android:checkMark="@drawable/checkbox_style"
然后在代码中对CheckedTextView使用isChecked()判断是否选中,使用toggle()方法设置选中和未选中效果,这样就不存在图标和文本的空隙问题了,问题完美解决!
android CheckBox RadioButton 图片与文字间距问题
标签:android style blog http color io ar 使用 2014
原文地址:http://blog.csdn.net/lianqiangjava/article/details/40211117