摩托车yes论坛(Android Studio限制常量参数)

我们对外提供一个需要传递int常量的方法,大部分时候是不希望调用者瞎传值进来的,虽然可以使用枚举进行限制,但是有些时候就是希望得到的值为int。列如以下Android代码:

摩托车yes论坛
摩托车yes论坛
LinearLayout mMenuGroup = new LinearLayout(getContext());
mMenuGroup.setOrientation(LinearLayout.HORIZONTAL);

setOrientation虽然是int参数方法,但是只能使用LinearLayout.HORIZONTAL或者LinearLayout.VERTICAL否则Android Studio会进行报错。通过简单分析我们可以按照以下方式实现:

//导入相关类
import android.support.annotation.IntDef;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

public class ClassName {
...
    @IntDef({LEVEL_0, LEVEL_1, LEVEL_2, LEVEL_3, LEVEL_4, LEVEL_5})
    @Retention(RetentionPolicy.SOURCE)
    public @interface Level {
    }
//定义相关常量
    public final static int LEVEL_0 = 0;
    public final static int LEVEL_1 = 1;
    public final static int LEVEL_2 = 2;
    public final static int LEVEL_3 = 3;
    public final static int LEVEL_4 = 4;
    public final static int LEVEL_5 = 5;
...
  /**
     * 定义相关方法
     */
    protected void setLevel(@Level int level) {
    }
}

我们在调用setLevel后就只能使用我们定义的值的,如果不在定义范围内的值就会有相应的错误提示。

Android Studio限制常量参数最先出现在狐狸之家。

本文《摩托车yes论坛(Android Studio限制常量参数)》由网赚联盟( wangzhuan.org.cn )整理或原创,感谢您的阅读。

随机文章

SEO教程
友情链接交换
搜素引擎算法
网站内容优化
站长导航
友情链接交换
搜素引擎算法
关键词排名优化

百度搜索“网赚联盟”即可找到本站,微信搜索“小小课堂网”关注小小课堂网公众号。网赚联盟( wangzhuan.org.cn )欢迎用户投稿,发布者:用户投稿,文章版权归作者所有,投稿文章不代表网赚联盟立场,中二少年发布为网赚联盟原创文章,转载请注明出处:https://wangzhuan.org.cn/25003.html