一、第一种实现方式,使用内部类(少用)
(1)UI Xml点击(此处)折叠或打开
- <TextView
- android:id="@+id/textView1"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="请输入手机号" />
- <EditText
- android:id="@+id/editText1"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
- android:layout_below="@+id/textView1"
- android:layout_marginTop="20dp">
- </EditText>
- <Button
- android:id="@+id/button1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
- android:layout_below="@+id/editText1"
- android:layout_marginTop="22dp"
- android:text="拨打" />
(2)代码实现
点击(此处)折叠或打开
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
-
- //找到我们关心的控件EditText Button
- editText = (EditText) findViewById(R.id.editText1);
-
- //找到按钮
- button = (Button) findViewById(R.id.button1);
-
- //给button设置一个点击事件
-
- button.setOnClickListener(new MyClickListener());
- }
-
- //定义一个类去实现 按钮需要的接口类型
- private class MyClickListener implements OnClickListener{
- @Override
- public void onClick(View v) {
- //获取EditText文本内容
- String number = editText.getText().toString().trim();
- if("".equals(number)){
- Toast.makeText(getApplicationContext(), number, 3).show();
- }
- System.out.println("按钮被点击了");
- }
- }
二、第二种实现方式,匿名内部类
(1)UI Xml点击(此处)折叠或打开
- <TextView
- android:id="@+id/textView1"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="请输入手机号" />
- <EditText
- android:id="@+id/editText1"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
- android:layout_below="@+id/textView1"
- android:layout_marginTop="20dp">
- </EditText>
- <Button
- android:id="@+id/button1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
- android:layout_below="@+id/editText1"
- android:layout_marginTop="22dp"
- android:text="拨打" />
(2)代码实现
点击(此处)折叠或打开
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
-
- //找到我们关心的控件EditText Button
- editText = (EditText) findViewById(R.id.editText1);
-
- //找到按钮
- button = (Button) findViewById(R.id.button1);
-
- //给button设置一个点击事件
-
- button.setOnClickListener(new OnClickListener() {
-
- @Override
- public void onClick(View v) {
- //获取EditText文本内容
- String number = editText.getText().toString().trim();
- if("".equals(number)){
- Toast.makeText(getApplicationContext(), number, 3).show();
- }
- System.out.println("按钮被点击了");
- }
- });
- }
三、第三种实现方式,在XML中使用Onclick属性(很少用)
(1)UI Xml点击(此处)折叠或打开
- <TextView
- android:id="@+id/textView1"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="请输入手机号" />
- <EditText
- android:id="@+id/editText1"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
- android:layout_below="@+id/textView1"
- android:layout_marginTop="20dp">
- </EditText>
- <Button
- android:onClick="click"
- android:id="@+id/button1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
- android:layout_below="@+id/editText1"
- android:layout_marginTop="22dp"
- android:text="拨打" />
(2)代码实现
点击(此处)折叠或打开
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- }
-
- private void onclick(View v) {
- //找到我们关心的控件EditText Button
- EditText editText = (EditText) findViewById(R.id.editText1);
-
- //找到按钮
- Button button = (Button) findViewById(R.id.button1);
- //获取EditText文本内容
- String number = editText.getText().toString().trim();
- if("".equals(number)){
- Toast.makeText(getApplicationContext(), number, 3).show();
- }
- System.out.println("按钮被点击了");
- }
四、第四种实现方式,Activity实现View.OnClickListener接口(最常用)
(1)UI Xml点击(此处)折叠或打开
- <TextView
- android:id="@+id/textView1"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="请输入手机号" />
- <EditText
- android:id="@+id/editText1"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
- android:layout_below="@+id/textView1"
- android:layout_marginTop="20dp">
- </EditText>
- <Button
- android:onClick="click"
- android:id="@+id/button1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
- android:layout_below="@+id/editText1"
- android:layout_marginTop="22dp"
- android:text="拨打1" />
- <Button
- android:onClick="click"
- android:id="@+id/button2"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
- android:layout_below="@+id/editText1"
- android:layout_marginTop="22dp"
- android:text="拨打2" />
(2)代码实现
点击(此处)折叠或打开
- public class MainActivity extends Activity implements OnClickListener{
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- }
- @Override
- public void onClick(View v) {
- switch (v.getId()) {
- case R.id.button1:
- Toast.makeText(getApplicationContext(), "提示信息", Toast.LENGTH_SHORT).show();
- break;
- case R.id.button2:
- Toast.makeText(getApplicationContext(), "提示信息", Toast.LENGTH_SHORT).show();
- break;
- default:
- break;
- }
-
- }
-
- }