<!-- 正文开始 -->
一.创建xml文件,位置:drawable/xxx.xml,同目录下记得要放相关图片
<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 默认时的背景图片-->
<item android:drawable="@drawable/pic1" />
<!-- 没有焦点时的背景图片 -->
<item android:state_window_focused="false"
android:drawable="@drawable/pic1" />
<!-- 非触摸模式下获得焦点并单击时的背景图片 -->
<item android:state_focused="true" android:state_pressed="true" android:drawable= "@drawable/pic2" />
<!-- 触摸模式下单击时的背景图片-->
<item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/pic3" />
<!--选中时的图片背景-->
<item android:state_selected="true" android:drawable="@drawable/pic4" />
<!--获得焦点时的图片背景-->
<item android:state_focused="true" android:drawable="@drawable/pic5" />
</selector>
二.使用xml文件:
1.方法一:在listview中配置android:listSelector="@drawable/xxx
或者在listview的item中添加属性android:background="@drawable/xxx"
2.方法二:Drawable drawable = getResources().getDrawable(R.drawable.xxx);
ListView.setSelector(drawable);但是这样会出现列表有时候为黑的情况,需要加上:android:cacheColorHint="@android:color/transparent"使其透明。
相关属性:
android:state_selected是选中
android:state_focused是获得焦点
android:state_pressed是点击
android:state_enabled是设置是否响应事件,指所有事件
根据这些状态同样可以设置button的selector效果。也可以设置selector改变button中的文字状态。
以下是配置button中的文字效果:
drawable/button_font.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:color="#FFF" />
<item android:state_focused="true" android:color="#FFF" />
<item android:state_pressed="true" android:color="#FFF" />
<item android:color="#000" />
</selector>
Button还可以实现更复杂的效果,例如渐变
drawable/button_color.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"> /
<item android:state_pressed="true">//定义当button 处于pressed 状态时的形态。
<shape>
<gradient android:startColor="#8600ff" />
<stroke android:width="2dp" android:color="#000000" /> <corners android:radius="5dp" /> <padding android:left="10dp" android:top="10dp" android:bottom="10dp" android:right="10dp"/> </shape>
</item> <item android:state_focused="true">//定义当button获得 focus时的形态
<shape>
<gradient android:startColor="#eac100"/>
<stroke android:width="2dp" android:color="#333333" color="#ffffff"/>
<corners android:radius="8dp" />
<padding android:left="10dp" android:top="10dp"
android:bottom="10dp" android:right="10dp"/>
</shape>
</item>
</selector>
最后,需要在包含 button的xml文件里添加两项。例如main.xml 文件,需要在<Button />里加两项android:focusable="true" android:background="@drawable/button_color"
分享到:
相关推荐
在项目中引入`android selector注入器`,可以通过Gradle依赖方式,将库添加到build.gradle文件中,然后同步项目,即可开始使用。具体依赖的版本和坐标可以在库的官方文档或GitHub页面中找到。 总的来说,`android ...
本教程将深入探讨Android中的Selector及其使用方法,通过一个完整的Demo来帮助你理解和掌握这个核心概念。 首先,我们需要了解Selector的基本结构。一个Selector通常是一个XML文件,位于项目的res/drawable目录下。...
在这个"Android selector"主题中,我们将深入探讨如何创建并使用状态选择器来控制按钮(Button)和文字的样式变化。 首先,一个状态选择器通常是一个XML文件,存储在res/drawable目录下。例如,我们可以创建一个名...
通过以上讲解,你应该了解了如何在Android中使用Selector为Button设置动态背景和字体颜色。熟练掌握这一技巧,可以让你的App界面更具有吸引力和用户体验。实践中,你可以根据实际需求调整状态和颜色,创造出更多个性...
### 浅谈Android的Selector背景选择器 #### 一、引言 在Android开发中,为了提高用户体验,经常需要对控件的外观进行定制化处理,特别是在不同的交互状态下展示不同的视觉效果。`Selector`作为Android中一个非常...
在实际使用中,"android-selector-chapek-master" 可以通过 Android Studio 的插件市场进行搜索和安装。安装完成后,开发者可以在编辑 XML 文件时启用该插件的特性,提升开发效率。对于经常处理 Android 选择器的...
在Android开发中,Selector和Shape是两种非常重要的资源文件,它们在UI设计和交互中扮演着关键角色。Selector主要用于实现视图(如按钮、文本框等)的状态改变时的样式切换,而Shape则用于定义自定义形状,如矩形、...
本篇文章将深入探讨Android中的Selector背景选择器的使用方法。 首先,让我们了解Selector的基本结构。Selector是XML文件,通常存储在项目的res/drawable目录下。以下是一个简单的Selector示例: ```xml <selector...
在Android开发中,自定义矩形以及selector和shape的使用是构建用户界面的重要部分。它们允许开发者创造出丰富多样的视图样式,以满足各种设计需求。以下是对这些概念的详细解释: 1. 自定义矩形: 自定义矩形通常...
在Android开发中,选择器(Selector)是一种非常重要的资源类型,它允许我们为UI组件(如按钮或RadioButton)定义不同的状态,并在用户交互时改变组件的外观。本篇将深入探讨如何通过XML来定制Android的Selector,...
Android中的Selector是Android图形系统中一个非常重要的组件,它允许我们根据View的不同状态来显示不同的图像或颜色。Selector主要用于创建动态的、具有多种状态的图形,如按钮、列表项等的背景。以下是对Android ...
Android-SpeedyViewSelector This is a change Background Or TextColor Selector support library, with which you can directly specify the Background to be displayed in different states or TextColor Layout...
在Android开发中,Selector和Shape是两种非常重要的资源类型,它们允许我们实现界面元素的动态效果,如按钮、文本视图等在不同状态下的样式变化。这篇文章将详细讲解这两种资源的使用方法,以及如何结合使用它们来...
在Android开发中,Selector是一种非常重要的图形元素,它允许开发者基于不同的状态来显示不同的图像,极大地增强了用户界面的交互性和视觉效果。Selector主要用于ListView、GridView、Button等组件,特别是自定义...
在本文中,我们将详细介绍如何使用 Android Selector 来实现按下修改背景和文本颜色的功能。 首先,我们需要了解 Android Selector 的基本概念。Android Selector 是一种特殊的资源文件,它可以根据不同的状态来...
例如,对于一个`Button`,可以在布局XML文件中使用`android:background="@drawable/your_selector"`来应用自定义的`Selector`。 6. **代码动态设置**:除了在XML中静态设置,我们也可以在Java或Kotlin代码中动态地...
然而,为了适应更多复杂的场景和现代UI设计趋势,开发者可能需要学习和掌握更多的Android图形绘制技术,如自定义View和Canvas的使用,以便创建更高级的阴影和动画效果。同时,了解和利用Android提供的设计库也能极大...
要使用这个控件,开发者需要将`Time-Selector`项目导入到自己的Android Studio工程中,作为依赖库进行引用。然后在布局XML文件中添加控件,并在对应的Activity或Fragment中初始化并设置相关属性,如设置初始时间、...