当前位置:
首页 >
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中按钮的点击事件的四种写法的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 2021-07-05
- 下一篇: Android 界面设计尺寸规范