ButterKnife 开源库的使用

    xiaoxiao2021-03-25  122

    ButterKnife 开源库的使用

    吐嘈

    今天使用ButterKnife开源库真是困难,

    第一个错误:我自己都想打死自己,把butter改写成了Buffer,然后怎么怎么Gradle都通不过,最后才发现!

    第二个错误:在添加依赖库时,有这个一名话annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1',Gradle说不认识这个关键字,我就去Stackoverflow找了找,还真找到了,说是在设置中将Annotation Processor选项勾选就好了,赶紧设置。终于可以sync了,但是,还没完。

    第三个不知道是不是错误:在app模块的build.gradle文件中,官方文档上说要加一句apply plugin: 'com.android.library',我只要一加上,就sync不通过,去掉了就能了,不知道是怎么回事??

    第四个错误:好不容易sync成功了,兴高采烈去运行,直接失败,说是BindView连接的控件是一个空指针,不就是没有连接成功吗!!又去排查问题,终于,发现自己没有加在onCreate函数中加入这句ButterKnife.bind(this);关键的话,我是瞎子吗!没有引用布局,怎么使用?然后再次运行,成功。。。

    2017年3月14日,又犯了一次第四个错误!!真是太气人了。

    最后,终于可以使用ButterKnife开源库成功,历时一下午加一晚上,真心对新手来说,太难了,一点都不懂Gradle,都不知道人家是干什么用的,报错也只能大概看懂。。要好好学习Java的注释!!

    添加依赖

    有两个文件需要配置,两个都叫build.gradle,不过,一个是对Project的配置,一个是对app模块的配置

    build.gradle(project)

    buildscrips { repositories { mavenCentral() } dependencies { classpath 'com.jakewharton:butterknife-gradle-plugin:8.5.1' } }

    build.gradle(app)

    apply plugin: 'com.android.library' //这句我一加就不能sync!! apply plugin: 'com.jakewharton.butterknife' ... dependencies { compile 'com.jakewharton:butterknife:8.5.1' annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1' }

    从理论上讲,添加完这几句话,就可以sync成功了,然后就可以在自己的类文件中使用注释来连接控件了,但是,要记得在使用注释之前,在onCreate函数有setContentView函数之后加一句butterknife.bind(this);才行。。

    就可以开始使用了。

    本文只讲ButterKnife怎么配置,不说怎么使用。因为配置好了,才能自己去试验,只有自己的经验才是永远不会忘记的。

    转载请注明原文地址: https://ju.6miu.com/read-25086.html

    最新回复(0)