`

使用butterknife注意事项

阅读更多

转于:http://blog.csdn.net/u012049463/article/details/49615519

-------------------------------------------------------------------------------------

1. 注入的view  onclick时间的声明不能是private 和 static的。

2. 按照配置配好后,发现注入的view总是空,此时添加eclipse支持。

右键项目-java Compiler     选中enable project specitic settings

右键项目-java Compiler  - Annotation Processing ,选中 Enable project specific settings,Enable annotation processing,Enable processing in editor

右键项目-java Compiler-Annotation processing-Factory Path -edit- addjars   加入butterKnif.jar

clean一下project,确保你项目的根目录里有一个.apt_generated的文件夹,文件夹中包含YOURACTIVITY$$ViewInjector.java这样的文件。

 

3. 如果一个项目作为library被引入到别的工程,则此library无法使用butterKnife进行注入,因为所有的view id 变为 public static int ,而butterknife需要仅仅是int 类型,但引用此library的工程仍可使用butterKnife进行注入。

 
 
分享到:
评论

相关推荐

    butterknife以及插件使用详解

    ## 注意事项 1. **避免使用匿名内部类**:因为ButterKnife无法注入它们,建议使用lambda表达式或静态内部类。 2. **编译时错误检查**:如果UI元素ID不存在或者注解使用不正确,编译时就会报错,而不是在运行时。 ...

    butterknife的jar包和使用方法

    7. **注意事项** - ButterKnife与数据绑定库Data Binding共存时,需要设置`dataBinding.enabled = true`。 - 使用ButterKnife时,确保不与AndroidX冲突,如果项目使用了AndroidX,应使用`androidx.databinding:...

    ButterKnife集成

    #### 四、注意事项 - 确保在项目的构建过程中正确地应用了ButterKnife相关的依赖。 - 注意检查`build.gradle`文件中的版本号是否与当前使用的ButterKnife版本兼容。 - 如果遇到编译错误或绑定失败的问题,尝试清理...

    ButterKnife插件

    7. **注意事项**:虽然ButterKnife简化了许多操作,但它并不适用于所有情况。对于某些复杂的视图交互或者需要自定义逻辑的事件处理,可能还需要使用传统的编程方式。此外,ButterKnife的性能虽好,但在大型项目中,...

    ButterKnife包的使用

    **注意事项** - 使用ButterKnife时,记得在每个使用它的组件的onCreate()方法中调用`ButterKnife.bind()`方法进行初始化。 - ButterKnife不支持匿名内部类中的成员变量绑定。 - 在升级ButterKnife版本时,确保清理并...

    ButterKnife依赖注入框架的简单用法

    4. **使用ButterKnife的注意事项** - 在使用ButterKnife时,确保添加了注解处理器的依赖。在Gradle构建脚本中,通常会包含`annotationProcessor 'com.jakewharton:butterknife-compiler:版本号'`。 - ButterKnife...

    butterknife-butterknife-parent-7.0.1.zip

    **优化与注意事项** 1. **使用`@BindViews`**:对于需要绑定多个相同类型的视图,可以使用`@BindViews`注解,将它们一次性绑定到一个集合变量中。 2. **避免滥用**:虽然Butter Knife简化了代码,但并不意味着所有...

    Android Kotlin环境使用ButterKnife的方法

    4. **注意事项**:尽管Kotlin提供了更简洁的访问方式,但仍需确保XML布局中的控件ID与Kotlin类中的属性名称一致,否则可能会出现空指针异常。同时,点击事件的处理也需通过Kotlin的函数来实现。 ### 注意事项 - 在...

    Android Butterknife框架Demo

    - **注意事项**: - 从Butterknife 8.8.1版本开始,不再支持`@InjectView`和`@BindDrawable`注解,应使用`@BindView`替代。 - 不要在匿名内部类或非静态内部类中使用Butterknife,因为这可能导致内存泄漏。 - ...

    ButterKnife.zip

    使用ButterKnife的注意事项包括: - 需要在项目的build.gradle文件中添加依赖。 - 使用`@Bind*`注解的字段必须是公开的(public)且非final。 - 在编译时,需要运行ButterKnife的注解处理器,通常通过启用...

    详解Android Studio安装ButterKnife插件(手动安装)

    安装过程中的注意事项 在安装过程中,可能会出现一些问题。例如,如果安装过程中出现 404 错误,那么可能是因为代理设置的问题。解决方法是点击设置界面中的 HTTP Proxy settings 按钮,然后选择正确的代理设置。...

    安卓视图注入库相关-模仿butterknife实现两个基本的功能.zip

    4. **限制与注意事项**: 自定义的视图注入库可能不如Butter Knife成熟和完善,可能存在兼容性问题或功能限制。例如,可能不支持`@OnClick`等事件绑定。此外,由于是模仿实现,可能会有一些功能未完全实现,所以...

    Butterknife_Framework_20200302:你好牛刀

    6. **注意事项**:使用Butterknife时,记得在不再需要绑定的组件时调用`Butterknife.unbind()`,以避免内存泄漏。此外,对于Fragment,如果是在动态加载的情况下,需要在`onDestroyView()`方法中调用`Butterknife....

    ButterKnifeDemo.zip

    - 注意事项:虽然ButterKnife方便,但过度依赖可能导致代码过于依赖注解,不易于理解和测试。同时,对于大型项目,可能需要考虑性能问题,因为每次启动或重建都会生成Binder类。 6. **其他进阶话题** - Butter ...

    Android二手交易平台源码

    一、源码特点 1、二手交易平台,dagger2+mvp+Bmob后台云搭建,集成了百度地图,友盟三方登录等 二、菜单功能 1、系统架构:Dagger2+MVP分层,完成了一次正常的retrofit下的天气...三、注意事项 1、开发环境为Android

    Android库项目中的资源ID冲突的解决方法

    4. 使用ButterKnife时的注意事项 在库项目中使用ButterKnife时,需要注意资源ID的使用。在库项目中,资源ID不是常量,不能用于switch语句中。可以使用常量替代资源ID,或者使用其他方法来解决资源ID冲突的问题。 5...

    Android项目:扬子地板仓库管理系统说明资源来源网络以及部分开源社区、仅供参考与学习、项目不可商用、一切后果由使用者承担

    项目中包含的read.txt文件可能是项目说明文档,提供了项目的使用指南、注意事项以及可能遇到的问题和解决办法。master.zip文件则很可能是项目的源代码压缩包,包含项目的各个模块,如MainActivity.java、...

    ButterknifeSample

    使用注意事项 - 记得在每个使用 ButterKnife 的类中调用 `Butterknife.bind()` 方法。 - ButterKnife 不支持匿名内部类的事件监听器。 - 如果遇到编译问题,确保正确配置了注解处理器。 ### 5. 示例项目结构 在 ...

    YoyoDynamicLoadApk:在Android Studio中通过gradle动态加载apk生成

    YoyoDynamicLoadApk ... 注意事项 // for butterknife, need "this" to inject views ButterKnife.bind(this); 和 // but for picasso, need "that" Picasso.with(that).load("http://f.hiphotos.baid

    android-challenge-mobicare:Mobicare 的 Android 工程师挑战赛

    开发 Viajabessa 项目。 1. 项目结构。 Events:负责APP内部自定义事件的包。 模型:打包数据模型。 服务:访问和使用服务的类(带有模拟的 web 服务)。 Tasks:在Ui Thread之外运行的任务;...3.注意事项:

Global site tag (gtag.js) - Google Analytics