安卓·Butterknife使用

在网上找登录界面的样例的时候,发现有人使用了Butterknife的工具,稍微了解了一下,它的用法还是比较简单的。主要可以减少很多FindViewById();的代码量。

环境配置

因为我们只需要最简单的注解findViewById的功能,因此只需要ButterKnife的7.0.1版本。8.0以上的版本配置与本版本不同,需要注意。

7.0

在Android studio 2.3.3中,直接在项目的build.gradle(Moudle:app)文件的dependencies中加入

compile 'com.jakewharton:butterknife:7.0.1'

即可。

8.0+

在Android studio 2.3.3中,build.gradle(Moudle:project)文件中的dipendencies加入

classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'

例如

buildscript {
    repositories {
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.2'
        classpath 
//请看这里        'com.neenbedankt.gradle.plugins:android-apt:1.8'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

然后,在build.gradle(Moudle:app)文件的开头添加

apply plugin: 'android-apt'

在dependencies中添加(以8.4.0为例)

compile 'com.jakewharton:butterknife:8.4.0'
apt 'com.jakewharton:butterknife-compiler:8.4.0'

使用

注解控件id

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;
//7.0.1
import butterknife.Bind;
import butterknife.ButterKnife;
//8.0+
import butterknife.BindView;
import butterknife.ButterKnife;

public class ButterknifeActivity extends AppCompatActivity {
    //7.0.1
    @Bind( R.id.button1 ) Button button1 ;
    //8.0+
    @BindView( R.id.button1 ) Button button1 ;
    // 注意:button 的修饰类型不能是:private 或者 static 。 否则会报错:错误: @BindView fields must not be private or static. (com.zyj.wifi.ButterknifeActivity.button1)

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_butterknife);
        //绑定activity
        ButterKnife.bind( this ) ;

        button1.setText( "I am a button ");
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值