android 图库语言更新

中文模式下进入图库第一个界面来查看所有的相册集,按home键,设置手机语言为英文后,再回到图库中查看相册的名称仍然为中文。如何在手机更改语言后图库中相册的名称也进行语言更新

1、google default的设计是在创建各个album的构造函数中会根据资源类型来获取相册的名称,因此当图库暂停(执行了onPause)又再次进入时,语言并不会及时更新。
 
2、修改思路是:当再次进入图库时,根据相应资源类型重新获取相册的名称。具体修改方法如下:
(1) Gallery2\src\com\android\gallery3d\data\LocalMergeAlbum.javaLocalMergeAlbum.java中:
    @Override
    public String getName() {
        mName = mSources.length == 0 ? "" : mSources[0].getName(); 
        return mName;
    }
(2) Gallery2\src\com\android\gallery3d\data\LocalAlbum.java中:
第一处修改: 定义一个String变量:
    private String mTempName;
第二处修改:在LocalAlbum的构造方法中:
   public LocalAlbum(Path path, GalleryApp application, int bucketId, boolean isImage, String name) {
       ...
        mName = getLocalizedName(application.getResources(), bucketId, name);
        mTempName = mName;     ...
   }

第三处修改:添加方法refreshName()
    public void refreshName(String Name){
        mTempName = getLocalizedName(mApplication.getResources(),mBucketId,Name);
    }
第四处修改:getName()方法中:
    @Override
    public String getName() {
        
refresh(mTempName);
//        return mName;
        return mTempName; 
    }
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值