美文网首页Android 技术精选Android开发经验谈移动开发
Android 中的一些资源注解,让编译器帮你检查代码

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

作者: 张云飞Vir | 来源:发表于2016-06-23 13:37 被阅读249次

写方便的时候可以用注解来声明一些参数,以明确的指示参数的类型,让代码更安全。我们看到,在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 中的一些资源注解,让编译器帮你检查代码

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

  • Java的注解Annotation

    注解使代码简单易读,提供编译器类型检查,并且可以通过注解构造代码处理工具。 日常开发中我们会遇到很多注解,如@Re...

  • Android 注解检测、限制操作

    Android 开发中资源常量限制注解: Android开发中权限申请提示注解: 数值常量注解:

  • 2021-07-27 注解与泛型

    注解不属于程序本身,注释有多种用途,其中包括:编译前:为编译器提供编译检查的依据,辅助检查代码错误或抑制检查异常;...

  • [译] Java注解

    原地址注解允许我们在源码中添加一些元信息。它自JDK5 引入,对于代码中的操作并没有直接的影响。 注解用途 编译器...

  • Java注解 记录

    java注解用来描述java代码中的元信息,通常情况下,注解不会影响代码执行。 java内置了三种编译器指令: -...

  • java注解与反射,泛型与反射

    一、反射与注解 内置注解 java内置了3种注解,用来为编译器提供检查。 自定义注解 元注解 元注解是用来修饰注解...

  • 注解

    注解的定义 注解(Annotation)就是一种标签,可以插入到源代码中,我们的编译器可以对他们进行逻辑判断,或者...

  • cppcheck的使用

    1、所谓的静态检查,是指检查一些代码中可能存在的潜在错误,如内存泄漏、数组访问越界等。这些错误一般编译器并不会检查...

  • 2020-08-10注解

    概念 概述:①JDK1.5之后的新特性②说明程序的③使用注解:@注解名称 作用:①编译检查:通过代码里标识的注解让...

网友评论

  • 纤沫:这个不错啊,谢谢分享

本文标题:Android 中的一些资源注解,让编译器帮你检查代码

本文链接:https://www.haomeiwen.com/subject/leondttx.html