欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

Android中按钮的点击事件的四种写法

发布时间:2023/12/14 40 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Android中按钮的点击事件的四种写法 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

如题,在Android中按钮的点击事件有四种写法,如下图。

界面为四个Button+一个TextView+一个ImageView


activity_main布局文件如下:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout 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:orientation="vertical"android:padding="5dp"tools:context=".MainActivity"><Buttonandroid:id="@+id/btn_click1"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/click1" /><Buttonandroid:id="@+id/btn_click2"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/click2" /><Buttonandroid:id="@+id/btn_click3"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/click3" /><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="click4"android:text="@string/click4" /><TextViewandroid:id="@+id/tv_text"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textColor="@android:color/holo_red_light"android:textSize="18sp"/><ImageViewandroid:id="@+id/iv_yc"android:layout_width="wrap_content"android:layout_height="wrap_content" /> </LinearLayout> 主界面实现的代码如下:

package clickevent.ithema.com.clickevent;import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.TextView;public class MainActivity extends Activity implements View.OnClickListener {private TextView tv_text;private Button btn_click1,btn_click2,btn_click3;private ImageView iv_yc;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);tv_text = (TextView) findViewById(R.id.tv_text);iv_yc= (ImageView) findViewById(R.id.iv_yc);btn_click1 = (Button) findViewById(R.id.btn_click1);btn_click2 = (Button) findViewById(R.id.btn_click2);btn_click3 = (Button) findViewById(R.id.btn_click3);btn_click2.setOnClickListener(this);//这是实现接口点击的方法btn_click3.setOnClickListener(new MyListener());//这是自定义类实现接口点击的方法btn_click1.setOnClickListener(new View.OnClickListener() {//实现匿名内部类点击的方法@Overridepublic void onClick(View v) {tv_text.setText("这是匿名内部类点击的方法,适用于只用一次点击方法");iv_yc.setImageResource(R.drawable.click1);}});}@Overridepublic void onClick(View v) {tv_text.setText("这是实现接口点击的方法");iv_yc.setImageResource(R.drawable.click2);}class MyListener implements View.OnClickListener {@Overridepublic void onClick(View v) {tv_text.setText("这是自定义类实现接口点击的方法");iv_yc.setImageResource(R.drawable.click3);}}public void click4(View v){tv_text.setText("这是在xml文件中定义属性的方法");iv_yc.setImageResource(R.drawable.click4);} }</span><span style="font-size:18px;font-weight: bold;"> </span>
以下为拆分后单独的代码:

方法一:匿名内部类方法

package clickevent.ithema.com.clickevent;import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.TextView;/*** Created by Administrator on 2016/7/16.*/ public class Click1 extends Activity{private TextView tv_text;//文本框private ImageView iv_yc;//图片框private Button btn_click1;//按钮@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);tv_text= (TextView) findViewById(R.id.tv_text);//查找到文本框的IDiv_yc= (ImageView) findViewById(R.id.iv_yc);//查找到图片框的IDbtn_click1= (Button) findViewById(R.id.btn_click1);//查找到按钮的IDbtn_click1.setOnClickListener(new View.OnClickListener() { //给按钮设置监听@Override//按钮点击解发的方法public void onClick(View v) {//设置要显示的文字tv_text.setText("这是匿名内部类点击的方法,适用于只用一次点击方法");//设置要显示的图片iv_yc.setImageResource(R.drawable.click1);}});} } 方法二:实现接口

package clickevent.ithema.com.clickevent;import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.TextView;/*** Created by Administrator on 2016/7/16.*/ public class Click2 extends Activity implements View.OnClickListener {//实现监听接口private TextView tv_text;//文本框private ImageView iv_yc;//图片框private Button btn_click2;//按钮@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);tv_text= (TextView) findViewById(R.id.tv_text);//查找到文本框的IDiv_yc= (ImageView) findViewById(R.id.iv_yc);//查找到图片框的IDbtn_click2= (Button) findViewById(R.id.btn_click2); //查找到按钮的IDbtn_click2.setOnClickListener(this);//给按钮设置监听}@Override//按钮点击解发的方法public void onClick(View v) {//设置要显示的文字tv_text.setText("这是实现接口点击的方法");//设置要显示的图片iv_yc.setImageResource(R.drawable.click2);} } 方法三:自定义类实现接口

package clickevent.ithema.com.clickevent;import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.TextView;/*** Created by Administrator on 2016/7/16.*/ public class Click3 extends Activity {private TextView tv_text;//文本框private ImageView iv_yc;//图片框private Button btn_click3;//按钮@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);tv_text = (TextView) findViewById(R.id.tv_text);//查找到文本框的IDiv_yc= (ImageView) findViewById(R.id.iv_yc);//查找到图片框的IDbtn_click3 = (Button) findViewById(R.id.btn_click3);//查找到按钮的IDbtn_click3.setOnClickListener(new MyListener());//给按钮设置监听}class MyListener implements View.OnClickListener {//自定义MyListener类实现OnClickListener接口@Overridepublic void onClick(View v) {//设置要显示的文字tv_text.setText("这是自定义类实现接口点击的方法");//设置要显示的图片iv_yc.setImageResource(R.drawable.click3);}} } 方法四:在xml文件中定义onClick属性
1、在xml文件中定义onClick属性:

<Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="click4"android:text="@string/click4" />2、在java代码中写点击的方法:

package clickevent.ithema.com.clickevent;import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.ImageView; import android.widget.TextView;/*** Created by Administrator on 2016/7/16.*/ public class Click4 extends Activity {private TextView tv_text;//文本框private ImageView iv_yc;//图片框@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);tv_text = (TextView) findViewById(R.id.tv_text);//查找到文本框的IDiv_yc= (ImageView) findViewById(R.id.iv_yc);//查找到图片框的ID}public void click4(View v){//设置要显示的文字tv_text.setText("这是在xml文件中定义属性的方法");//设置要显示的图片iv_yc.setImageResource(R.drawable.click4);} }
以上是本人总结的按钮的四种点击事件,如有不足之处,请给予批评指正,谢谢!


总结

以上是生活随笔为你收集整理的Android中按钮的点击事件的四种写法的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。