android button按键得到焦点和点击后改变背景图片

我也接受android不久,今天来给同学们分享一下button得到焦点和点击后改变背景图片,其实很简单就是两个事件setOnFocusChangeListener和setOnClickListener就OK了。

这是Activity 中的代码。

package com.hai;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.ImageButton;

import android.widget.TextView;

public class Main extends Activity {

private TextView mTV;

private ImageButton imgBtn;

private Button btn;

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

mTV = (TextView) findViewById(R.id.tv);

imgBtn= (ImageButton) findViewById(R.id.imgBtn);

btn = (Button) findViewById(R.id.Btn);

// ImageButton的的onFous事件

imgBtn.setOnFocusChangeListener(new ImageButton.OnFocusChangeListener(){

@Override

public void onFocusChange(View v, boolean hasFocus) {

// TODO Auto-generated method stub

if(hasFocus == true) {

imgBtn.setImageResource(R.drawable.shortcut_pic_focus);

mTV.setText("图片按钮状态为:获得焦点");

}else{

imgBtn.setImageResource(R.drawable.shortcut_pic_unfocus);

mTV.setText("图片按钮状态为:失去焦点");

}

}

});

// ImageButton的单击事件

imgBtn.setOnClickListener(new ImageButton.OnClickListener(){

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

imgBtn.setImageResource(R.drawable.shortcut_pic_focus);

mTV.setText("图片按钮状态为:单击");

}

});

// 普通按钮的单击事件

btn.setOnClickListener(new Button.OnClickListener(){

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

imgBtn.setImageResource(R.drawable.shortcut_pic_unfocus);

mTV.setText("您按的是普通按钮!");

}

});

}

}

然后再写一个XML文件。

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

android:id="@+id/tv"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/hello"

/>

android:id="@+id/imgBtn"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/shortcut_pic_unfocus"

/>

android:id="@+id/Btn"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="Button按钮"

/>

大伙直接把代码拿过去就可以看到效果,记得自己本地图片.

1 楼

haiyang08101

2011-10-09

  很好!学习了...

android点击灰色背景图片,android button按键失去焦点和点击后改变背景图片相关推荐

  1. Android点击按钮显示密码,Android 开发仿简书登录框可删除内容或显示密码框的内容...

    简书App 是我很喜欢的一款软件.今天就模仿了一下他的登录框.先上图: 好了下面上代码,自定义ImgEditText 继承与EditText.重写一些方法. package lyf.myimgedit ...

  2. android+点击屏幕隐藏键盘,Android点击EditText文本框之外任何地方隐藏键盘的解决办法...

    1,实现方法一: 通过给当前界面布局文件的父layout设置点击事件(相当于给整个Activity设置点击事件),在事件里进行键盘隐藏 android:id="@+id/traceroute ...

  3. Android点击通知进入详情,Android 点击通知进入正在运行的程序

    好久没写文章,今天遇到一个新需求,app正在通话过程切换到后台,点击通知栏的时候 回到通话界面. 直接上代码吧首先是实现通知的代码 NotificationCompat.Builder notific ...

  4. android点击跳转卸载,[android]通过JNI实现卸载自身App后台发送Http请求~

    freddon 发表于2016-10-21 阅读 1252 | 评论 1 使用JNI fork进程实现 监控自身App被卸载 首先这个功能仅供cankao 也可以使用linux exec命令跳转到浏览 ...

  5. html5中背景图片的大小怎么调,css中怎么改变背景图片大小?

    在CSS中,想要改变背景图片的大小,可以通过设置background-size属性来实现.下面本篇文章就来给大家介绍一下使用background-size属性改变背景图片大小的方法,希望对大家有所帮助 ...

  6. android已经点击,【已解决】android中点击其他的(如Button等)但是EditText却没有失去焦点...

    [问题] android的app中,在对于EditText已经实现了:OnFocusChangeListener mFocusChangedListener; EditText variableVal ...

  7. android 点击通知栏打开activity,Android实现点击通知栏后,先启动应用再打开目标Activity...

    情况简述 在开发Android app的过程中,遇到这样一个需求:app中启动一个Service,该Service在独立进程中运行,与服务器保持长连接,将服务器推送过来的消息在通知栏中显示,并设置点击 ...

  8. android 点击事件两次,Android 按钮点击两次触发不同的事件

    标题:Android 按钮点击两次触发不同的事件 方案:采用flag标记的方式,每次单击标记为0,再次点击判断flag的值 package com.ldl.ui; import android.app ...

  9. android点击隐藏控件,Android编程实现点击EditText之外的控件隐藏软键盘功能

    本文实例讲述了Android编程实现点击EditText之外的控件隐藏软键盘功能.分享给大家供大家参考,具体如下: 工具类 ... public static void hideKeyboard(Co ...

最新文章

  1. 破解Win2008口令-ERD6.0
  2. Mybatis打印调试sql的两种方式
  3. UVa1344 - Tian Ji -- The Horse Racing(贪心)
  4. 【VB.NET】自定义控件(一)属性说明
  5. SpringBoot中怎样基于slf4j封装日志类输出日志
  6. 洛谷P2341 [HAOI2006]受欢迎的牛 (Tarjan,SCC缩点)
  7. 电脑内部录音教程Virtual Audio Cable使用教程
  8. 爬虫之数据解析的三种方式
  9. 无刷新上传图片 可以实时预览 选择图片后即自动上传,没有上传按钮
  10. js便签笔记(5)——Dean Edwards大牛的跨浏览器AddEvent()设计(不知道是不是jQuery事件系统的原型)...
  11. 柔性太阳能电池pdf_CIS太阳能电池.pdf
  12. js实现轮播图点击按钮切换下一张图片
  13. 使用highEcharts做出中国地图的效果图
  14. 高职高专院校人才培养工作水平评估工作感想
  15. [Qt笔记]设置VS2015下的应用工程图标
  16. 有人在远程使用计算机是什么意思,如何远程控制计算机,计算机远程控制有什么用途...
  17. shel脚本基础系列(二)语法+运算+判断
  18. Rocky Linux Yum源替换位上海交大镜像站点
  19. 纸牌游戏洗牌发牌排序算法设计
  20. 计算机,软件工程类毕业论文选题要求

热门文章

  1. 电源功耗压力测试软件,开关电源负载测试经验分享——这篇三分钟小文章着实令人“心动”...
  2. 发纸牌c语言指针,算了算学了有一个月c语言了,写了个扑克牌程序
  3. 此时无足够的可用内存,无法满足操作的预期要求,可能是由于虚拟地址随便造成的。请稍候重试。 .
  4. ORA-01033: ORACLE initialization or shutdown in progress
  5. 凯斯西储大学计算机工程排名,[转载]凯斯西储大学排名及世界排名【研究生】...
  6. android beta项目官方页面,安卓7.0开发者预览版如何安装?Android Beta项目正式上线...
  7. 16 | 二分查找(下):如何快速定位IP对应的省份地址?
  8. java集合的某项相加_java8实现list集合中按照某一个值相加求和,平均值等操作代码...
  9. Fashion-MNIST数据集离线加载办法
  10. 1007. Maximum Subsequence Sum (25)