Android Butterknife 使用总结——Android Studio 3.0

Butterknife 的配置情况分很多种。本篇文章主要是在Android Studio 3.0版本下配置。

由于Android studio更新,然后gradle更新了,这样的话可能使原来的android-apt 工具跟不上节奏了,所以让采用annotationProcessor工具。因此配置方法有所改变。

配置:

第一步:在Project的 build.gradle 中builscript标签中的子标签dependencies中添加如下代码:

classpath 'com.jakewharton:butterknife-gradle-plugin:8.8.1
如下所示:
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.3'
        classpath 'com.jakewharton:butterknife-gradle-plugin:8.8.1'  //添加这一行
    }
}

第二步:在Preoject 的build.gradle中添加如下代码: 
 
apply plugin: 'com.jakewharton.butterknife'

第三步:在app的build.gradle中的dependencies标签中添加如下代码:

compile 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'

这样就配置成功了。

使用:

布局文件xml定义TextView:

<TextView
    android:id="@+id/textview1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Hello World!"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

Activity中setContentView之后,需要bing ButterKnife,然后使用@BindView(R.id.textview1)绑定view。如下:

 @BindView(R.id.textview1)
    TextView tv1;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
//        tv1 = findViewById(R.id.textview1);
        ButterKnife.bind(this);
        tv1.setText("Hello ButterKnife");
    }



猜你喜欢

转载自blog.csdn.net/sshzf/article/details/79296858