zoukankan      html  css  js  c++  java
  • 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("这是第四种");
        }
    }
  • 相关阅读:
    linux 命令——19 find (转)
    linux 命令——18 locate (转)
    linux 命令——17 whereis(转)
    linux 命令——16 which(转)
    linux 命令——15 tail (转)
    linux 命令——14 head (转)
    Java for LeetCode 038 Count and Say
    Java for LeetCode 037 Sudoku Solver
    Java for LeetCode 036 Valid Sudoku
    Java for LeetCode 035 Search Insert Position
  • 原文地址:https://www.cnblogs.com/wuyudong/p/5532444.html
Copyright © 2011-2022 走看看