正常状态的效果:

按钮按下的效果图片:

一、在java中为图片按钮增加触摸监听的函数来实现图片切换,代码如下:

        ImageButton btn = (ImageButton)findViewById(R.id.imageButton1);        btn.setOnTouchListener(new View.OnTouchListener(){            public boolean onTouch(View v, MotionEvent event) {                if(event.getAction() == MotionEvent.ACTION_DOWN){     //重新设置按下时的背景图片
                       ((ImageButton)v).setImageDrawable(getResources().getDrawable(R.drawable.android_btn_pressed));                            }else if(event.getAction() == MotionEvent.ACTION_UP){     //再修改为抬起时的正常图片
                        ((ImageButton)v).setImageDrawable(getResources().getDrawable(R.drawable.android_btn));   }return false;     }     });

代码比较简单,就是当图片按下时,修改按钮的背景图片,当抬起时再修改为正常的图片显示。

二、通过给按钮配置XML文件来实现图片按钮的背景切换效果,方法如下:

1) 在Layout下增加一个image_btn_press.xml文件,内容如下:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="false" android:drawable="@drawable/android_btn" /><item android:state_focused="true" android:drawable="@drawable/android_btn" /><item android:state_pressed="true" android:drawable="@drawable/android_btn_pressed" />
</selector> 

在main.xml中设置图片按钮的属性:

    <ImageButtonandroid:id="@+id/imageButton2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:background="@layout/image_btn_press" />

在ImageButtonk中指定background的属性值:@layout/image_btn_press,其中image_btn_press 就是上面为该图片铵钮创建的XML配置文件。同时,你也可以将image_btn_press.xml文件放到drawable的目录 下,此时,就要将它的属性值修改为:@drawable/image_btn_press即可,也就是说指定它的XML文件的正确路经就行了。

另外,需要特别注意的是在ImageButton中,如果使用XML配置文件来设置图片的效果的话,就不要再指定它的android:src=""属性值了,否则图片的按下效果就出不来了。

设置按钮不可按状态:ImageButton.Attributes.Add("onclick","return false");

Android ImageButton单击切换按钮图片效果相关推荐

  1. Android - ImageButton单击切换按钮图片效果的实现

    在android中有一个ImageButton的View,跟Button按钮的区别是可以在Imagebutton上加载一个图片. 从ImageButton这个字面意思上来看,它是一个图片按钮,那么我们 ...

  2. android怎么点击换图片,ImageButton单击切换按钮图片

    有时单击ImageButton图片按钮时需要获取变换图片的效果,在这里介绍两种方法仅供参考 正常显示 点击切换 方法一:通过给按钮配置XML文件来实现图片按钮的背景切换效果 在layout或者是dra ...

  3. ImageButton单击切换按钮图片

    有时单击ImageButton图片按钮时需要获取变换图片的效果,在这里介绍两种方法仅供参考 正常显示 点击切换 方法一:通过给按钮配置XML文件来实现图片按钮的背景切换效果 在layout或者是dra ...

  4. WPF 动态切换按钮图片

    WPF动态切换按钮图片就是在鼠标移上去的时候显示另一张图片 首先先把三张图片放上去 第一张 第二张 第三张 然后给他们一个值,鼠标移上去的时候是true,显示图片,鼠标移开的时候显示false不显示图 ...

  5. QT实现点击按钮,切换按钮图片

    对于实现QT中点击按钮切换按钮图片的功能,之前学习时做过一个项目,用到过这个功能. 之前是用代码的方式实现,后来实习之后,参与的一个项目中也用到这个功能,所以借此机会学习了一种新方法. 新方法不用代码 ...

  6. android 照片点击查看,Android PhotoView点击放大图片效果

    使用的PhotoView是这个版本的,比较小巧,很好用,比github上另一个版本的瘦身很多:https://github.com/bm-x/PhotoView 基本测试代码如下:import jav ...

  7. Qt 实现按钮点击切换按钮图片

    最近在做一个课程设计(智能家居管家),因为控制要用到门,灯,警报等一系列至少拥有两个状态的物品,所以想弄一个切换图片的效果,点击按钮一次,按钮上的图片切换成另一个图片(另一个状态),再次点击切换回去. ...

  8. qt中如何模拟按钮点击_Qt 实现按钮点击切换按钮图片

    最近在做一个课程设计(智能家居管家),因为控制要用到门,灯,警报等一系列至少拥有两个状态的物品,所以想弄一个切换图片的效果,点击按钮一次,按钮上的图片切换成另一个图片(另一个状态),再次点击切换回去. ...

  9. android jni示例_Android切换按钮,开关示例

    android jni示例 Today we will learn about Android Toggle Button and Switch in android app. We'll discu ...

  10. android fragment实例化,Android使得Fragment 切换时不重新实例化

    以前实现Fragment的切换都是用replace方法实现 public void startFragmentAdd(Fragment fragment) { FragmentManager frag ...

最新文章

  1. java重定向带参数_急 求助重新封装重定向带参数问题
  2. qiankun 微前端_qiankun 微前端应用实践与部署(二)
  3. advanced installer更换程序id_好程序员web前端培训分享kbone高级-事件系统
  4. XSL样式,分页方法
  5. ga算法matlab,matlab遗传算法ga函数
  6. Android Studio开启虚拟机报错!emulator: ERROR: x86 emulation currently requires hardware acceleration!解决办法梳理
  7. python中括号配对检测_使用模板匹配在Python上进行对象检测!(附代码)
  8. 【代码实现和训练】OCR技术——引入了Attention机制的crnn的印刷体汉字识别
  9. ns3网络设置模块 PointToPoint
  10. 测试内存条是否兼容软件,18款内存条兼容性测试
  11. 新手用python写牛牛扑克牌玩法
  12. 爱快可以外接文件服务器吗,听说爱快路由器也支持NAS了?
  13. uni-app学习:CSS之渐变色
  14. qt tcp不可以循环发送_qt tcp客户端发送消息 服务器不能立即接收到
  15. 来了小老弟,送40本技术畅销书!
  16. css 文字两端对齐
  17. c语言循环队列的销毁,C语言循环队列
  18. 在Power BI中用DAX新建列的方式进行累计求和
  19. 原生js简单实现定时抢月饼
  20. 国科大 射频电路课件

热门文章

  1. JavaWeb-MVC模式概述
  2. 【LeetCode】【字符串】题号:*299. 猜数字游戏
  3. 【numpy】argmax参数辨析(axis=0,axis=1,axis=-1)
  4. STLC++(队列queue、栈stack、set\multiset 的用法)
  5. Flutter之MediaQuery详细分析
  6. File类的一些方法测试
  7. ios 点击出现另外一套tabbar_iOS 点击UITabBar触发刷新
  8. java证书不见了_java – 找不到证书链
  9. golang语言中的关于err的函数封装事项的函数使用
  10. pythonATM,购物车项目实战_补充5-interface接口