Android(SDK 1.5) Button 的单击事件的三种响应方法
Android(SDK 1.5) Button 的单击事件的三种响应方法:
http://blog.csdn.net/hopease/article/details/7293244
第一种:个人认为写法不好,不容易看懂。
- package leo.zheng.ButtonClick;
- import android.app.Activity;
- import android.os.Bundle;
- import android.graphics.Color;
- import android.widget.Button;
- import android.widget.TextView;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.util.Log;
- public class ButtonClick extends Activity {
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- final TextView Text = (TextView)findViewById(R.id.ColorView);
- final Button redButton = (Button)findViewById(R.id.Button01);
- final Button greenButton = (Button)findViewById(R.id.Button02);
- redButton.setOnClickListener(
- new OnClickListener()
- {
- public void onClick(View v)
- {
- Text.setBackgroundColor(Color.RED);
- Log.v("Button click", "red");
- }
- }
- );
- greenButton.setOnClickListener(
- new OnClickListener()
- {
- public void onClick(View v)
- {
- Text.setBackgroundColor(Color.GREEN);
- Log.v("Button click","green");
- }
- }
- );
- }
- }
第二种:Activity implements OnClickListener
- package leo.zheng.ButtonClick2;
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.util.Log;
- import android.widget.TextView;
- import android.widget.Button;
- public class ButtonClick2 extends Activity implements OnClickListener {
- /** Called when the activity is first created. */
- private TextView textChange;
- private Button button1;
- private Button button2;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- textChange = (TextView)findViewById(R.id.TextView01);
- button1 = (Button)findViewById(R.id.Button01);
- button1.setOnClickListener(this);
- button2 = (Button)findViewById(R.id.Button02);
- button2.setOnClickListener(this);
- }
- public void onClick(View v)
- {
- Log.v("Click", "Button id = " + v.getId());
- switch(v.getId())
- {
- case R.id.Button01:
- textChange.setText("Ok");
- break;
- case R.id.Button02:
- textChange.setText("Cancal");
- break;
- default:
- break;
- }
- }
- }
第三种:个人比较推荐。
- package leo.zheng.ButtonClick3;
- import android.app.Activity;
- import android.graphics.Color;
- import android.os.Bundle;
- import android.util.Log;
- import android.widget.Button;
- import android.widget.TextView;
- import android.view.View;
- import android.view.View.OnClickListener;
- public class ButtonClick3 extends Activity {
- /** Called when the activity is first created. */
- private Button button1;
- private Button button2;
- private TextView colorShow;
- private button1_OnClickListener listener1 = new button1_OnClickListener();
- private button2_OnClickListener listener2 = new button2_OnClickListener();
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- button1 = (Button) findViewById(R.id.Button01);
- button2 = (Button) findViewById(R.id.Button02);
- colorShow = (TextView) findViewById(R.id.TextView01);
- button1.setOnClickListener(listener1);
- button2.setOnClickListener(listener2);
- }
- class button1_OnClickListener implements OnClickListener
- {
- public void onClick(View v)
- {
- Log.v("Click", "Button GREEN");
- colorShow.setBackgroundColor(Color.GREEN);
- }
- }
- class button2_OnClickListener implements OnClickListener
- {
- public void onClick(View v)
- {
- Log.v("Click", "Button BLUE");
- colorShow.setBackgroundColor(Color.BLUE);
- }
- }
- }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述