【问题标题】:Cannot resolve method 'recreate()' in fragment无法解析片段中的方法“recreate()”
【发布时间】:2019-09-10 09:14:26
【问题描述】:

recreate() 无法在片段活动中解决。

mBuilder.setSingleChoiceItems(listItems, -1, new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int i) {


                if( i==0 )
                {setLocale("per");
                    recreate();}


                if( i==1 )
                {setLocale("en");
                    recreate();}

            dialog.dismiss();
        }
    });

我在片段活动中使用这种方法如下:

public class SettingsFragment extends Fragment implements FragmentArguments {

【问题讨论】:

  • recreate()Activity 中的方法,而不是Fragment。我认为您可能会混淆和/或混淆这些事情。
  • 我知道但是片段中可以使用哪种方法
  • 如果您想重新创建活动,请调用 getActivity().recreate()

标签: android android-fragments recreate


【解决方案1】:

片段中没有重新创建方法。它是从 Activity 继承的方法。如果你想从片段中重新创建 Activity,你可以调用

getActivity().recreate();

如果您只想重新加载 Fragment,您可以像这样分离 Fragment,然后再次附加它。

getSupportFragmentManager()
    .beginTransaction()
    .detach(YourFragment.this)
    .attach(YourFragment.this)
    .commit();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-29
    • 1970-01-01
    • 2015-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-20
    相关资源
    最近更新 更多