Android的按钮四种点击事件

本文记录一下按钮的四种点击事件

第一种

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //------------第一种----------------------
        Button bt1=(Button)findViewById(R.id.bt1);
        bt1.setOnClickListener(new MyListener());
    }

    class MyListener implements OnClickListener{
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            System.out.println("这是第一种");
        }
    }
}

第二种

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //------------第二种----------------------
        Button bt2=(Button)findViewById(R.id.bt2);
        bt2.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                System.out.println("这是第二种");

            }
        });
    }

    class MyListener implements OnClickListener{
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            System.out.println("这是第一种");
        }
    }

}

代码量比较大,不能重复利用

第三种

public class MainActivity extends Activity implements OnClickListener{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //------------第三种----------------------
        Button bt3=(Button)findViewById(R.id.bt3);
        bt3.setOnClickListener(this);
    }
    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        System.out.println("这是第三种");
    }
}

第四种

在activity_main.xml中添加下面的代码:

     <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="第四种"
        android:onClick="youyiyi"
        />

在MainActivity.java中添加下面的代码:

public class MainActivity extends Activity implements OnClickListener{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    //------------第四种----------------------
    //当按钮被点击时,此方法会被调用
    public void youyiyi(View v) {
        // TODO Auto-generated method stub
        System.out.println("这是第四种");
    }
}

代码结构很差

完整的代码如下:

activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <Button
        android:id="@+id/bt1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="第一种" />

    <Button
        android:id="@+id/bt2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="第二种" />

     <Button
        android:id="@+id/bt3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="第三种" />

     <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="第四种"
        android:onClick="youyiyi"
        />

</LinearLayout>

MainActivity.java

package com.wuyudong.clickevent;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity implements OnClickListener{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //------------第一种----------------------
        Button bt1=(Button)findViewById(R.id.bt1);
        bt1.setOnClickListener(new MyListener());
        //------------第一种----------------------
        //------------第二种----------------------
        Button bt2=(Button)findViewById(R.id.bt2);
        bt2.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                System.out.println("这是第二种");

            }
        });
        //------------第二种----------------------

        //------------第三种----------------------
        Button bt3=(Button)findViewById(R.id.bt3);
        bt3.setOnClickListener(this);

        //------------第三种----------------------

    }

    class MyListener implements OnClickListener{
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            System.out.println("这是第一种");
        }
    }

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        System.out.println("这是第三种");

    }

    //------------第四种----------------------
    //当按钮被点击时,此方法会被调用
    public void youyiyi(View v) {
        // TODO Auto-generated method stub
        System.out.println("这是第四种");
    }
}
时间: 2024-08-06 03:40:15

Android的按钮四种点击事件的相关文章

Android中Button四种点击事件实现方式

1.Xml添加监听属性,这里添加的doClick. 1 <Button 2 android:id="@+id/bt1" 3 android:layout_width="wrap_content" 4 android:layout_height="wrap_content" 5 android:onClick="doClick" 6 android:text="XML添加doClick" 7 andro

Android入门——电话拨号器和四种点击事件

相对于HelloWorld来说,电话拨号器也是Android的一个入门demo,从这个例子我们要理清楚做安卓项目的思路. 大体分为三步: 1.理解需求,理清思路 2.设计UI 3.代码实现 电话拨号器 1. 理解需求: *一个文本框--用来接收电话号码 *一个按钮--用来触发事件 2. 设计UI 3. 代码实现 public class MainActivity extends Activity { private EditText et_number; //定义变量用来接收电话号码 priva

【转】Android - Button(按钮)的响应点击事件的4种写法

原文网址:http://www.yrom.net/blog/2011/12/12/android-4-onclicklistener-of-button/ Button控件setOnclickListener(View.OnClickListener listener)来接收一个点击事件的监听器 自定义一个点击事件监听器类让其实现View.OnClickListener的onClick(View v)方法 1 2 3 4 5 class MyOnClickListener implements

Button的四种点击事件

1.XML文件布局 <Button     android:id="@+id/bt1"     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:onClick="doClick"     android:text="XML添加doClick"     android:lay

Android 按钮的响应点击事件的4种写法

Android按钮的响应点击事件 学习了按钮的响应点击事件,写一下总结,写的不好的希望大家能给出意见或建议. 这是layout xml文件   点击事件只需要获得Button的id或者onClick <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" an

Android数据的四种存储方式之SharedPreferences

除了SQLite数据库外,SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息.其存储位置在/data/data/< >/shared_prefs目录下.SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现.实现SharedPreferences存储的步骤如下: 一.根据Context获取SharedPreferences对象 二.利用edi

Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File 之 —— SQLite

本文在http://www.cnblogs.com/wisekingokok/archive/2011/09/14/2174844.html 基础上写了一个进阶的创建方式,技术能用新的就用新的. 参考了http://blog.csdn.net/liuhe688/article/details/6715983.仅供学习参考 SQLite是一种转为嵌入式设备设计的轻型数据库,其只有五种数据类型,分别是: NULL: 空值 INTEGER: 整数 REAL: 浮点数 TEXT: 字符串 BLOB: 大

[转][Android]Android数据的四种存储方式

android.database.sqlite类 SQLiteQueryBuilder java.lang.Object android.database.sqlite.SQLiteQueryBuilder public class SQLiteQueryBuilderextends Object This is a convience class that helps build SQL queries to be sent to SQLiteDatabase objects. 构造方法摘要

Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (一) —— 总览

Android数据的四种存储方式SharedPreferences.SQLite.Content Provider和File (一) —— 总览 作为一个完成的应用程序,数据存储操作是必不可少的.因此,Android系统一共提供了四种数据存储方式.分别是:SharePreference.SQLite.Content Provider和File.由于Android系统中,数据基本都是私有的的,都是存放于“data/data/程序包名”目录下,所以要实现数据共享,正确方式是使用Content Pro