码迷,mamicode.com
首页 > 移动开发 > 详细

android 中的一些资源注解,让编译器帮你检查代码

时间:2016-06-07 12:42:06      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:

android 中的一些资源注解,让编译器帮你检查代码

写方便的时候可以用注解来声明一些参数,以明确的指示参数的类型,让代码更安全。我们看到,在android源代码里大量使用了注解。我整理了一些注解如下:

 

@NonNull  告诉编译器,这个参数是非空的,编译器会帮你做出检查。

示例:

@NonNull
public static Snackbar make(@NonNull View view, @StringRes int resId, @Duration int duration) {
    return make(view, view.getResources().getText(resId), duration);
}

 

 

@Nullable 声明参数是可能为空的,编译器会帮你做出检查

示例:

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {}

  

@IdRes   声明这个 int 参数是个 id,编译器会帮你做出检查

public View findViewById(@IdRes int id) {
    return getDelegate().findViewById(id);
}

  

@StringRes  声明这个 int 参数 是一个字符串资源,编译器会帮你做出检查

示例:

@NonNull
public Snackbar setAction(@StringRes int resId, View.OnClickListener listener) {
    return setAction(mContext.getText(resId), listener);
}

 

@StyleRes 声明参数是 style 类型,编译器会帮你做出检查

@Override
public void setTheme(@StyleRes final int resid) {}

 

@LayoutRes 声明参数是个 layout 类型,,编译器会帮你做出检查

示例:

public void setContentView(@LayoutRes int layoutResID)

 

类似的有很多,看名字就知道干什么用的

@DimenRes  @DrawableRes  @RawRes  @ColorRes  @XmlRes

@BoolRes   @IntegerRes @StyleableRes

  

另: 

    @Keep  声明这个方法不被混淆

 

 

 

 

android 中的一些资源注解,让编译器帮你检查代码

标签:

原文地址:http://www.cnblogs.com/vir56k/p/5566466.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!