Android开发20——单个监听器监听多个按钮点击事件
来源:互联网 发布:剑三点绛唇数据 编辑:程序博客网 时间:2024/05/18 01:24
一、单个按钮点击事件的监听
方法一
/** * 从网络上获取图片 * * @author 徐越 * */public class MainActivity extends Activity{private EditText txtPath;private Button btnShowImage;private ImageView imgView;@Overridepublic void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);txtPath = (EditText) this.findViewById(R.id.txtPath);btnShowImage = (Button) this.findViewById(R.id.btnShowImage);imgView = (ImageView) this.findViewById(R.id.imgView);btnShowImage.setOnClickListener(new ShowImageListener());}private final class ShowImageListener implements View.OnClickListener{@Overridepublic void onClick(View v){// 图片路径String path = txtPath.getText().toString();try{// 获取图片的二进制数据byte[] imgdata = ImageService.getImage(path);// 利用Bitmap工厂生成BitmapBitmap bitmap = BitmapFactory.decodeByteArray(imgdata, 0, imgdata.length);// imageView接收Bitmap并显示imgView.setImageBitmap(bitmap);}catch (Exception e){Toast.makeText(MainActivity.this, "读取图片失败", Toast.LENGTH_SHORT).show();}}}}
方法二
在布局页面中给该按钮加上android:onClick="showImage",然后再显示该元素的Activity中加入showImage(View v)的方法,在该方法中进行操作。
二、多个按钮点击事件的监听
方法一
在Activity中按照第一个大标题的方法,给每个按钮写一个监听类或者监听方法。
方法二
利用一个监听器监听所有按钮的点击事件
/** * 查询号码归属地 * * @author 徐越 * */public class MainActivity extends Activity implements View.OnClickListener{private EditText txtPhone;private TextView lblAddress;private Button btnQuery;private Button btnReset;private CallAddressQueryService callAddressQueryService = new CallAddressQueryService();private final int CLICK_QUERY = 1;private final int CLICK_RESET = 2;@Overridepublic void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);lblAddress = (TextView) this.findViewById(R.id.lblAddress);txtPhone = (EditText) this.findViewById(R.id.txtPhone);btnQuery = (Button) this.findViewById(R.id.btnQuery);btnReset = (Button) this.findViewById(R.id.btnReset);btnQuery.setOnClickListener(this);btnQuery.setTag(CLICK_QUERY);btnReset.setOnClickListener(this);btnReset.setTag(CLICK_RESET);}@Overridepublic void onClick(View v){int tag = (Integer) v.getTag();switch (tag){case CLICK_QUERY:query();break;case CLICK_RESET:reset();break;}}public void query(){String phone = txtPhone.getText().toString();try{lblAddress.setText("查询中");String address = callAddressQueryService.getCallAddress(phone);lblAddress.setText(address);}catch (Exception e){e.printStackTrace();Toast.makeText(this, "查询失败", Toast.LENGTH_LONG).show();}}public void reset(){txtPhone.setText("");lblAddress.setText("");}}
- Android开发20——单个监听器监听多个按钮点击事件
- Android开发20——单个监听器监听多个按钮点击事件
- 设置一个监听器监听多个按钮事件(点击按钮进入一个指定的网站)
- android基础笔记——用一个监听器,实现多个按钮的监听
- Android开发中按钮点击事件的监听
- 一个监听器监听多个事件 android学习(三)
- 多个按钮用同一个监听器监听
- android监听按钮的点击事件
- Android学习之监听按钮点击事件
- Android按钮点击监听事件的写法
- Android中按钮的点击事件监听
- #Android#监听按钮的点击事件
- 【Android】06、监听按钮点击事件
- Android中三种方法监听按钮点击事件
- 监听按钮点击事件
- iOS项目开发实战——监听对话框的按钮点击事件
- 2. 按钮点击事件监听器
- 【Android开发学习30】动态创建多个按钮,并给每个按键添加监听事件
- 隐藏Windows XP登陆界面多余用户
- eclipse 护眼色
- HDU 1796 How many integers can you find
- Hibernate注解(Annotation)使用以及Spring整合
- CSS导航布局中当前页面的做法
- Android开发20——单个监听器监听多个按钮点击事件
- WINCE6.0+S3C2443下的usb function(功能)驱动
- MySQL常用命令
- ORACLE操作表时”资源正忙,需指定nowait"的解锁方法
- x86开启PAE
- WINCE下基于SL031的RFID功能的实现
- spring加载hibernate映射文件的几种方式
- 只读TextBox的文字颜色不随ForeColor的改变而改变
- 更改MYSQL数据库不区分大小写表名