android 语言设置(2)

来源:未知 责任编辑:责任编辑 发表时间:2013-12-01 14:14 点击:
  • DisplayMetrics dm = res.getDisplayMetrics();  
  • res.updateConfiguration(config, dm);  
  • 前两种方法的原理即在应用里实现“选择语言”。通过查看源码,其核心代码为:


    view plaincopy to clipboardprint?IActivityManager iActMag = ActivityManagerNative.getDefault(); 
    try { 
        Configuration config = iActMag.getConfiguration(); 
        config.locale = locale; 
        // 此处需要声明权限:android.permission.CHANGE_CONFIGURATION  
        // 会重新调用 onCreate();  
        iActMag.updateConfiguration(config); 
    } catch (RemoteException e) { 
        e.printStackTrace(); 

    PS:感谢 曾阳 的帮助。 
                    IActivityManager iActMag = ActivityManagerNative.getDefault();
                    try {
                            Configuration config = iActMag.getConfiguration();
                            config.locale = locale;
                            // 此处需要声明权限:android.permission.CHANGE_CONFIGURATION
                            // 会重新调用 onCreate();
                            iActMag.updateConfiguration(config);
                    } catch (RemoteException e) {
                            e.printStackTrace();
                    }
                    PS:感谢 曾阳 的帮助。    可以发现IActivityManager与ActivityManagerNative都是非公开类。如何调用?第一种是API欺骗,第二种是使用Java反射机制。

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • Android 完全退出程序
    • 原创:Android应用开发-Andorid歌词秀,含源码
    • android 屏幕保护
    • Android手机软件汉化教程---第四课 dex文件汉化
    • 众多Android 开源项目推荐,给力工作给力学习
    • Android Audio代码分析4
    • Android得到已安装的应用程序信息!
    • Android开发者指南(29) —— USB Host and Accessory
    • Android成长的幕后推手:工程师鲁宾
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1