是否可以刷新片段的视图

我以编程方式更改了我的应用程序locale ,如下所示:

 Resources res = context.getResources(); DisplayMetrics dm = res.getDisplayMetrics(); android.content.res.Configuration conf = res.getConfiguration(); conf.locale = new Locale("cn"); res.updateConfiguration(conf, dm); 

在此之后,我想刷新我目前显示的片段的视图以显示新的区域设置。

所以,我首先得到当前的片段(这是最新的一个在backstack ):

 BackStackEntry latestEntry=fragMgr.getBackStackEntryAt(fragMgr.getBackStackEntryCount()-1); String str=latestEntry.getName(); Fragment fragment=fragMgr.findFragmentByTag(str); 

当我得到当前显示的片段后,我想刷新它的视图 ,但怎么做呢? Android中是否可以刷新片段的视图?

  • setContentView和LayoutInflater之间的区别
  • 如何在ConstraintLayout中的两个视图中的最低位置?
  • ViewStub引发错误,同时有条件地膨胀多个布局
  • 一次closures所有最近打开/正在运行的应用程序button-android
  • 我怎样才能从EditText中删除所有的默认填充?
  • 如何使用6个button创build布局,如窗口瓷砖
  • 滚动ScrollView中的EditText
  • 约束布局,而不是相对布局
  • 您可以简单地分离和附加片段如下

      Fragment currentFragment = getFragmentManager().findFragmentByTag("FRAGMENT"); FragmentTransaction fragTransaction = getFragmentManager().beginTransaction(); fragTransaction.detach(currentFragment); fragTransaction.attach(currentFragment); fragTransaction.commit(); 

    这将刷新视图和区域将会改变

    您可以创build一个侦听器,在语言环境发生更改时将会调用该侦听器。 这将删除碎片,并重新添加碎片。 你的新语言环境应该被拿起来。