package com.community.pocket.util; import android.content.Context; import android.content.res.Configuration; import com.github.jokar.multilanguages.library.MultiLanguage; import java.util.Locale; //界面语言管理工具类 public class LocalManageUtil { private static final String TAG = "LocalManageUtil"; /** * 获取系统的locale * * @return Locale对象 */ private static Locale getSystemLocale(Context context) { return SPUtil.getInstance(context).getSystemCurrentLocal(); } public static String getSelectLanguage(Context context) { int type = SPUtil.getInstance(context).getSelectLanguage(); return context.getString(LocaleType.getLocale(type).getResId()); } /** * 获取选择的语言设置 * * @param context 应用上下文 */ static Locale getSetLanguageLocale(Context context) { int type = SPUtil.getInstance(context).getSelectLanguage(); if (type == 0) { return getSystemLocale(context); } else { return LocaleType.getLocale(type).getLocale(); } } static void saveSystemCurrentLanguage(Context context) { SPUtil.getInstance(context).setSystemCurrentLocal(MultiLanguage.getSystemLocal(context)); } /** * 保存系统语言 * * @param context 应用上下文 * @param newConfig 刷新系统配置 */ static void saveSystemCurrentLanguage(Context context, Configuration newConfig) { SPUtil.getInstance(context).setSystemCurrentLocal(MultiLanguage.getSystemLocal(newConfig)); } public static void saveSelectLanguage(Context context, int select) { SPUtil.getInstance(context).saveLanguage(select); MultiLanguage.setApplicationLanguage(context); } }