mac
2023-12-06 dd4ddc2c1279157bd87c1b9e1cf6d63aa3466af4
app/src/main/java/com/hdl/photovoltaic/utils/LocalManageUtil.java
@@ -1,7 +1,6 @@
package com.hdl.photovoltaic.utils;
import android.content.Context;
import android.content.Intent;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.os.Build;
@@ -10,12 +9,19 @@
import android.util.DisplayMetrics;
import com.hdl.photovoltaic.ui.adapter.LanguageAdapter;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
/**
 * 多语言适配
 */
public class LocalManageUtil {
    public static final String zh = "zh";//中文
    public static final String en = "en";//英文
//    private static Locale mLocale;
@@ -33,25 +39,6 @@
        }
        return locale;
    }
//
//    public static Context setLocal(Context context) {
//        return updateResources(context, mLocale);
//    }
//
//    public static Context updateResources(Context context, Locale locale) {
//        if (locale == null) {
//            return context;
//        }
//        LocalManageUtil.mLocale = locale;
//        Locale.setDefault(locale);
//
//        Resources res = context.getResources();
//        Configuration config = new Configuration(res.getConfiguration());
//        config.setLocale(locale);
//        context = context.createConfigurationContext(config);
//        return context;
//    }
    /**
     * 应用内切换语言
@@ -125,7 +112,7 @@
     * @param context 上下文
     */
    private static void setCurrLanguageMode(Context context) {
        String language = SharedPreUtils.getSharedPreferencesKey("languege", context);
        String language = SharedPreUtils.getSharedPreferencesKey("languege");
        Locale local = getLocale(language);
        Resources res = context.getResources();
        DisplayMetrics dm = res.getDisplayMetrics();
@@ -134,5 +121,39 @@
        res.updateConfiguration(conf, dm);
    }
    /**
     * 获取语言列表
     *
     * @return 返回语言列表
     */
    public static List<LanguageAdapter.ItemData> getLanguageList() {
        List<LanguageAdapter.ItemData> list = new ArrayList<>();
        LanguageAdapter.ItemData zh = new LanguageAdapter.ItemData();
        zh.setState(false);
        zh.setTitle("简体中文");
        zh.setLanguage(LocalManageUtil.zh);
        list.add(zh);
        LanguageAdapter.ItemData en = new LanguageAdapter.ItemData();
        en.setState(false);
        en.setTitle("English");
        en.setLanguage(LocalManageUtil.en);
        list.add(en);
        return list;
    }
    public static LanguageAdapter.ItemData getLanguage(String languageStr) {
        List<LanguageAdapter.ItemData> list = getLanguageList();
        for (int i = 0; i < list.size(); i++) {
            if (list.get(i).getLanguage().equals(languageStr)) {
                return list.get(i);
            }
        }
        return new LanguageAdapter.ItemData();
    }
}