zoukankan      html  css  js  c++  java
  • 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("将事件处理方法直接绑定到标签");
          }
          
      }
      
  • 相关阅读:
    天生我牛必有用
    struts1.x+spring2.5+JPA(hibernate)整合
    Struts2拦截器
    使用Apache的commonscodes加密
    解放鞋 Ospop解放鞋
    告别2008 明天2009
    异常java.lang.UnsupportedClassVersionError: Bad version number in .class file
    C#中的Process类使用
    C#中使用MD5加密
    Struts2 Action(1)
  • 原文地址:https://www.cnblogs.com/skyzou/p/12442199.html
Copyright © 2011-2022 走看看