您的位置:首页 > 其它

button按钮的四种监听方式

2015-09-11 17:57 309 查看

实现Button 点击事件的四种监听方法:

在logcat中可以查看打印日志

第一种:

自定义监听器:MainActivity.java

 ***包名****

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.btn);

  //绑定监听器

  myClickListener mc=new myClickListener();

  button.setOnClickListener(mc);

  

  

 }

 class myClickListener implements OnClickListener{

  @Override

  public void onClick(View v) {

           //1507是监听器的名字,后面的是内容

   Log.d("1507", "第一种监听方式");

   

  }

  

 }

第二种:定义一个匿名内部类

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.btn);

 

  button.setOnClickListener(new OnClickListener() {

   

   @Override

   public void onClick(View v) {

   Log.d("1507", "第二种监听方式"); 

    

   }

  } );

 }

第三种监听方式:  直接实现OnClickListener接口

//第三种监听器实现方法,当前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.btn);

 

  button.setOnClickListener(this);

 }

 @Override

 public void onClick(View v) {

  Log.d("1507", "第三种监听方式");

 }

}

第四种方式:通过xml布局中指定android:onClick属性

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" >

   

    <Button

        android:id="@+id/btn01"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="Button"

        android:onClick="btnOnClick" />

</LinearLayout>

Java文件:

public class MainActivity extends Activity {

@Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

}

 public void btnOnClick(View view) {

     Log.d("1507", "第四种监听方式  按钮被点击");

    }

   

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: