`

android中使用selector动态改变imageView或ImageButton的背景

阅读更多
做应用时,可能会需要动态改变控件的背景图片,如果仅仅是简单的点击,选中之类的事件,如果靠程序中写监听的代码就显得太麻烦了,在这种情况下,你可以使用selector动态改变控件背景拉:)

1。在res/drawable目录下建一个mybutton.xml文件,根据需要,不同的状态下建立不同的item,并对应相应的图片

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_window_focused="false"
        android:drawable="@color/transparent" />

    <!-- Even though these two point to the same resource, have two states so the drawable will invalidate itself when coming out of pressed state. 注意这句话-->


    <item android:state_focused="true" android:state_enabled="false"
        android:state_pressed="true"
        android:drawable="@drawable/selector_background_disabled" />
    <item android:state_focused="true" android:state_enabled="false"
        android:drawable="@drawable/lselector_background_disabled" />

    <item android:state_focused="true" android:state_pressed="true"
        android:drawable="@drawable/selector_background_transition" />
    <item android:state_focused="false" android:state_pressed="true"
        android:drawable="@drawable/selector_background_transition" />

    <item android:state_focused="true"
        android:drawable="@drawable/selector_background_focus" />

</selector>

2。在构造layout是引用这个xml

<ImageButton
android:id="@+id/ImageButton01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/mybutton">
</ImageButton>
分享到:
评论

相关推荐

    android ImageButton的使用

    在Android开发中,`ImageButton`是一个非常常用的组件,它继承自`ImageView`,但与普通的`ImageView`不同,`ImageButton`允许用户点击,因此常用于实现具有交互功能的按钮。本篇文章将深入探讨`ImageButton`的使用,...

    Android开发教你使用ImageButton系统图标

    本文将详细介绍如何在Android应用中正确地使用`ImageButton`并利用系统图标,以解决网络上常见教程中的困扰。 首先,我们来了解`ImageButton`的基本使用。在布局文件(如`activity_main.xml`)中,你可以通过以下...

    Android4.0开发学习之ImageButton

    在Android 4.0中,`ImageButton`还支持触摸反馈效果,可以通过设置`android:tint`属性或使用`android:foreground`属性来改变图像的颜色或者添加前景效果。同时,你可以利用`android:scaleType`调整图像在按钮中的...

    Android2.2 API 中文文档系列(7) —— ImageButton

    `ImageButton`是`ImageView`的一个子类,继承了`ImageView`的所有功能,并添加了一些额外的功能,使其能够作为用户界面中的按钮来使用。 #### 类层次结构 `ImageButton`的类层次结构如下所示: 1. `java.lang....

    Android应用源码之(ImageButton图片按钮).zip

    `ImageButton`的样式可以通过自定义主题或者在XML布局中使用`style`属性进行更改。可以定义自己的主题样式,如边框宽度、颜色、阴影等。 8. **源码分析** 通过查看压缩包中的源码,你可以学习到如何在实际项目中...

    android imagebutton点击变化 源码

    在Android开发中,`ImageButton`是一个非常常用的控件,它结合了`ImageView`的功能和`Button`的交互性,允许用户通过点击来触发相应的事件。本篇将深入探讨`ImageButton`在点击时如何实现图像的变化,并通过源码解析...

    android ImageButton示例

    `selector`是Android中的一个状态列表资源,可以根据按钮的状态显示不同的图像。以下是一个简单的例子: ```xml &lt;selector xmlns:android="http://schemas.android.com/apk/res/android"&gt; &lt;item android:drawable=...

    11-android ImageButton 图片按钮

    在Android 7.0中,虽然`ImageButton`的基本使用方式没有大的改变,但可能包含了一些性能优化或新特性的改进,例如支持多窗口模式、更好的内存管理等。开发者可以查阅该版本的API文档以获取更详细的信息。 总之,`...

    ImageButton的焦点及事件处理

    在Android开发中,`ImageButton`是一个非常常用的组件,它继承自`ImageView`,并增加了对触摸事件的支持。这篇内容将详细解析如何处理`ImageButton`的焦点变化以及响应相关的用户事件。 `ImageButton`与普通的`...

    Android应用源码之ImageButton_应用.zip

    本资料是关于`ImageButton`在实际应用中的源码分析,旨在帮助开发者更深入地理解其工作原理和使用技巧。 `ImageButton`在UI设计中扮演着重要角色,它可以用于创建各种交互式的按钮,如启动游戏、打开设置、切换状态...

    ImageButton按下切换图片.rar

    在Android开发中,`ImageButton`是一个非常常用的控件,它结合了`ImageView`和`Button`的功能,可以显示图像,并且具有点击交互效果。在这个压缩包文件“ImageButton按下切换图片.rar”中,我们很显然是要探讨如何在...

    Android应用源码之(ImageButton图片按钮)-IT计算机-毕业设计.zip

    在Android应用开发中,`ImageButton`是一个非常重要的控件,它是`Button`的子类,主要用来显示图像并响应点击事件。本项目是针对`ImageButton`的源码分析与实践,适合于Android开发初学者以及进行毕业设计的学生进行...

    androidImageButton_android源码_

    - 如果需要为 `ImageButton` 添加背景色或形状,可以使用 `android:backgroundTint` 和 `android:backgroundTintMode` 属性。 - 考虑到不同设备的屏幕密度,使用矢量图(`vector drawable`)作为按钮的图像资源可以...

    图片资源列表

    本资源列表主要关注如何在安卓页面中使用图片按钮(ImageButton)来提供丰富的交互体验。以下是一些关于Android中图片按钮的重要知识点: 1. **ImageButton组件**:它是Android SDK中的一个视图类,继承自ImageView...

    swift3 label image button textfield创建以及使用方法

    在Swift编程语言中,UI元素的创建和使用是构建用户界面的基础。本篇文章将深入探讨如何在Swift3中创建和使用三个最常见的控件:Label、Image、Button以及TextField。这四个标签分别代表了文本显示、图像展示、用户...

    按钮资源图标

    8. **图标在代码中的使用**: 开发者可以在布局文件中通过`&lt;ImageView&gt;`或`&lt;ImageButton&gt;`标签引用`drawable`目录下的图标,或者在Java或Kotlin代码中设置按钮的图标。 综上所述,"按钮资源图标"在Android开发中扮演...

    Android编码命名规范

    2. **Layer-list与Selector**:利用`layer-list`和`selector`增强UI的动态性和交互性,优化视觉效果。 3. **图片复用**:将图片分解为多个可复用的小部件,减少冗余,提升性能。 #### 四、编码实践与优化 1. **...

    Android开发规范

    在Android开发中,遵循一套规范是非常重要的,它能提高代码的可读性、可维护性和团队协作效率。以下是一些关键的Android开发规范和注意事项: **布局方面:** 1. **优先使用线性布局(LinearLayout)**,因为它简单...

Global site tag (gtag.js) - Google Analytics