Android Studio使用ButterKnife 8.0.1无效的问题
2016-05-11 18:15
323 查看
最近做一个新项目,之前使用的ButterKnife 7.0.1,得知目前最新的ButterKnife支持ListView,还支持绑定资源,就想在新项目里使用最新的版本8.0.1,可是使用的时候遇到一个问题,那就是使用BindView注解根本绑定不到TextView或ImageView,也就是绑定到的对象都是null,导致程序异常奔溃。
弄了很久依旧,百思不得其解,最后没有办法,拿ButterKnife官方的例子工程(下载地址在这里https://github.com/JakeWharton/butterknife)和自己工程对比了一下,发现几个差异,把几个差异改动了一下,问题得到解决。
是哪几个地方差异呢?
这里列举一下:如果图片太小看不清楚,可以右键在新窗口或者新标签页中打开查看大图
首先我们新建一个As工程会有两个Build.gradle文件,一个是整个工程(我这里新建工程名为Beauty)的,一个是你的主Module的。如下图所示:
classpath ‘com.android.tools.build:gradle:2.1.0’
classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8’
1、整个工程的build.gradle文件差异,如下图所示,把右边我的工程设置成左边一致,右击buidl.gradle工程,点击Run ‘build’,等待下载完成。
2、主Module的build.gradle文件差异,如下图所示,
就是这一行:apply plugin: ‘com.neenbedankt.android-apt’
还有一行:apt ‘com.jakewharton:butterknife-compiler:8.0.1’
把以上三个配置都修改后,clean, run就都OK了。至于具体原因,还没有完全琢磨透!
弄了很久依旧,百思不得其解,最后没有办法,拿ButterKnife官方的例子工程(下载地址在这里https://github.com/JakeWharton/butterknife)和自己工程对比了一下,发现几个差异,把几个差异改动了一下,问题得到解决。
是哪几个地方差异呢?
这里列举一下:如果图片太小看不清楚,可以右键在新窗口或者新标签页中打开查看大图
首先我们新建一个As工程会有两个Build.gradle文件,一个是整个工程(我这里新建工程名为Beauty)的,一个是你的主Module的。如下图所示:
classpath ‘com.android.tools.build:gradle:2.1.0’
classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8’
1、整个工程的build.gradle文件差异,如下图所示,把右边我的工程设置成左边一致,右击buidl.gradle工程,点击Run ‘build’,等待下载完成。
2、主Module的build.gradle文件差异,如下图所示,
就是这一行:apply plugin: ‘com.neenbedankt.android-apt’
还有一行:apt ‘com.jakewharton:butterknife-compiler:8.0.1’
把以上三个配置都修改后,clean, run就都OK了。至于具体原因,还没有完全琢磨透!
相关文章推荐
- Android圆形进度条
- android service,服务的正确姿势
- android开发步步为营之102:通过xml设置或者代码动态设置windowSoftInputMode
- AndroidMainfest 启动模式
- 为啥Android手机总会越用越慢?
- Android常用控件及其属性
- android工程下drawable文件夹的作用
- android学习17——命令行建gradle工程
- Android TextView使用HTML处理字体样式、显示图片等
- Android地图尝试之两行代码调用高德地图来完成位置展示
- Android 国际化
- Android native和h5混合开发几种常见的hybrid通信方式
- Android RecyclerView使用详解及实现多选
- Android当方法总数超过64K时(Android Studio)
- Android Studio 简单测试数据
- android 设置edittext最大值输入并且提示
- Android常用调试命令
- android inputtype属性
- android软键盘弹出关闭监听
- android string.xml中显示特殊符号