Button和ImageButton[通俗易懂]

Button和ImageButton

大家好,又见面了,我是全栈君。

Button—-button

ImageButton—-图片button 

共同拥有特征:

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

不同点

1、 Buttontext的属性。ImageButton没有

2、 ImageButtonsrc属性。Button没有

onClick事件

ButtonImageButton都有一个onClick事件

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

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

监听事件实现的几种写法

1、 匿名内部类的实现

2、 独立类的实现

3、 实现接口的方式实现 

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

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

package com.example.button;

import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;

public class MainActivity extends Activity implements OnClickListener {
	private TextView tv;
	private Button loginButton;
	private ImageButton imgBt;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tv = (TextView) findViewById(R.id.textView1);
        /*
         * 1、初始化当前须要的控件
         * 2、设置Button的监听器。通过监听器实现我们点击Button要操作的事情
         */
        loginButton = (Button) findViewById(R.id.button1);
        /*
         * 1、监听事件通过匿名内部类实现
         */
        loginButton.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View arg0) {
				//在当前onClick方法中监听点击Button的动作
				tv.setText("被点击了!

"); } }); /* * 2、监听事件通过独立类实现 */ loginButton = (Button) findViewById(R.id.button2); loginButton.setOnClickListener(listener); /* * 3、通过接口方式实现 */ imgBt = (ImageButton) findViewById(R.id.imageButton1); imgBt.setOnClickListener(this); } OnClickListener listener = new OnClickListener() { @Override public void onClick(View arg0) { tv = (TextView) findViewById(R.id.textView1); //tv.setText("独立类的监听事件被触发了!"); Log.i("tag", "独立类"); } }; @Override public void onClick(View arg0) { Log.i("tag", "通过接口实现!

"); }}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115760.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月30日 下午11:00
下一篇 2022年1月30日 下午11:00


相关推荐

  • vdbench的作用_vdbench

    vdbench的作用_vdbench一、vdbench安装1、安装java:java-version(vdbench的运行依赖于java)2、检测vdbench能够使用:进入vdbench相应目录下./vdbench-t来测试一下vdbench的可用性,如果正常,会在目录下自动生成一个output目录。root@node1:/home/vdbench/vdbench50406#./vdbench-t如果报错,则需修改vdb…

    2022年5月20日
    79
  • 电容作用分类_电容的分类与识别

    电容作用分类_电容的分类与识别电容分类的N种详解,有图有“真相”电子发烧友网今天一、瓷介电容器(CC)1.结构用陶瓷材料作介质,在陶瓷表面涂覆一层金属(银)薄膜,再经高温烧结后作为电极而成。瓷介电容器又分1类电介质(NPO、CCG));2类电介质(X7R、2X1)和3类电介质(Y5V、2F4)瓷介电容器。2.特点1、类瓷介电容器具有温度系数小、稳定性高、损耗低、耐…

    2022年8月22日
    18
  • java中遍历数组的方法_java遍历object数组

    java中遍历数组的方法_java遍历object数组参考labmbda表达式引言记录一下Java遍历数组的几种常见方法下面以遍历整数数组为例Integer[]arr={1,3,4,5,6};//这里不能使用int[],会报错//!!!注意:使用Arrays.asList转换为集合时,不能用其进行修改集合的相关方法(add/remove)List<Integer>list=Arrays.asList(arr);1、利用for遍历//1、利用for遍历System.out.prin

    2026年1月27日
    5
  • 给RadioGroup动态添加RadioButton时,设置layout_weight

    给RadioGroup动态添加RadioButton时,设置layout_weight

    2021年9月12日
    81
  • 高德地图添加多个点标注的点击事件

    高德地图添加多个点标注的点击事件html>charset=”utf-8″>http-equiv=”X-UA-Compatible”content=”chrome=1″>name=”viewport”content=”initial-scale=1.0,user-scalable=no,width=device-width”>type=”text/css”>bod

    2022年5月21日
    32
  • msf win10漏洞_Kali对Windows2008/7的MS17010漏洞测试(MSF自带模块)

    msf win10漏洞_Kali对Windows2008/7的MS17010漏洞测试(MSF自带模块)Kali-TheVulnerablityofMS17010forWindowsServer2008R20x01说明其实这个MSF自带的exp模块还是挺让人伤脑筋的,因为它支持的OS并不是很多,也就WindowsServer2008和Win7能用一下,比他们版本低的xp/2003以及比他们版本高的8/2012都不可用,但是纯粹对于Win2008/7而言,这个方案还是比较方便…

    2022年5月15日
    61

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号