1.创建一个内部类定义点击事件
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button testButton = (Button) findViewById(R.id.bt_test);
testButton.setOnClickListener(new myClickListen());
}
class myClickListen implements OnClickListener
{
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "这是测试按钮", Toast.LENGTH_LONG).show();
}
}
}
2.采用匿名内部类
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button testButton = (Button) findViewById(R.id.bt_test);
testButton.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "这是测试按钮", Toast.LENGTH_LONG).show();
}
});
}
}
3.主activity实现OnClickListener接口
public class MainActivity extends Activity implements OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button testButton = (Button) findViewById(R.id.bt_test);
testButton.setOnClickListener(this);
}
@Override
public void onClick(View v)
{
switch(v.getId())
{
case R.id.bt_test:
Toast.makeText(MainActivity.this, "这是测试按钮", Toast.LENGTH_LONG).show();
break;
}
}
}
4.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" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/testButton"
android:id="@+id/bt_test"
android:onClick="test"/>
</RelativeLayout>
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button testButton = (Button) findViewById(R.id.bt_test);
}
public void test(View view)
{
Toast.makeText(MainActivity.this, "这是测试按钮", Toast.LENGTH_LONG).show();
}
}