gpt4 book ai didi

Android - 如何在自己的 onResume 中更新 fragment ?

转载 作者:行者123 更新时间:2023-11-29 14:12:28 24 4
gpt4 key购买 nike

我有一个 fragment ,我们称它为FragmentA。在 FragmentA 中,我启动了一个 Activity,它更改了我在 FragmentA 中显示的数据,一旦我完成了我启动的 Activity,我就返回到 FragmentA。问题是,发生这种情况时,FragmentA 仍然显示旧数据。因此,我尝试在 onResume 中用自身的新实例替换 FragmentA,但无济于事,因为现在 FragmentA 导致整个 viewpager(它属于)卡住。

这是我的代码:

@Override
public void onResume() {
super.onResume();

FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.detach(this);
fragmentTransaction.attach(this);
fragmentTransaction.commit();

}

我还尝试用这段代码替换 FragmentA:

@Override
public void onResume() {

FragmentTransaction fragmentTransaction = getActivity().getSupportFragmentManager().beginTransaction();

FragmentA fragment = FragmentA.newInstance();
fragmentTransaction.replace(ID?, fragment);

fragmentTransaction.commit();

}

但我不知道如何取回“ID”?在 fragmentTransaction.replace 中使用。我是 Android 的新手,我仍然不确定如何做某些事情。提前谢谢你。

最佳答案

假设 FragmentA 由 ActivityA 启动。现在,从 FragmentA 开始 ActivityB可以在FragmentA里面的方法中使用startActivityForResult来启动ActivityB和接收数据:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
}

在这里,您可以根据需要更新 FragmentA。

关于Android - 如何在自己的 onResume 中更新 fragment ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49531209/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com