首页 > 代码库 > Android中使用findViewByMe提升组件查找效率

Android中使用findViewByMe提升组件查找效率

1、引出

安卓初学者一般在写android Activity的时候总是会在onCreate方法中加上setContentView方法来加载layout,通过findViewById来实现控件的绑定,刚开始的演示的layout中只有一两个组件还好,但突然之间接触一个layout中需要部署大量控件,这样就会很耽误时间,还好AndroidStudio为大家提供了方便的插件findViewByMe(大家也可以去了解注解,尤其是编译时的注解,不会影响性能喔)。

2、操作演示

这里演示时,插件我已经提前安装好了,大家可以自行安装,然后重启AndroidStudio即可。
技术分享
 

3、注意事项

(1)添加RootView

针对Fragment需要添加rootView这种,首先勾选“Add RootView”;

然后在编辑框中输入rootView的名称,例contentView;

最后点击添加,生成的代码就更新了。

(2)Adapter中的ViewHolder 

勾选上“Is ViewHolder”就行了,代码就更新了;

这里的控件变量不再添加任何修饰符。

一些变量得自行去处理,这里不再赘述。

(3)命名规则

控件变量的命名规则:变量命名是根据控件的id来的,例如id是edit_user_name,那么生成的变量名称就是editUserName;

控件变量默认使用private修饰符;

关于添加“m”的问题,这个直接在兑换框中勾选“Add “m””就行了,此时变量命名就变成mEditUserName

 

4.补充

也可以使用 https://github.com/boredream/BorePlugin(更加爽快啊)

代码生成规则:

(1)自动遍历目标布局中所有带id的文件, 无id的不会识别处理

(2)控件生成的变量名默认为id名称, 可以在弹出确认框右侧的名称输入栏中自行修改

(3)所有的Button或者带clickable=true的控件, 都会自动在代码中生成setOnClickListener相关代码

(4)所有EditText控件, 都会在代码中生成非空判断代码, 如果为空会提示EditText的hint内容, 如果hint为空则提示xxx字符串不能为空字样, 最后会把所有输入框的验证合并到一个submit方法中

(5)会自动识别布局中的include标签, 并读取对应布局中的控件

Android中使用findViewByMe提升组件查找效率