• Button的onClick事件


    一、打开Eclipse新建一个Android App项目

      在布局文件中添加两个Button控件

      如图:

      布局文件代码:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
        
        <!-- 第一个Button -->
        <Button
            android:id="@+id/testbutton1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button" />
        
        <!-- 第二个Button -->
        <Button
            android:id="@+id/testbutton2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button" />
    
    </LinearLayout>

    二、

      编写Java代码

      代码如下:

      

    package com.example.androidone;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.Toast;
    
    public class MainActivity extends Activity {
    
        private Button but;
        private Button but2;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            // setContentView(R.layout.activity_main);
            setContentView(R.layout.test);
               
            // Button onClick方法一:
    
            // 获取ID为testbutton1的Button控件
            but = (Button) findViewById(R.id.testbutton1);
            // 把该控件的Test设置为"Hello,android"
            but.setText("Hello,android");
            // 为该控件设置一个单击事件的监听
            but.setOnClickListener(new OnClickListener() {
                @Override
                //设置单击事件
                public void onClick(View arg0) {
                    //设置Toast特效
                    Toast.makeText(MainActivity.this, "Hello,android",
                            Toast.LENGTH_LONG).show();
    
                }
            });
    
            // Button onClick方法二:
            //获取ID为testbutton2的Button控件
            but2 = (Button) findViewById(R.id.testbutton2);
            // 把该控件的Test设置为"你好,安卓"
            but2.setText("你好,安卓");
            // 为该控件设置一个单击事件的监听
            //这里的new but(this)是new but类里面的一个but()方法
            //并把当前的上下文对象作为参数传入
            but2.setOnClickListener(new but(this));
        }
    }

      but类代码如下:

    package com.example.androidone;
    
    import android.content.Context;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Toast;
    
    public class but implements OnClickListener {
        
            //开辟一个上下文对象
            private Context con;
            //为上下文对象赋值
            public but(Context c){
                this.con = c;
            }
            //设置单击事件
            @Override
            public void onClick(View v) {
                //设置Toast特效
                Toast.makeText(
                        con,"你好,安卓",Toast.LENGTH_LONG
                ).show();
            }
    
    }

    方法一运行结果如下:

    方法二运行结果如下:

      

  • 相关阅读:
    解决通用串行总线(USB)控制器有感叹号
    开发者需要了解的WebKit
    Win7系统搭建WiFi热点详细攻略
    给Qt生成的exe执行程序添加版本信息
    IIS(IISReset.exe)命令行
    .net开发微信公众平台
    使用ExitProcess()结束本进程、TerminateProcess 结束进程
    Hosts文件路径及修改方法
    本地动态SQL
    Oracle Package
  • 原文地址:https://www.cnblogs.com/mrlcj/p/6075228.html
Copyright © 2020-2023  润新知