Android——按钮的事件监听
關于Button按鈕的四種事件監(jiān)聽方法總結
首先我們在activity_main.xml里面先定義一個Button空間
<RelativeLayout 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"tools:context=".MainActivity" ><Buttonandroid:id="@+id/button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_alignParentTop="true"android:text="Button" /></RelativeLayout>好,現(xiàn)在要我們來看點擊事件的四種寫法:
1.最常見的一種寫法——匿名的內部類做為事件監(jiān)聽器類
package com.basillee.blogdemo;import android.os.Bundle; import android.app.Activity; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast;public class MainActivity extends Activity {private Button btnButton;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);btnButton=(Button)findViewById(R.id.button1);btnButton.setOnClickListener(new OnClickListener() {public void onClick(View arg0) {Toast.makeText(MainActivity.this, "button clicked", Toast.LENGTH_LONG).show();}});}}?
2.內部類做為監(jiān)聽器
package com.basillee.blogdemo;import android.os.Bundle; import android.app.Activity; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast;public class MainActivity extends Activity {private Button btnButton;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);btnButton=(Button)findViewById(R.id.button1);MyClicked myClicked=new MyClicked();btnButton.setOnClickListener(myClicked);}private class MyClicked implements OnClickListener{@Overridepublic void onClick(View arg0) {Toast.makeText(getApplicationContext(), "Button clicked!", Toast.LENGTH_LONG).show();}} }3.Activity直接實現(xiàn)OnClickListener接口
package com.basillee.blogdemo;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener{
private Button btnButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnButton=(Button)findViewById(R.id.button1);
btnButton.setOnClickListener(this);
}
@Override
public void onClick(View arg0) {
Toast.makeText(this, "Button clicked!", Toast.LENGTH_LONG).show();
}
}
4.在布局文件中,用android:onClick屬性指定對應的方法名實現(xiàn)
activity_main.xml代碼如下:
<RelativeLayout 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"tools:context=".MainActivity" ><Buttonandroid:id="@+id/button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_alignParentTop="true"android:text="Button" android:onClick="myClick"/></RelativeLayout>MainActivity.java代碼如下:
package com.basillee.blogdemo;import android.os.Bundle; import android.app.Activity; import android.view.View; import android.widget.Toast;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}public void myClick(View v){Toast.makeText(getApplicationContext(),"Button clicked!", Toast.LENGTH_LONG).show();} }
?
?
轉載于:https://www.cnblogs.com/BasilLee/p/4101284.html
總結
以上是生活随笔為你收集整理的Android——按钮的事件监听的全部內容,希望文章能夠幫你解決所遇到的問題。