您的位置:首页 > 移动开发 > Android开发

安卓源码--修改设置语言选择列表

2015-12-25 12:41 701 查看

查找过程

切换中文:setting下grep查找:语言和输入法

找到两个



自我感觉是第二个:



在manifest查到如下内容:



发现跳转到InputMethodAndLanguageSettings类,在packages\apps\Settings\src\com\android\settings\inputmethod\InputMethodAndLanguageSettings.java

在onCreate方法中有添加xml文件



在res目录下查找language_settings.xml



在src目录下查找LocalePicker类,发现在类中locale属性(也就是语言list)并不是在这里之中初始化,这时根据继承的父类LocalePicker再查找。



internal是在frameworks下的,所以很快就能找到父类的位置是在frameworks\base\core\java\com\android\internal\app\ LocalePicker.java的同名文件

连蒙带猜的方式,修改调试就会发现,语言列表是在 ArrayList localeList = new ArrayList(Arrays.asList(Resources.getSystem().getAssets().getLocales()));初始化

修改

将这句修改为

//ArrayList<String> localeList = new ArrayList<String>(Arrays.asList(
//        Resources.getSystem().getAssets().getLocales()));

ArrayList<String> localeList = new ArrayList<String>();
localeList.add("zh_CN");
localeList.add("en_US");


就修改了设置中的语言列表选项。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息