RoboGuice 使用谷歌自己的Guice库,给Android带来了简单和易用的依赖注入。如果你使用过Spring或Guice的话,你可能已经知道这种编程方式是多么的便捷。

RoboGuice 允许使用annotation 的方式来描述id于View之间的关系,其余的工作由roboGuice库来完成。比如:

class AndroidWay extends Activity { TextView name; ImageView thumbnail; LocationManager loc; Drawable icon; String myName; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); name      = (TextView) findViewById(R.id.name); thumbnail = (ImageView) findViewById(R.id.thumbnail); loc       = (LocationManager) getSystemService(Activity.LOCATION_SERVICE); icon      = getResources().getDrawable(R.drawable.icon); myName    = getString(R.string.app_name); name.setText( "Hello, " + myName ); }}

如果使用roboguice 来写:

class RoboWay extends RoboActivity { @InjectView(R.id.name)             TextView name; @InjectView(R.id.thumbnail)        ImageView thumbnail; @InjectResource(R.drawable.icon)   Drawable icon; @InjectResource(R.string.app_name) String myName; @Inject                            LocationManager loc; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); name.setText( "Hello, " + myName ); }}


只需使用@InjectView 来描述 view 和Id之间的关系,RoboGuice 自动完成余下的工作,代码简洁易读。


注意:activity必须继承自RoboActivity


收集到的一些资料:github有资料和源码https://github.com/roboguice/roboguice

中文的资料:http://daimajishu.iteye.com/blog/1610501

更多相关文章

  1. 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Fedora镜像
  2. 箭头函数的基础使用
  3. NPM 和webpack 的基础使用
  4. Python list sort方法的具体使用
  5. 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
  6. 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Debian镜像
  7. Android中BindService方式使用的理解
  8. 自己收藏的Android开发的知识点各种传送门 持续更新中~~
  9. Android中Shape和selector的使用

随机推荐

  1. 下载安装sdk-tools配置Android(安卓)SDK
  2. 打开eclipse的opens the android sdk and
  3. 检测android app是否第一次启动
  4. Android之Gradle的理解
  5. 【Android】高仿大众点评中的范围选择控
  6. Android中Handler的正确使用
  7. AES在Android、JAVA端正常加密解密
  8. android studio使用volley发送post和get
  9. Android从外部API获取json数据并以listvi
  10. Android电源管理-休眠简要分析