AndroidAnnotations——Injecting project Resources注入项目资源

翻译 2013年12月04日 20:11:28

Resources

Since AndroidAnnotations 1.0

All @XXXRes annotations indicate that an activity field should be injected with the correspondingAndroid resource from your res folder. The resource id can be set in the annotation parameter, ie@StringRes(R.string.hello).所有的 @XXXRes 注解标识一个activity字段应该由和res 文件夹下对应的Android resource 注入。这个资源id可以在注解参数中设置,@StringRes(R.string.hello)

If the resource id is not set, the name of the field will be used. The field must not be private.假如没有设置资源id,将默认使用字段名

@StringRes

The @StringRes annotation can be used to retrieve string resources. @StringRes 注解用来检索string资源。

Usage example:用法:

@EActivity
public class MyActivity extends Activity {

  @StringRes(R.string.hello)
  String myHelloString;

  @StringRes
  String hello;

}

@ColorRes

The @ColorRes annotation can be used to retrieve color resources. @ColorRes 注解用来检索color资源。

Usage example:用法:

@EActivity
public class MyActivity extends Activity {

  @ColorRes(R.color.backgroundColor)
  int someColor;

  @ColorRes
  int backgroundColor;

}

@AnimationRes

@AnimationRes can be used to inject XmlResourceParser fields (not very useful) orAnimationfields (much more interesting).@AnimationRes 注解可以注入 XmlResourceParser 字段(不常用)或者Animation字段(这种方式有趣的多)。

Usage example:用法:

@EActivity
public class MyActivity extends Activity {

  @AnimationRes(R.anim.fadein)
  XmlResourceParser xmlResAnim;
    
  @AnimationRes
  Animation fadein;

}

@DimensionRes

The @DimensionRes annotation can be used to retrieve dimension resources. @DimensionRes 注解用来检索dimension 资源。

Usage example:用法:

@EActivity
public class MyActivity extends Activity {

  @DimensionRes(R.dimen.fontsize)
  float fontSizeDimension;

  @DimensionRes
  float fontsize;

}

@DimensionPixelOffsetRes

The @DimensionPixelOffsetRes annotation can be used to retrieve dimension resources. Retrieves the dimension to its final value as an integer pixel offset. This is the same as @DimensionRes, except the raw floating point value is truncated to an integer (pixel) value. @DimensionPixelOffsetRes 注解用来检索dimension 资源。获得一个以整型的像素偏移量为最终值的dimension 。这个注解功能和@DimensionRes一样,除了原始浮点数被截断成一个整型(像素)值。

Usage example:用法:

@EActivity
public class MyActivity extends Activity {

  @DimensionPixelOffsetRes(R.string.fontsize)
  int fontSizeDimension;

  @DimensionPixelOffsetRes
  int fontsize;

}

@DimensionPixelSizeRes

The @DimensionPixelSizeRes annotation can be used to retrieve dimension resources. Retrieves the dimension to its final value as an integer pixel size. This is the same as @DimensionRes, except the raw floating point value is converted to an integer (pixel) value for use as a size. A size conversion involves rounding the base value, and ensuring that a non-zero base value is at least one pixel in size. @DimensionPixelSizeRes注解用来检索dimension 资源。获得一个以整型的像素大小为最终值的dimension 。这个注解功能和@DimensionRes一样,除了原始浮点数被截断成一个整型(像素)值作为大小值。大小转换涉及到基值舍入,确保一个非零的基值至少有1像素的大小。

Usage example:用法:

@EActivity
public class MyActivity extends Activity {

  @DimensionPixelSizeRes(R.string.fontsize)
  int fontSizeDimension;

  @DimensionPixelSizeRes
  int fontsize;

}

Other @XXXRes

Here is the list of other supported resource annotations: 这里是其他支持资源注解的列表:

  • @BooleanRes
  • @ColorStateListRes
  • @DrawableRes
  • @IntArrayRes
  • @IntegerRes
  • @LayoutRes
  • @MovieRes
  • @TextRes
  • @TextArrayRes
  • @StringArrayRes

AndroidAnnotations——Injecting Views视图注入

Injecting Views视图注入 Since AndroidAnnotations 1.0 @ViewById The @ViewById annota...

AndroidAnnotations 使用在library项目中出现无法找到R文件下资源索引的错误

AndroidAnnotations 使用在library项目中出现无法找到R文件下资源索引的错误 使用AndroidAnnotations(以下简称AA)已经有一段时间了,挺好用的,基本上完全可以...

Maven项目无法读取src/main/resources下properties资源文件

一般在Maven项目中,我们的.java文件都是保存在src/main/java包下,资源配置文件则在src/main/resources包下,具体目录如图所示: 如果我们需要读取classpat...

Maven项目无法读取src/main/resources下properties资源文件

一般在Maven项目中,我们的.Java文件都是保存在src/main/java包下,资源配置文件则在src/main/resources包下,具体目录如图所示: 如果我们需要读取classpat...

Android资源访问机制——获取Resources对象

我们知道在开发中,需要应用程序资源,如应用工程中assets和res目录下的图片,layout,values等,或者需要系统内置的资源。我们获取这些资源的入口对象都是Resources对象,并博文将分...

Spring MVC静态资源处理——<mvc:resources /> ||<mvc:default-servlet-handler />

优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以在web.xml中配置DispatcherServlet的请求映射,往往...

Android快速开发必备——依赖注入(DI)类库的选择ButterKnife,AndroidAnnotations,RoboGuice

现在做移动端开发的开发者,不管是Android和IOS,公司一般都是喜欢那种具备独立开发能力的人,因为APP项目相对较小,有时候一个人完全可以单独胜任一个项目。所以如果我们要能够具备独立开发的能力,快...

Project 2013项目管理教程(4):设置资源

任务的完成,离不开人力、物力、财力。这反映到Project中,就是资源,resource。一般的,在绑定任何和资源之前,首先要做的,是明确这个项目总共有哪些资源,这些资源的特性是什么。 首先...
  • tengh
  • tengh
  • 2014年05月29日 16:13
  • 2221

在Intellij Idea中使用androidannotations创建Android Project

介绍 AndroidAnnotations(AA)是在编译时的标注处理器,能简化安卓项目开发,通过标注来实现依赖注入(DI),是代码解耦。和另一个著名的项目RoboGuice不同的是,RoboGuic...

Project Server 2016新特性预览——资源需求

“资源需求”这个是Project Server 2016的新功能,名字叫“resource engagement,因为还没有正式的官方说明,我暂且叫”资源需求“吧。 根据我的经验,在研发型/项目型等...
  • accado
  • accado
  • 2015年09月06日 11:45
  • 5377
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:AndroidAnnotations——Injecting project Resources注入项目资源
举报原因:
原因补充:

(最多只允许输入30个字)