谁能指出Dagger和Butterknife之间的区别?我知道Butterknife是一个视图注入库,而Dagger是一个依赖注入库.但是在线文档对我来说似乎有些开销.根据Butterknife的文档,您也可以进行非活动注射,这是Dagger的作用吗?还是我误解了什么?
ButterKnife的目标只是注入视图.非活动注入只是意味着您可以提供自己的视图根来注入视图(比如手动膨胀的视图等).匕首有点复杂.只要你指定了它就可以注入你想要的任何东西Module
- 满足这些依赖关系的类(或者你可以使用构造函数注入).
作为一个底线 - 我会说ButterKnife可以帮助你避免所有用于创建视图的样板代码(又名(TextView)findViewById(R.id.some_text_view);
.没有更多.在引擎盖下它仍然可以完成所有那些无聊的代码.所以它不是真正的注入..
还值得一提的是,Jake Wharton是这些酷库的开发者之一:)
这是一些有用的链接:
GitHub上的Dagger示例项目
关于Devoxx的Dagger演讲(杰克沃顿)
与Dagger开发者的Dagger聚会
没有太多有用的ButterKnife链接.虽然它非常简单直接,所以希望你不需要任何东西
这是Buterknife文档的链接。非常简单。但是,文档中没有说什么,但是Butter Knife的设计意味着您还可以在自定义视图中使用Butter Knife。只需将“ this”替换为“ context”或“ getContext”,即可确定范围。
链接:http: //jakewharton.github.io/butterknife/
我在项目中结合了黄油刀,可拆分和easyAdapter的列表视图。原因是样板少,可包裹的包裹更快更干净。因此,如果您有很多ListView,我建议您使用这种方法。
链接:
https://github.com/johncarl81/parceler
https://github.com/ribot/easy-adapter