• Android按钮单击事件的五种实现方式


    1. 匿名内部类作为事件监听器

      public class MainActivity extends Activity {
      	
      	private Button button;
          
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
              button = (Button) findViewById(R.id.button1);
              button.setOnClickListener(new OnClickListener() {
      			@Override
      			public void onClick(View v) {
      				System.out.println("匿名内部类作为事件监听器");
      			}
      		});
              
          }
          
      }
      
    2. 内部类作为事件监听器

      public class MainActivity extends Activity {
      	
      	private Button button;
      	
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
              button = (Button) findViewById(R.id.button1);
              button.setOnClickListener(new ButtonOnClickListener());
          }
          
          class ButtonOnClickListener implements OnClickListener{
      		@Override
      		public void onClick(View v) {
      			System.out.println("内部类作为事件监听器");
      		}
          }
          
      }
      
    3. Activity本身作为事件监听器

      public class MainActivity extends Activity implements OnClickListener{
      	
      	private Button button;
      	
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
              button = (Button) findViewById(R.id.button1);
              button.setOnClickListener(this);
          }
          
          @Override
          public void onClick(View v) {
          	System.out.println("Activity本身作为事件监听器");
          }
          
      }
      
    4. 外部类作为事件监听器

      public class MainActivity extends Activity {
      	
      	private Button button;
      	
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
              button = (Button) findViewById(R.id.button1);
              button.setOnClickListener(new ButtonOnClickListener());
          }
          
      }
      class ButtonOnClickListener implements OnClickListener {
      	
      	@Override
      	public void onClick(View v) {
      		System.out.println("外部类作为事件监听器");
      	}
      	
      }
      
    5. 将事件处理方法直接绑定到标签

      <Button
                  android:id="@+id/button1"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:text="点击事件"
                  android:onClick="onClick" />
      
      public class MainActivity extends Activity {
      	
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
          }
          
          public void onClick(View v){
          	System.out.println("将事件处理方法直接绑定到标签");
          }
          
      }
      
  • 相关阅读:
    caffe 学习(1) —— Classification: Instant Recognition with Caffe
    Latex 编辑器安装
    Ubuntu 14.04上安装caffe
    学习换脸:Switching Eds: Face swapping with Python, dlib, and OpenCV
    如何给磁盘文件排序?--学习《编程珠玑》
    android五种数据存储方式
    PAML学习一
    Google TensorFlow 学习笔记一 —— TensorFlow简介
    mfc学习笔记
    新建标准库
  • 原文地址:https://www.cnblogs.com/dylanzou/p/12442199.html
Copyright © 2020-2023  润新知