【问题标题】:Android: get local resources in enumerate classAndroid:在枚举类中获取本地资源
【发布时间】:2020-09-27 20:33:13
【问题描述】:

我正在用 java 代码编写一个 android 应用程序。该应用程序可以支持英语和意大利语。在应用程序内部,有一个从枚举类中获取其值的微调器,如下所示:

public enum ElementTypesEnum {
    MEET("Meet"),
    CEREAL("Cereal"),
    FISH("Fish"),
    OTHER("Other");

    private String elementType;

    ElementTypesEnum(String elementType) {
        this.elementType = elementType;
    }

    public String getElementType() {
        return elementType;
    }
}

我想用本地字符串资源文件 (R.string.value_1) 中包含的值初始化枚举值。在这个类中,我没有资源文件的实例,因为我没有 Context 的实例。我怎样才能做到这一点?提前谢谢你,马可

【问题讨论】:

    标签: java android resources


    【解决方案1】:

    使用资源 ID,然后在填充时使用微调器的上下文获取字符串。

    public enum ElementTypesEnum {
        MEAT(R.string.meat),
        CEREAL(R.string.cereal),
        FISH(R.string.fish),
        OTHER(R.string.other);
    
        @StringRes
        private int elementType;
    
        ElementTypesEnum(@StringRes int elementType) {
            this.elementType = elementType;
        }
    
        public int getElementType() {
            return elementType;
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多