• 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();
            }
    
    }

    方法一运行结果如下:

    方法二运行结果如下:

      

  • 相关阅读:
    第36课 经典问题解析三
    第35课 函数对象分析
    67. Add Binary
    66. Plus One
    58. Length of Last Word
    53. Maximum Subarray
    38. Count and Say
    35. Search Insert Position
    28. Implement strStr()
    27. Remove Element
  • 原文地址:https://www.cnblogs.com/mrlcj/p/6075228.html
Copyright © 2020-2023  润新知