手机
当前位置:查字典教程网 >编程开发 >安卓软件开发 >Android开发之Button事件实现与监听方法总结
Android开发之Button事件实现与监听方法总结
摘要:本文实例总结了Android开发之Button事件实现与监听方法。分享给大家供大家参考,具体如下:先来介绍Button事件实现的两种方法ma...

本文实例总结了Android开发之Button事件实现与监听方法。分享给大家供大家参考,具体如下:

先来介绍Button事件实现的两种方法

main.xml

<"1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> <Button android:id="@+id/myButton1" android:text=" 按钮1 " android:layout_width="wrap_content" android:layout_height="wrap_content" /> <Button android:id="@+id/myButton2" android:text=" 按钮2 " android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>

strings.xml

<"1.0" encoding="utf-8"?> <resources> <string name="hello">Hello World, ButtonDemoActivity!</string> <string name="app_name">ButtonDemo</string> </resources>

第一种:

ButtonDemoActivity.java:

package com.android.ButtonDemo.activity; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast; public class ButtonDemoActivity extends Activity { Button myButton1,myButton2; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); myButton1=(Button)findViewById(R.id.myButton1); myButton2=(Button)findViewById(R.id.myButton2); //使用匿名类注册Button事件 myButton1.setOnClickListener(new OnClickListener() { public void onClick(View v) { Toast.makeText(ButtonDemoActivity.this, "你点击了按钮1",Toast.LENGTH_LONG).show(); } }); myButton2.setOnClickListener(new OnClickListener() { public void onClick(View v) { Toast.makeText(ButtonDemoActivity.this, "你点击了按钮2",Toast.LENGTH_LONG).show(); } }); } }

第二种:

ButtonDemoActivity.java:

package com.android.ButtonDemo.activity; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast; public class ButtonDemoActivity extends Activity { Button myButton1,myButton2; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); myButton1=(Button)findViewById(R.id.myButton1); myButton2=(Button)findViewById(R.id.myButton2); myButton1.setOnClickListener(new ButtonClick()); myButton2.setOnClickListener(new ButtonClick()); } //创建一个类,来响应OnClickListener class ButtonClick implements OnClickListener { public void onClick(View v) { switch (v.getId()) { case R.id.myButton1: Toast.makeText(ButtonDemoActivity.this, "你点击了按钮1",Toast.LENGTH_LONG).show(); break; case R.id.myButton2: Toast.makeText(ButtonDemoActivity.this, "你点击了按钮2",Toast.LENGTH_LONG).show(); break; default: break; } } } }

再来说说Button监听方法

android button控件目前主要有如下几种监听方式:

一个button控件对应一个监听:

Button buttontest; buttontest = (Button) findViewById(R.id.button1); buttontest.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Log.i("TEST", "button onClick"); } });

多个button对应一个监听1:

start = (Button) findViewById(R.id.button1); stop = (Button) findViewById(R.id.button2); start.setOnClickListener(mylistener ); stop.setOnClickListener(mylistener ); View.OnClickListener mylistener = new View.OnClickListener() { @Override public void onClick(View v) { switch (v.getId()) { case R.id.button1: Log.d(TAG, "Start to recorder videon"); start_recorde(); break; case R.id.button2: Log.d(TAG, "Stop to recorder videon"); stop_recorde(); break; default: break; } } };

多个button对应一个监听2:

public class MainActivity extends Activity implements View.OnClickListener{ //界面元素 private Button start; private Button stop; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); start = (Button) findViewById(R.id.button1); stop = (Button) findViewById(R.id.button2); start.setOnClickListener(this); stop.setOnClickListener(this); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.activity_main, menu); return true; } @Override public void onClick(View v) { switch (v.getId()) { case R.id.button1: Log.d(TAG, "Start to recorder videon"); break; case R.id.button2: Log.d(TAG, "Stop to recorder videon"); break; default: break; } } }

xml中绑定监听:

<Button android:id="@+id/button1" android:layout_height="wrap_content" android:layout_width="wrap_content" android:onClick="mybuttonlistener"> </Button>

对应java代码如下:

Button btn = (Button) findViewById(R.id.button1); public void mybuttonlistener(View target){ //do something5 }

从个人角度来讲,不推荐使用第四种实现方式。

希望本文所述对大家Android程序设计有所帮助。

【Android开发之Button事件实现与监听方法总结】相关文章:

使用android隐藏api实现亮度调节的方法

android中添加按钮事件的方法

Android控件系列之Shape使用方法

Android应用开发中模拟按下HOME键的效果(实现代码)

android中处理各种触摸事件的方法浅谈

android开发中ListView与Adapter使用要点介绍

Android实现多线程断点下载的方法

Android 用SQLite实现事务的方法

Android 开发中需要注意到的小细节

Android中实现EditText圆角的方法

精品推荐
分类导航