保存的实例束在DialogFragment的onCreateView中为空

问题描述 投票:2回答:2

我在显示警告对话框之前保存键值对。但是,对话框的onCreateDialog()用空包调用。将捆绑包传递给对话框,我还需要做些其他事情吗?

MyDialogFragment testFrag= new MyDialogFragment();
Bundle args = new Bundle();
args.putString("car-type", "Audi");
testFrag.setArguments(args);
testFrag.show(getFragmentManager(), "info");
android fragment bundle
2个回答
9
投票

您可以通过DialogFragment.getArguments()检索参数。

savedInstanceState仅在发生配置更改时使用。它正在onSaveInstanceState(Bundle outState)中填充,然后传递到DialogFragmentonCreate()中的新onCreateView()。片段或活动的第一次创建是null


3
投票

使用setArguments检索getArguments包。

savedInstanceState包是onCreateDialog方法的参数,是在onSaveInstanceState中填充的包。

这两个完全无关。

© www.soinside.com 2019 - 2024. All rights reserved.