1 在drawable-mdpi文件夹下创建文件checkbox_selector.xml:
<?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/login_checked" /><!--选中时效果-->
<item android:state_checked="false"
android:drawable="@drawable/login_unchecked"
/><!--未选中时效果-->
</selector>
2 在values文件夹下创建styles.xml:
<?xml
version="1.0" encoding="utf-8"?>
<resources>
<style name="MyCheckBox"
parent="@android:style/Widget.CompoundButton.CheckBox">
<!-- 将原来系统的CheckBox图标隐藏起来。
-->
<item
name="android:button">@null</item>
<!-- 设置CheckBox的左间距 -->
<item
name="android:paddingLeft">10dip</item>
<!-- 设置CheckBox的最大高度 -->
<item
name="android:maxHeight">50.0dip</item>
<!-- 设置文字和图标的间距 -->
<item
name="android:drawablePadding">50dp</item>
<!-- 在CheckBox的右侧添加自定义的图标 -->
<item
name="android:drawableRight">@drawable/checkbox_selector</item>
</style>
</resources>
3 在xml文件的CheckBox中添加属性 :
<?xml
version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="自定义CheckBox和RadioButton"
android:gravity="center_horizontal"
android:paddingBottom="50dp"/>
<CheckBox
android:id="@+id/check_box"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/MyCheckBox" <!-- 引用自定义样式 -->
android:text="good boy"
android:textSize="20sp"
android:textScaleX="1.0" <!-- 设置文字间距 -->
/>
<RadioGroup
android:id="@+id/radioGroup1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<RadioButton
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:button="@null"
android:checked="true"
android:drawableRight="@android:drawable/btn_radio"
android:paddingLeft="10dp"
android:text="RadioButton"
/>
<RadioButton
android:id="@+id/button2"
android:layout_width="400dp"
android:layout_height="wrap_content"
android:button="@null"
android:drawableRight="@android:drawable/btn_radio"
android:paddingLeft="10dp"
android:text="RadioButton"
/>
</RadioGroup>
</LinearLayout>
最后效果如下图:
注意:CheckBox图标的大小只由被援引图片的本身大小决定,无法在java程序的xml中进行设定。所以为适应多种尺寸和密度的屏幕,应创建drawable-normal-mdpi、drawable-normal-hdpi、drawable-large-xhdpi和相应values-normal-mdpi、values-normal-hdpi、values-large-xhdpi等多个资源文件夹并放入相应的资源文件和图片,如下图所示:
- 大小: 24.8 KB
- 大小: 30.8 KB
分享到:
相关推荐
在本文中,我们将深入探讨如何自定义RadioButton和CheckBox的样式,特别是通过重写onDraw()方法来实现颜色选择器效果。首先,我们需要了解这两个控件的基本结构和工作原理。 RadioButton和CheckBox都是继承自...
最后,将这个自定义的RadioButton控件添加到你的WinForm项目中,就可以像使用标准RadioButton一样使用它,但同时具备了自定义的特性和功能。 总结一下,自定义C# WinForm中的RadioButton控件主要涉及外观、行为、...
标题提到的"带checkbox和radiobutton的listview(实现翻页保存和单选)"是一个典型的需求,它涉及到ListView的自定义适配器、数据绑定以及状态保存。 1. **自定义Adapter**: - 在Android中,ListView的每一行数据...
这是一个关于自定义checkbox、RadioButton, Switch, SwitchPreference , CheckPreference 等控件颜色的 demo。 让控件显示我们想要的颜色,同时又不影响使用Android5.0提供的动画,何乐而不为。
本篇主要聚焦于如何自定义CheckBox控件的样式,特别是改变其框框(边框)和钩钩(选中标记)的样式。 CheckBox是WPF中一个基础的复选框控件,通常用于用户可以选择或取消选择一个选项。默认情况下,CheckBox有一个...
这个资源"20090924 透明的CHECKBOX 和RADIOBUTTON.rar"似乎包含了一些关于如何在Delphi中创建透明的复选框(Checkbox)和单选按钮(RadioButton)的示例代码或教程。 复选框和单选按钮是用户界面(UI)设计中常见的...
本篇将详细介绍如何实现自定义RadioButton和CheckBox样式的实践过程。 首先,我们需要了解Android中的样式系统。在Android中,我们可以使用XML资源文件来定义样式,包括颜色、尺寸、字体等属性。对于RadioButton和...
4. **样式和布局**:根据需求自定义`CheckBox`和`RadioButton`的样式,以及它们在`ExpandableListView`中的布局。 通过以上介绍,我们可以看到,`ExpandableListView`与`CheckBox`、`RadioButton`的结合使用,可以...
在ListView中嵌入复杂的视图,如EditText、CheckBox和RadioButton,可以实现丰富的交互效果。然而,这样做也常常会导致事件处理上的冲突,需要我们采取一些策略来妥善解决。 首先,我们要理解ListView的工作原理。...
最近抽了点时间,针对android一些控件的样式做了完整自定义,主要包括Spinner的样式完全自定义、RadioButton[CheckBox样式雷同]样式完全自定义、Rating样式自定义,代码已经经过测试,有需要的可以下载
自定义RadioButton允许开发者根据项目需求调整其外观、交互和功能,以提供更个性化的用户体验。以下是对这个自定义RadioButton相关的知识点进行的详细解释: 1. **RadioButton基本使用**:RadioButton属于Android的...
然而,为了提供更丰富的交互体验,我们常常需要在ListView的每一项中添加CheckBox,从而实现单选、多选、全选和反选功能。本教程将深入讲解如何在ListView中集成CheckBox并解决重绘问题。 1. **自定义ListView的...
而我们要做的,就是通过自定义RadioButton,让其外观和交互更加符合美团支付页面的风格。 实现自定义RadioButton的第一步,是创建一个新的XML布局文件,作为RadioButton的视图模板。在这个文件中,我们可以定义按钮...
在实际应用中,我们可以结合RadioButton和CheckBox创建自定义的设置项,让用户进行个性化选择。例如,在一个音乐播放器应用中,用户可以选择是否开启循环播放,这时可以使用CheckBox;而在选择播放模式(顺序、随机...
在Android开发中,RadioButton、CheckBox和Toast是三个非常基础且重要的组件,它们各自在不同的场景下发挥着关键作用。下面将分别对这三个组件进行详细解释,并通过实例展示它们的使用方法。 **RadioButton** 是...
总的来说,改变`Checkbox`和`RadioButton`的默认图标涉及到对UI组件的自定义,这不仅能够满足设计需求,还能提升应用的整体用户体验。通过理解不同编程环境下的实现方式,开发者可以灵活地调整这些控件的视觉表现,...
开发者可以借此深入理解ListView的自定义、事件处理以及状态保存等概念,同时掌握Checkbox和RadioButton在实际应用中的使用技巧。通过分析和实践这个项目,可以提升在Android应用开发中的列表交互能力。