Android Studio中的大量findViewById
一、 分析
在Android Studio中开发时,findViewById是用的最多的函数之一。经常需要对返回的view进行类型转换,输入麻烦、代码丑陋。
本文提供两种方案来解决这个问题:
1、安装findViewByMe插件,快速批量生成findViewById
2、安装ButterKnife插件,使用注解的方式替换代码中大量的findViewById
二、方案一:findViewByMe
1、安装findViewByMe插件
在settings中找到Plugins,搜索findViewByMe,点击Install安装插件(由于已安装,显示的是Uninstall),然后重启一下。

2、批量生成findViewById
在layout的xml文件中右键找到findViewByMe,然后就可以快速获得findViewById,复制粘贴到class文件中即可。

三、方案二:ButterKnife
1、安装ButterKnife插件
在settings中找到Plugins,搜索ButterKnife,点击Install安装插件(由于已安装,显示的是Uninstall)

2、注解替换findViewById
在build.gradle文件中添加
compile 'com.jakewharton:butterknife:7.0.0'
在Activity.java文件中找到布局文件名,右键 -> Generate -> Generate Butterknife Injections -> Confirm


代码中会自动生成各个在布局文件中带有id 属性的view的注解形式,如下代码段:

Android Studio中的大量findViewById的更多相关文章
- 在Android Studio中使用BaiduMap SDK实时获取当地位置信息
配置BaiduMap 环境 1.在百度API中新建自己的一个APP包名和APP名需要注意和自己Android Studio 中的包名和APP名保持一致: 2.百度地图中还需要填写一个SHA1 数字签名 ...
- 在Android Studio中进行单元测试和UI测试
本篇教程翻译自Google I/O 2015中关于测试的codelab,掌握科学上网的同学请点击这里阅读:Unit and UI Testing in Android Studio.能力有限,如有翻译 ...
- Android Studio中配置及使用OpenCV示例
Android Studio配置及使用OpenCV 前言:最近在做项目移植,项目较大,在Eclipse中配置的Jni及OpenCV环境没任何问题,但是迁移到Studio中就问题一大堆,网上也找了一些资 ...
- Android studio 中创建AIDL Service
1.概述 AIDL在android系统中的作用 AIDL,Android Interface definition language的缩写,它是一种android内部进程通信接口的描写叙述语言, ...
- OpenCV3.4.1快速集成到Android studio中,10分钟搞定
OpenCV3.4.1快速集成到Android studio中,10分钟搞定 转载 https://blog.csdn.net/yu540135101/article/details/8259 ...
- android studio 中移除module和恢复module
一.移除Android Studio中module 在Android Studio中想要删除某个module时,在Android Studio中选中module,右键发现没有delete,如图: An ...
- Android Studio中Button等控件的Text中字符串默认大写的解决方法
初学Android的时候,在Android Studio中xml里面添加一个Button.EditText等控件后,它的Text总是会显示大写,即使你输入的字符串是小写也不行,控制字符串大小写的属性是 ...
- .Net程序员之不学Java做安卓开发:Android Studio中的即时调试窗口
对学.Net的人来说,JAVA开发是一场噩梦. .net中的即时窗口,调试时直接在里面写代码,对程序中的各种方法/属性进行调用,很方便. Android Studio中找了好久,参考如下网址,也有类似 ...
- 如何将Eclipse中的项目迁移到Android Studio 中
如何将Eclipse中的项目迁移到Android Studio 中 如果你之前有用Eclipse做过安卓开发,现在想要把Eclipse中的项目导入到Android Studio的环境中,那么首先要做的 ...
随机推荐
- 析构方法(__del__)
析构方法,当对象在内存中被释放时(也就是实例执行完了,实例的内存就会自动释放,这时候就会触发),自动触发执行. 当程序结束时,python只会回收自己的内存空间,即用户态内存,而操作系统的资源则没有被 ...
- windows系统下将nginx作为系统服务启动
1. 准备工作 下载安装nginx,并记住安装目录 官网下载 下载winsw,下载地址 2. winsw设置 将winsw可执行程序复制到nginx安装目录下,并重命名为nginx-service 新 ...
- windows nodejs yarn 与hadoop yarn命令冲突
添加环境变量后 修改名字 1.修改前: 2.修改后:
- Python设计模式 - 创建型 - 单例模式(Singleton) - 十种
对于很多开发人员来说,单例模式算是比较简单常用.也是最早接触的设计模式了,仔细研究起来单例模式似乎又不像看起来那么简单.我们知道单例模式适用于提供全局唯一访问点,频繁需要创建及销毁对象等场合,的确方便 ...
- c++ 面试题(海量数据篇)
1,在海量数据中找中位数: 题目如下: 只有2G内存的pc机,在一个存有10G个整数的文件,从中找到中位数,写一个算法. 解答:http://www.cnblogs.com/youxin/archiv ...
- [leetcode]43. Multiply Strings高精度乘法
Given two non-negative integers num1 and num2 represented as strings, return the product of num1 and ...
- 微软Office Online服务安装部署(三)
现在开始配置两台服务器,两台服务器的IP: Server: 10.1.3.89 Client: 10.1.3.92 1.在Client中,.打开网络属性,找到ipv4的配置,将dns 改成域控制器的 ...
- Spring事务管理的配置
spring-datasource-config.xml配置事务 <bean id="txManager" class="org.springframework.j ...
- node.js 调试问题
最近打算在项目过程中使用node.js辅助解决一些问题,需要用到node.js的调试技术. 通常而言,大家都会提到debugger或者node-inspector方法. debugger方法谁用谁知道 ...
- dfs | Security Badges
Description You are in charge of the security for a large building, with n rooms and m doors between ...