3
我有一個singleTask活動和我的應用程序supportsRtl,所以當我嘗試更改語言時,此SingleTask活動不受影響,因此我需要重新啓動它,任何幫助?重新啓動一個任務活動
我有一個singleTask活動和我的應用程序supportsRtl,所以當我嘗試更改語言時,此SingleTask活動不受影響,因此我需要重新啓動它,任何幫助?重新啓動一個任務活動
如果您使用API 11以上,你可以使用:
Activity.recreate()
如果需要支持較低API使用此再次調用您的活動:
Intent i = getIntent();
finish();
startActivity(i);
如果我們使用這種方法我們不需要重新開始活動
用以下代碼更改您的應用語言:
public static void notifyForLanguageChange(Context context, String languageCode) {
Resources res = context.getResources();
// Change locale settings in the app.
DisplayMetrics dm = res.getDisplayMetrics();
android.content.res.Configuration conf = res.getConfiguration();
conf.locale = new Locale(languageCode.toLowerCase());
res.updateConfiguration(conf, dm);
}
,之後改變與(即重新加載字符串資源)
public void setLabels() {
txtFirstView.setText(R.string.first);
txtSecondView.setText(R.string.second);
btnThirdView.setText(R.string.third);
}
屏幕標籤