android 使用泛型再也不写findViewById方法了

我们在开发中肯定会findViewById寻找view,如果一个界面上有很多view需要绑定click事件,那么findViewById就是个体力活了,那我们就想能不能有一种办法能不能不必要每次去findViewById呢?只要你去想,说明你就意识到这个问题,剩下来就是想办法如何解决了,这个问题也不能,如果熟悉javase中的泛型,就会很简单的解决,代码入下

public <T> T $(int viewID)

{

return (T)findViewById(viewID);

}

我们只要在BaseActivity也就是我们定义所以得基类中写这个方法,

使用:

rl_guide = $(R.id.rl_guide);

这样是不是比findViewById更简单了

ok !

时间: 2024-12-10 19:25:26

android 使用泛型再也不写findViewById方法了的相关文章

Android中通过注解代替findViewById方法

尊重原创 http://write.blog.csdn.net/postedit/26507351 这篇文章主要讲解注解实现findViewById的功能,首先我们来熟悉一下在java中怎么定义一个注解和解析一个注解 注解的概念是在jdk5.0中提出来的,在java.lang的包中已经定义了三个注解:Override,Deprecated,SuppressWarnings Override相信大家非常熟悉,就是表明这个方法是改写了父类的方法 Deprecated表示在新版本的 jdk中已经不建议

Android通过泛型简化findViewById类型转换

以前老用findViewById,每次使用还得add cast一下今天看到一个视频(根据视频中使用的IDE推断,应该是几年前的视频了..),使用了一个方法,可以不用每次使用findViewById都去add cast. 我根据视频中的写法进行优化,具体做法: 创建一个BaseActivity,让它继承Activity,在其中添加如下方法: // 因为是findView所以泛型类型应该继承View protected <T extends View> T genericFindViewById(

Android开发-- findViewById()方法得到空指针

如果想通过调用findViewById()方法获取到相应的控件,必须要求当前Activity的layout通过setContentView. 如果你通过其他方法添加了一个layout,如需获取这个layout中的View对象,首先需inflate这个layout,然后在该layout上调用findViewById(). 1 View v = inflater.inflate(id_number_of_layout); 2 View innerView = v.findViewById(id_nu

Android中常用的三种存储方法浅析

Android中常用的三种存储方法浅析 Android中数据存储有5种方式: [1]使用SharedPreferences存储数据 [2]文件存储数据 [3]SQLite数据库存储数据 [4]使用ContentProvider存储数据 [5]网络存储数据 在这里我只总结了三种我用到过的或即将可能用到的三种存储方法. 一.使用SharedPreferences存储数据 SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置信息比如窗口状态,它的本质是基

Android Studio下Android应用开发集成百度语音合成使用方法样例

转载请注明来源: http://blog.csdn.net/kjunchen/article/details/51093134 Android Studio下Android应用开发集成百度语音合成使用方法样例 首先,语音合成是指将文本信息转换成声音.意思就是将文本转化为声音,让你的应用开口说话.国内在业内比较有名的第三方语音合成平台有百度语音和科大讯飞. 本博文集成的是百度语音合成,其主要特点是: 完全永久免费 业界首创完全永久免费新形式,为开发者提供最流畅最自然的语音合成服务.完全免费,永久使

继承BaseAdapter覆写getView()方法解析

当我们继承BaseAdapter自定义适合自己使用的Adapter时候,不可避免的要覆写getView()方法.自己在分析蓝牙4.0官方源代码遇到这个问题,分析了几遍,有所领悟,参考了这篇博文http://blog.csdn.net/pkxiuluo01/article/details/7380974,现结合蓝牙4.0官方的这部分代码将getView()解析一下. //当界面每显示出来一个item时,就会调用该方法,getView()有三个参数,第一个参数表示该item在Adapter中的位置:

Android中View的绘制过程 onMeasure方法简述

Android中View的绘制过程 当Activity获得焦点时,它将被要求绘制自己的布局,Android framework将会处理绘制过程,Activity只需提供它的布局的根节点. 绘制过程从布局的根节点开始,从根节点开始测量和绘制整个layout tree. 每一个ViewGroup 负责要求它的每一个孩子被绘制,每一个View负责绘制自己. 因为整个树是按顺序遍历的,所以父节点会先被绘制,而兄弟节点会按照它们在树中出现的顺序被绘制. 绘制是一个两遍(two pass)的过程:一个mea

Android学习笔记-保存数据的实现方法1

Android开发中,有时候我们需要对信息进行保存,那么今天就来介绍一下,保存文件到内存,以及SD卡的一些操作,及方法,供参考. 第一种,保存数据到内存中: //java开发中的保存数据的方式 public static boolean saveUserInfo(String username,String password){ File file = new File("/data/data/com.ftf.login/info.txt"); try { FileOutputStre

Android编程之Fragment动画加载方法源码详解

上次谈到了Fragment动画加载的异常问题,今天再聊聊它的动画加载loadAnimation的实现源代码: Animation loadAnimation(Fragment fragment, int transit, boolean enter, int transitionStyle) { 接下来具体看一下里面的源码部分,我将一部分一部分的讲解,首先是: Animation animObj = fragment.onCreateAnimation(transit, enter, fragm