Button----button

ImageButton----图片button

共同拥有特征:

都能够作为一个button产生点击事件

不同点

1、 Button有text的属性。ImageButton没有

2、 ImageButton有src属性。Button没有

onClick事件

Button和ImageButton都有一个onClick事件

通过他们自身的.setOnClickListener(OnclickListener)方法加入点击事件。

事实上全部的控件都有一个onClick事件

监听事件实现的几种写法

1、 匿名内部类的实现

2、 独立类的实现

3、 实现接口的方式实现

findViewById----返回的是一个View对象,须要对其进行类型转换,转换成对应的控件类型。

以下看一下三种方法的详细实现

  1. package com.example.button;
  2.  
  3. import android.os.Bundle;
  4. import android.app.Activity;
  5. import android.util.Log;
  6. import android.view.View;
  7. import android.view.View.OnClickListener;
  8. import android.widget.Button;
  9. import android.widget.ImageButton;
  10. import android.widget.TextView;
  11.  
  12. public class MainActivity extends Activity implements OnClickListener {
  13. private TextView tv;
  14. private Button loginButton;
  15. private ImageButton imgBt;
  16. @Override
  17. protected void onCreate(Bundle savedInstanceState) {
  18. super.onCreate(savedInstanceState);
  19. setContentView(R.layout.activity_main);
  20. tv = (TextView) findViewById(R.id.textView1);
  21. /*
  22. * 1、初始化当前须要的控件
  23. * 2、设置Button的监听器。通过监听器实现我们点击Button要操作的事情
  24. */
  25. loginButton = (Button) findViewById(R.id.button1);
  26. /*
  27. * 1、监听事件通过匿名内部类实现
  28. */
  29. loginButton.setOnClickListener(new OnClickListener() {
  30.  
  31. @Override
  32. public void onClick(View arg0) {
  33. //在当前onClick方法中监听点击Button的动作
  34. tv.setText("被点击了!
  35.  
  36. ");
  37.  
  38. }
  39. });
  40. /*
  41. * 2、监听事件通过独立类实现
  42. */
  43. loginButton = (Button) findViewById(R.id.button2);
  44. loginButton.setOnClickListener(listener);
  45.  
  46. /*
  47. * 3、通过接口方式实现
  48. */
  49. imgBt = (ImageButton) findViewById(R.id.imageButton1);
  50.  
  51. imgBt.setOnClickListener(this);
  52. }
  53. OnClickListener listener = new OnClickListener() {
  54.  
  55. @Override
  56. public void onClick(View arg0) {
  57. tv = (TextView) findViewById(R.id.textView1);
  58. //tv.setText("独立类的监听事件被触发了!");
  59. Log.i("tag", "独立类");
  60. }
  61. };
  62.  
  63. @Override
  64. public void onClick(View arg0) {
  65. Log.i("tag", "通过接口实现!
  66.  
  67. ");
  68. }
  69. }

Button和ImageButton的更多相关文章

  1. Android中Button、ImageButton、ImageView背景设置区别

    Button与ImageButton实际两者无关,Button继承自TextView,不支持src;ImageButton继承自ImageView.同一张图片在不设置大小,默认显示时,使用Button ...

  2. Button、ImageButton及ImageView详解

    Button.ImageButton及ImageView详解 在应用程序开发过程中,很多时候需要将View的background或者src属性设置为图片,即美观又支持点击等操作.常见的有Button. ...

  3. android 设置Button或者ImageButton的背景透明 半透明 透明

    Button或者ImageButton的背景设为透明或者半透明 半透明<Button android:background="#e0000000" ... />  透明 ...

  4. Android监听Button和ImageButton控件的点击事件

    一.onClick事件 Button和ImageButton都有一个onClick事件,通过自身的.setOnClickListener(OnClickListener)方法添加点击事件 所有的控件都 ...

  5. android listview和button,ImageButton等有事件的控件的总结

    public ImageButton(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defSty ...

  6. Android 按钮 Button和ImageButton

    Button -- 按钮ImageButton -- 图片按钮Button和ImageButton特征1.共有的特征都可以作为一个按钮产生点击事件2.不同点: (1)Button有text属性,Ima ...

  7. Button或者ImageButton的背景设为透明或者半透明

    Button或者ImageButton的背景设为透明或者半透明 半透明<Button android:background="#e0000000" ... /> 透明& ...

  8. Android控件——Button与ImageButton

    1.简单介绍

  9. ASP.NET Button、ImageButton、LinkButton、HyperLink区别

    这4个控件都属于WEB服务器控件,有很多相同的属性和事件.其区别如下所示. 在*.aspx页面中插入Button控件如以下代码所示.<asp:Button runat="server& ...

随机推荐

  1. 记录一下自己总结出来的,在内网环境下使用maven打包的各种方法,包括各种常用的打包方式(一)

    (一)内外网代理仓库搭建 想了一下,先用这个MAVEN安装部署的说明随笔,作为自己的第一篇技术帖,往后会陆陆续续将自己研究的心得发出来,留下脚印.希望有大神可以指点 一 .文章主要解决问题说明 1) ...

  2. Node.js开发环境介绍-调试工具

    1)WebStorm 断点调试,单步执行 2)nodemon 监听文件变更,自动重启 3)node-inspector 基于浏览器调试nodejs 4)Chrome Developer Tools 基 ...

  3. 手贱随手在Linux敲了 as 命令,出不来了

    手贱随手在Linux敲了  as  命令,出不了命令,问问度娘吧,得到下列资料 as命令 GNU组织推出的一款汇编语言编译器,它支持多种不同类型的处理器.语法as(选项)(参数)选项-ac:忽略失败条 ...

  4. C#。3.1 循环(叠加、穷举)

    循环. for 循环 嵌套的应用, 迭代.穷举 一.迭代法 每次循环都是从上次运算结果中获得数据,本次运算的结果都是要为下次运算做准备.例:1.100以内所有数的和. int sum = 0; for ...

  5. css中的clear的正真意义

    网上包括w3cschool 的说法都是 不允许浮动.消除浮动 这样的说法,却看了还是不知道什么意思,一些地方说不通. 所以找到w3c css 的英文文档,如下是节选: 'clear'Values ha ...

  6. DDD(Domain Driver Designer) 领域驱动设计简介

    领域驱动设计之领域模型 加一个导航,关于如何设计聚合的详细思考,见这篇文章. 2004年Eric Evans 发表Domain-Driven Design –Tackling Complexity i ...

  7. StringEscapeUtils的使用

    使用commons-lang.jar import org.apache.commons.lang.StringEscapeUtils; public class T { public static ...

  8. dede后台反应特别慢-转

    找到织梦后台管理目录下的/templets/index_body.htm文件 将第25行至第35行部分js代码注释掉. 就这么简单

  9. iOS开发中文件的上传和下载功能的基本实现-备用

    感谢大神分享 这篇文章主要介绍了iOS开发中文件的上传和下载功能的基本实现,并且下载方面讲到了大文件的多线程断点下载,需要的朋友可以参考下 文件的上传 说明:文件上传使用的时POST请求,通常把要上传 ...

  10. caffe绘制训练过程的loss和accuracy曲线

    转自:http://blog.csdn.net/u013078356/article/details/51154847 在caffe的训练过程中,大家难免想图形化自己的训练数据,以便更好的展示结果.如 ...