Android开发中布局中的onClick简单完成多控件时的监听的利与弊

首先在一个控件加上这么一句:android:onClick=”doClick”//doClick为方法名,可以自定义

然后在Activity中写上一个doClick方法:

public void doClick(View view){

//多个控件用

switch(view.getId()){

case R.id.xx:

break;


}

就可以完成一个控件监听,对于一些不需要定义只需要监听的控件,或者很多需要监听的控件,这种方法多么好用呀~

缺点来了,

1、在Fragment里,就不能用了,在使用Dailog时,也不能用。

2、当你给控件加了这个属性却没在Activity写方法,那么你点击这个控件的时候,程序会崩溃,这也是个小缺陷,不友好。

但是,有些情况下,你还是很值得用这个的,省了很多时间。

时间: 2024-10-28 16:58:22

Android开发中布局中的onClick简单完成多控件时的监听的利与弊的相关文章

Android开发实现布局中为控件添加选择器的方法

本文实例讲述了Android开发实现布局中为控件添加选择器的方法.分享给大家供大家参考,具体如下: 在开发过程中,动态交互的一些展示效果可以通过布局中添加选择器实现,这样就可减少Activity等的代码数量,MVP开发中降低耦合性,使开发人员在写代码时只需要关注逻辑处理. 比如:一个按钮,原本背景图片为红色,字体为黑色,点击时候背景图片为黄色,字体改为白色. 这类简单效果在布局时就可以实现: <Button android:id="@+id/btn_start" android:

Android开发中给EditText控件添加TextWatcher监听实现对输入字数的限制(推荐)_Android

 做这个功能是因为开发项目的时候,由于后台接口的一些参数的值的长度有要求,不能超过多少个字符,所以在编辑框中输入的字符是要有限制的. 下面就来看一下demo的实现过程: 首先,在xml控件中放置一个EditText控件,然后初始化该控件并对该控件添加文本监听.xml自己简单的设计一下,代码较为简单,直接上代码: package com.example.edittext; import android.app.Activity; import android.os.Bundle; import a

在左侧侧拉栏目中对控件添加事件监听,但点击后没有反应,为什么呢?

问题描述 在左侧侧拉栏目中对控件添加事件监听,但点击后没有反应,为什么呢? public class LeftMenuFragment extends BaseFragment { private ImageView headimage; private String id; @Override public View initView(LayoutInflater inflater) { View view = inflater.inflate(R.layout.left_menu, null

关于Unity3d和cocos2d-x中输入控件焦点的监听

问题描述 关于Unity3d和cocos2d-x中输入控件焦点的监听 java中可以通过getcurrentfocus()来获取那个view获取了焦点 cocos2dx中可不可以通过那层java来这样获取啊 (因为我这样写获取到的一直是个表层的view)Unity也是一样Unity通过java(继承了UnityPlayerActivity的一个类)这样获取 最后也一直都是表层的view 现在有一个疑问就是 Unity中调用了继承了UnityPlayerActivity这个类中的方法的话那游戏是不

Android开发6——布局中的wrap_content和fill_parent以及match_parent

  一.言简意赅 fill_parent 是让控件宽或者高占全屏 wrap_content是让控件的高或宽仅仅把控件里的内容包裹住而不是全屏     二.分别来看  1 fill_parent 设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内尽可能多的空间.这跟Windows控件的dockstyle属性大体一致.设置一个顶部布局或控件为fill_parent将强制性让它布满整个屏幕.   2  wrap_content 设置一个视图的尺寸为wrap_content

Android开发向activity中的webview传递参数

问题描述 Android开发向activity中的webview传递参数 各位帅气可爱爱卖萌的大神们,好难为情我又要打扰你们,小弟被一问题困扰好久了,实在是辗转反侧,难以入睡,夜不能寐,所以想了好久还是决定请教你们. 问题如下, 工程有2个activity,activity①有1个edittext和1个button activity②有一个webview 我想在activity①里的edittext输入一串网址,然后点击button就可以让activity②显示出来,并让webview打开act

Android开发之多线程中实现利用自定义控件绘制小球并完成小球自动下落功能实例_Android

本文实例讲述了Android开发之多线程中实现利用自定义控件绘制小球并完成小球自动下落功能的方法.分享给大家供大家参考,具体如下: 1.布局界面 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_pare

Android开发实现webview中img标签加载本地图片的方法

本文实例讲述了Android开发实现webview中img标签加载本地图片的方法.分享给大家供大家参考,具体如下: 在网上查了很多教程,感觉很麻烦,各种方法,最后实践很简单,主要是两步: WebSettings webSettings=webView.getSettings(); //允许webview对文件的操作 webSettings.setAllowUniversalAccessFromFileURLs(true); webSettings.setAllowFileAccess(true)

android开发+-Android开发入门学习中遇到的问题

问题描述 Android开发入门学习中遇到的问题 Android初学者,使用的书籍是<第一行代码Android>在书中2.2.2创建和加载布局中在布局文件中编辑添加了按钮之后,为什么要在活动中加载这个布局,原理是什么? 解决方案 布局文件相当于画面,activity相当于画布,在activity中加载布局文件才会显示出布局文件中的布局 解决方案二: 布局就是传给Activity,在安卓手机界面中显示出来