Activity本身作为事件监听器
匿名内部类形式
内,外部类型形式
绑定标签
``
配置文件`
<EditText
android:id="@+id/showTxt"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/btn1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onClick"
android:text="Activity本身作为监听器" />
<Button
android:id="@+id/btn2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="隐藏内部类作为监听器" />
<Button
android:id="@+id/btn3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="内部类作为监听器" />
<Button
android:id="@+id/btn4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="外部类作为监听器" />
<Button
android:id="@+id/btn5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="jsx"
android:text="绑定标签类作为监听器" />
```
-Java文件
```javascript
package com.example.apppp;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends Activity implements OnClickListener {
TextView show;
Button bn;
Button bn2;
Button bn3;
Button bn4;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.event_btn);
show=(EditText)findViewById(R.id.showTxt);
bn=(Button)findViewById(R.id.btn1);
bn.setOnClickListener(this);
bn2=findViewById(R.id.btn2);
bn2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
show.setText("匿名内部类按钮被点击了!");
Log.d("event","匿名内部类事件监听");
}
});
bn3=findViewById(R.id.btn3);
bn3.setOnClickListener(new nListener());
bn4=findViewById(R.id.btn4);
bn4.setOnClickListener(new Onclick() {
public void onClick(View view) {
show.setText("外部类按钮被点击了!");
Log.d("event","外部类事件监听");
}
});
}
public void jsx(View v){
show.setText("绑定事件标签被点击了!");
Log.d("event","绑定事件标签事件监听");
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
show.setText("activity按钮被点击了!");
Log.d("event","activity事件监听");
};
class nListener implements OnClickListener {
@Override
public void onClick(View view) {
show.setText("内部类按钮被点击了!");
Log.d("event","内部类事件监听");
}
}
}
。
Onclick.java
package com.example.apppp;
import android.view.View;
public class Onclick implements View.OnClickListener {
@Override
public void onClick(View view) {
}
}