android - studio - implementation com jakewharton butterknife 7.0 1
Butter Knife-Inject en Android lib (5)
He experimentado el mismo problema. Obtuve este error cada vez que escribía.
@BindView(R.id.pager) ViewPager pager;
o cualquier otra sintaxis similar para una vista.
La razón para obtener este error fue que el archivo R que se importó en mi archivo java era del paquete diferente.
Ahora la pregunta es por qué el archivo R importado era de un paquete diferente.
Fue porque estaba usando mi proyecto como biblioteca en el otro proyecto. Y al hacer la biblioteca di un nombre de paquete diferente.
Trabajo en Android Studio con Gradle.
Mi problema es Campos no constantes en las etiquetas de casos .
Cuando uso Butter Knife en Android lib, aparece el siguiente error:
tutuFragment.java:31: error: attribute value must be constant
@InjectView(R.id.noContactTV)
¿Alguien ha experimentado el mismo problema, y si es así, tiene una solución para ello?
Si su Fragmento está en un Proyecto de Biblioteca de Android, lea esto:
https://github.com/excilys/androidannotations/wiki/Library-projects
Butterknife no es compatible con proyectos de la biblioteca en este momento, por favor consulte https://github.com/JakeWharton/butterknife/issues/100 para obtener más información.
De acuerdo con https://github.com/JakeWharton/butterknife
Proyectos de biblioteca
Para usar Butter Knife en una biblioteca, agrega el complemento a tu buildscript:
buildscript { repositories { mavenCentral() } dependencies { classpath ''com.jakewharton:butterknife-gradle-plugin:8.4.0'' } }
y luego aplicarlo en tu módulo:
apply plugin: ''com.android.library'' apply plugin: ''com.jakewharton.butterknife''
Ahora asegúrate de usar R2 en lugar de R dentro de todas las anotaciones de Butter Knife.
class ExampleActivity extends Activity { @BindView(R2.id.user) EditText username; @BindView(R2.id.pass) EditText password; ... }
Por lo tanto, ahora es posible usar Butterknife
en libs de Android.
Espero que ayude
La página oficial de github tiene la solución: https://github.com/JakeWharton/butterknife
Pero cuando obedecí los pasos para configurar mi proyecto de biblioteca, tuve algunos problemas, como NullPointerException, las funciones marcadas por @onClick no se invocaban cuando se hacía clic en las vistas, etc.
Luego cambié algunas cosas, y finalmente lo logré. Consulte esto: http://blog.csdn.net/ytzys/article/details/53243438