1. 创建内部类。定义点击事件
<span style="font-size:18px;">package com.example.test; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { private Button testButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); testButton = (Button) findViewById(R.id.testButton); // 设置点击处理时间 testButton.setOnClickListener(new MyListener()); } /* * 创建的内部类。处理点击事件 * * */ private class MyListener implements OnClickListener{ @Override public void onClick(View v) { // 处理的时间 } } } </span>
2. 採用匿名内部类创建点击事件
<span style="font-size:18px;">package com.example.test; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { private Button testButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); testButton = (Button) findViewById(R.id.testButton); // 设置点击处理时间 testButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //处理的事件 } }); } } </span>
3. 在接口里面实现点击处理事件
<span style="font-size:18px;">package com.example.test; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity implements OnClickListener { private Button testButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); testButton = (Button) findViewById(R.id.testButton); // 设置点击处理事件 testButton.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.testButton: // 处理的事件 break; default: break; } } } </span>
4.在布局中绑定点击方法
布局:
<span style="font-size:18px;"><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" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <Button android:id="@+id/testButton" <span style="color:#ff0000;">android:onClick="test"</span> android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="76dp" android:text="Button" /> </RelativeLayout> </span>Java代码
<span style="font-size:18px;">package com.example.test; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void test(View v){ // 处理事件 } } </span>