解决ButterKnife在library中报“Attribute value must be constant”

Android开发,在library中使用ButterKnife,需要做一些配置否则会遇到一些问题。
我开发中遇到的问题是,通过@BindView(R.id.xxx)查找控件时,会报“Attribute value must be constant”的异常。
解决方案如下:

  1. 在根目录build.gradle文件的dependencies目录下添加如下:
    classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
    classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0'
  2. 在module的build.gradle文件的顶部加入apply plugin: 'com.jakewharton.butterknife'
  3. 在module的build.gradle文件的dependencies目录下添加如下:
    implementation 'com.jakewharton:butterknife:8.8.1'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
  4. 在module中使用R2代替R来findViewById即可.
    @BindView(R2.id.xxx)

参考文章:
https://blog.csdn.net/Summer_may/article/details/80432849#commentBox

你可能感兴趣的:(解决ButterKnife在library中报“Attribute value must be constant”)