返回时如何通知 Fragment Android

How to notify when come back Fragment Android

在我的例子中有两个片段,第一个是 FragmentA,第二个是 FragmentA 中的 FragmentB,当点击按钮调用时

activity.getSupportFragmentManager().beginTransaction().replace(R.id.frameLayoutGallery,myFragment).addToBackStack(null).commit();

然后显示 FragmentB ,在第二个 Fragment (FragmentB) 按钮点击调用后

int backStackId = getFragmentManager().getBackStackEntryAt(0).getId();
getFragmentManager().popBackStack(backStackId,FragmentManager.POP_BACK_STACK_INCLUSIVE);

之后它会显示 FragmentA 的内容,但是如何准确地捕捉到 isShow FragmentA ??

use 可以在你的情况下使用 backstack 监听器

public class MainActivity extends AppCompatActivity implements FragmentManager.OnBackStackChangedListener{

private FragmentManager fragmentManager;

@Override
protected void onPostCreate(@Nullable Bundle savedInstanceState) {
    super.onPostCreate(savedInstanceState);
    fragmentManager = getSupportFragmentManager();
    fragmentManager.addOnBackStackChangedListener(this);}

@Override
public void onBackStackChanged() {
    try {
        Fragment tempFragment = 
               fragmentManager.findFragmentById(R.id.view_container);
        if (tempFragment instanceof FragmentA)
            ((FragmentA) tempFragment).callThisMethod();
        else if (tempFragment instanceof FragmentB)
            //do something
    } catch (Exception e) {
        e.printStackTrace();
    }
}}

如果您想在 FragmentA 可见时执行某些操作,您可以覆盖 FragmentA

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

你也可以使用回调,看这个URL: enter link description here