Android:语言更改后刷新当前片段

时间:2016-06-24 22:01:01

标签: java android android-fragments layout refresh

所以我的MainActivity有一个带有一组片段的导航抽屉。

在导航栏的顶部,我有2个代表语言的标志。如果用户点击某种语言,该应用会更改整个应用的语言。

一切运作顺利(活动刷新,导航抽屉和所有片段都被翻译)但是打开的片段并不是。这意味着用户需要单击导航抽屉并再次选择片段以查看其翻译。

enter image description here

如何刷新用户所在的当前片段?

1 个答案:

答案 0 :(得分:2)

提交时,在片段中添加标记:

fragmentManager.beginTransaction().replace(R.id.your_id, fragment, "Your_Fragment_TAG").commitAllowingStateLoss();

然后您可以分离并重新附加您的片段以进行刷新:

// Reload current fragment
Fragment frg = null;
frg = getSupportFragmentManager().findFragmentByTag("Your_Fragment_TAG");
final FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.detach(frg);
ft.attach(frg);
ft.commit();