You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
1.8 KiB
66 lines
1.8 KiB
5 years ago
|
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);
|
||
|
}
|
||
|
|
||
|
|
||
|
}
|