Android studio ButterKnife8.1.0空指针/相关配置及其简单使用
Posted Linccy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android studio ButterKnife8.1.0空指针/相关配置及其简单使用相关的知识,希望对你有一定的参考价值。
ButterKnife 是这两年比较流行的开源库,是一个View注入框架,其主要功能是代替findViewByid()方法。同时还能够快速的添加监听事件,能够更容易的实现MVVM模式,是非常实用的工具之一。
刚开始使用ButterKnife的时候很多人可能会遇到NullPointerException或者“找不到符号”,这皆是由于ButterKnife配置有误。下面我们来详细的来说明ButterKnife的配置
首先我们需要导入ButterKnife
如图
也可以在这里添加
同时还需要安装ButterKnife的插件
这里我已经安装好了,看起来有一些不同。没安装的时候先搜索然后点下面的按钮就会出来了
然后配置
注意,这里如果没有完成上面安装插件的步骤会无法识别apt()
还不理解的话,下面就贴出完整的build.gradle吧
1 // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 3 buildscript { 4 repositories { 5 jcenter() 6 } 7 dependencies { 8 classpath \'com.android.tools.build:gradle:2.1.0\' 9 classpath \'com.neenbedankt.gradle.plugins:android-apt:1.8\' 10 // NOTE: Do not place your application dependencies here; they belong 11 // in the individual module build.gradle files 12 } 13 } 14 15 allprojects { 16 repositories { 17 jcenter() 18 } 19 } 20 21 task clean(type: Delete) { 22 delete rootProject.buildDir 23 }
1 apply plugin: \'com.android.application\' 2 3 android { 4 compileSdkVersion 23 5 buildToolsVersion "23.0.3" 6 7 defaultConfig { 8 applicationId "com.lcc.fjnu.damuvideobysohu" 9 minSdkVersion 14 10 targetSdkVersion 23 11 versionCode 1 12 versionName "1.0" 13 } 14 buildTypes { 15 release { 16 minifyEnabled false 17 proguardFiles getDefaultProguardFile(\'proguard-android.txt\'), \'proguard-rules.pro\' 18 } 19 } 20 } 21 22 buildscript { 23 repositories { 24 mavenCentral() 25 } 26 dependencies { 27 classpath \'com.neenbedankt.gradle.plugins:android-apt:1.8\' 28 } 29 } 30 31 apply plugin: \'com.neenbedankt.android-apt\' 32 33 dependencies { 34 compile fileTree(include: [\'*.jar\'], dir: \'libs\') 35 testCompile \'junit:junit:4.12\' 36 compile \'com.android.support:appcompat-v7:23.3.0\' 37 compile \'com.android.support:design:23.3.0\' 38 compile \'com.jakewharton:butterknife:8.1.0\' 39 apt \'com.jakewharton:butterknife-compiler:8.1.0\' 40 }
以上就是配置的过程
再说一点ButterKnife8.1.0的绑定方法是@BindView 之前的版本是@Bind,再之前是@InjectView.
具体的说明可以参照其官网(未墙) http://jakewharton.github.io/butterknife/
这里会给出一个简单的范例:
1 public class MainActivity extends AppCompatActivity { 2 3 @BindView(R.id.toolbar) 4 Toolbar mToolbar; 5 @BindView(R.id.tabs) 6 TabLayout mtabs; 7 @BindView(R.id.appbar) 8 AppBarLayout mappbar; 9 @BindView(R.id.container) 10 ViewPager container; 11 @BindView(R.id.fab) 12 FloatingActionButton fab; 13 ......}
不需要重新实例化以及findviewbyid(),代码变得更简洁明了
以上是关于Android studio ButterKnife8.1.0空指针/相关配置及其简单使用的主要内容,如果未能解决你的问题,请参考以下文章