小编Jos*_*los的帖子

为什么在解除从Fragment启动的DialogFragment后,片段的onResume方法从未被触发?

我将尽可能简短地解释我的问题.

我有一个名为FragmentA的片段,它在单击特定按钮后显示DialogFragment.

public class FragmentA extends Fragment implements OnClickListener {

    ...

    @Override
    public void OnClick(View v) {
        if (v == dialogButton) {
            showDialog();
        }
    }

    public void showDialog() {
        String diagName = getResources().getString(R.string.dialog_title);
        MyDialog myDialog = MyDialog.newInstance(getFragmentAValue());
        myDialog.show(getFragmentManager(), diagName);
    }
}

public class MyDialog extends DialogFragment implements OnClickListener {
    ...
    @Override
    public void onClick(View view) {
        if (view == acceptButton) {
            ...
        }
        else if (view == cancelButton) {
            ...
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

对话框显示没有任何问题.但我的问题在于myDialog被解散后onResume(),FragmentA中的方法从未被调用,并且显示了FragmentA,你可以毫无问题地与它进行交互.

public class FragmentA extends …
Run Code Online (Sandbox Code Playgroud)

android onresume dismiss android-fragments android-dialogfragment

6
推荐指数
1
解决办法
5022
查看次数