Android中實作事件監聽的5種方式
- 匿名內部類
public class FirstActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
Button but2 =(Button)findViewById(R.id.button2);
//1.匿名內部類
but2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v){
// TODO Auto-generated method stub
}
});
}
}
- 內部類
public class FirstActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
Button but2 = (Button) findViewById(R.id.button2);
class MyListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub }
}
MyListener mylistener=new MyListener();
but2.setOnClickListener(mylistener);
}
3.外部類
public class FirstActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
Button but2 = (Button) findViewById(R.id.button2);
MyListener mylistener=new MyListener();
but2.setOnClickListener(mylistener);
}
}
final class MyListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
}
4.通過Activity實作
public class FirstActivity extends Activity implements OnClickListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
Button but2 = (Button) findViewById(R.id.button2);
but2.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
}
5.通過XML布局檔案實作
public class FirstActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
}
public void callBack(View view) {}
}
XML布局檔案,通過控制元件屬性onClick系結事件函式,即android:onClick=“callBack”
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/button2"
android:onClick="callBack" />```
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/76450.html
標籤:其他
