首页 > 其他分享 >android 图库语言更新

android 图库语言更新

时间:2023-03-11 15:05:11浏览次数:39  
标签:String 相册 mTempName mName getName 图库 更新 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;
}



标签:String,相册,mTempName,mName,getName,图库,更新,android
From: https://blog.51cto.com/u_15170706/6114568

相关文章