资源注解

作为Android开发程序员我们都知道Android中的资源都是以整型值表示的,并保存在R.java的文件中。若我们在资源传值的时候

要求传layout资源型的函数,如果传入String资源值不会再编译期间报错,只会在运行时执行到相关的代码的时候才会出现问题,如果我们使用资源型注解就可以防止这种情况的出现了。

在我们的support-annotation-xxx中,每种资源类型对应一个注解。

下面我们来看下都有哪些:

  • AnimatorRes:标记整型值是R.animator类型
  • AnimRes:标记整型值是R.amin类型
  • AnyRes:标记整型值是任何一种资源类型
  • ArrayRes:标记整型值是R.array类型
  • BoolRes:标记整型值是布尔类型
  • ColorRes:标记整型值是R.color类型
  • DrawableRes:标记整型值是R.drawable类型
  • FractionRes:标记整型值是fraction类型
  • IdRes:标记整型值是R.id(相信大家看到这应该知道如何使用了吧)
  • IntegerRes:标记整型值是R.interpolator
  • LayoutRes:.......R.layout
  • MenuRes:.........R.menu
  • PluralsRes:......R.plurals表示复数字符串类型
  • RawRes:..........R.raw
  • StringRes:........R.string
  • StyleableRes:.......R.styleable
  • StyleRes:..........R.style
  • TransitionRes:.......transition
  • XmlRes:.............R.xml

接下来我们来看个例子

@Override
public void setContentView(@LayoutRes int layoutResID) {
    getDelegate().setContentView(layoutResID);
}

大家应该很熟悉吧。

我们可以尝试改变下传入的参数试试

我们可以看到提示的是必须是layout的资源类型。利用这种注解方式设计出来的方法我们可以很清楚的知道所需要的什么类型的资源。有没有很棒,大家都来尝试下吧。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值