休言女子非英物,夜夜龙泉壁上鸣。这篇文章主要讲述Android RoboGuice开源框架Butter Knife开源框架浅析相关的知识,希望能为你提供帮助。
Google Guice on android(RoboGuice)
今天介绍一下Google的这个开源框架RoboGuice, 它的作用跟之前讲过的Dagger框架差点儿是一样的,仅仅是Dagger比它的功能更强大一些。
【Android RoboGuice开源框架Butter Knife开源框架浅析】Dagger通过专注于一种简化的功能集以一种不同的方式达到了更好的性能。有人觉得RoboGuice节约了大量的时间。较少的代码意味着较少的错误。较少的样板代码意味着能够把很多其它的时间放到应用的核心逻辑上。所以这就是为什么我们要使用这些开源框架来开发的原因。
以下我们来说说RoboGuice的使用:
locManager = (LocationManager) getSystemService(Activity.LOCATION_SERVICE); 的方法了,而是运用@Inject注解来实现,如:
@Inject
LocationManager locManager;
事实上非常多人都觉得RoboGuice的效率非常低,所以事实上非常少人愿意用这个,而很多其它人倾向于用AA (Android Annotation)。
当然RoboGuice中另一些其它的注解:如:@ContentView(R.layout.layout_main) 取代 setContentView(R.layout.layout_main); @ContextSingleton 来设计一个单例的类。(在dagger中事实上都有)假设网友有兴趣。再去深入研究它的Java Doc(http://www.imobilebbs.com/download/android/roboguice/javadoc/)
Butter Knife
这个框架跟RoboGuice框架的用法机会一样。顺带略微记录一下。样例:
class ExampleActivity extends Activity { @InjectView(R.id.user) EditText username; @InjectView(R.id.pass) EditText password; @OnClick(R.id.submit) void submit() { // TODO call server... }@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.simple_activity); ButterKnife.inject(this); // TODO Use " injected" views... } }
Gradle中的配置:
compile ‘com.jakewharton:butterknife:5.1.1‘
推荐阅读
- Android Studio关于USB device not found的解决的方法
- Android UI-实现底部切换标签(fragment)
- Android仿联系人列表分组悬浮列表实现,自己定义PinnedHeaderListView实现
- Android网络缓存的实现思路
- Excel表格自制的基本办法_Excel专区
- Excel表格合并单元格快捷键设置办法_Excel专区
- 热门压缩软件:2345好压运用手册_其它办公
- word怎样删除空白页?word删除空白页的几种办法_Word专区
- word打字后面的字消失的处理办法汇总_Word专区