Java 完全刷新片段
我有一个片段,我需要完全刷新/重新实例化它。 我所说的“刷新”是指重新创建片段。 我曾尝试将Java 完全刷新片段,java,android,Java,Android,我有一个片段,我需要完全刷新/重新实例化它。 我所说的“刷新”是指重新创建片段。 我曾尝试将FragmentManager与detach()方法一起使用,但没有效果。即使片段已刷新,该片段的所有EditText子级仍将输入其值 有没有办法达到这个结果?如果只有编辑文本,请创建一个方法,将所有编辑文本设置为空字符串,即et(编辑文本对象) 将以下代码放入需要刷新的片段中 FragmentTransaction ft = getFragmentManager().beginTransaction()
FragmentManager
与detach()
方法一起使用,但没有效果。即使片段已刷新,该片段的所有EditText
子级仍将输入其值
有没有办法达到这个结果?如果只有编辑文本,请创建一个方法,将所有编辑文本设置为空字符串,即et(编辑文本对象)
将以下代码放入需要刷新的片段中
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.detach(this).attach(this).commit();
根据您的代码使用片段管理器(如果它是旧版本,那么这将是supportFragmentManager)将此方法放入并调用到您的片段中
private void reloadFragment(){
Fragment frg = getActivity().getSupportFragmentManager().findFragmentByTag(ReceiptFragment.TAG);
final FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
ft.detach(frg);
ft.attach(frg);
ft.commit();
}
可能重复的
private void reloadFragment(){
Fragment frg = getActivity().getSupportFragmentManager().findFragmentByTag(ReceiptFragment.TAG);
final FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
ft.detach(frg);
ft.attach(frg);
ft.commit();
}