【发布时间】:2014-01-16 05:34:31
【问题描述】:
我有一个 FragmentDialog 出现在我想暂时隐藏的 GoogleMap 前面,以便用户可以在背景上选择某些内容,然后再次将其带回前面。常规 hide()/show() 不起作用,因为它不是“嵌入”片段,但无法隐藏 FragmentDialog。我尝试使用dismiss(),然后使用相同的实例使用show(),因为这应该重新创建对话框,但由于某种原因它似乎不起作用。这是我的代码:
if (onHoldDialog != null) {
onHoldDialog.setPointText(mapMarker.getTitle());
FragmentTransaction ft = getFragmentManager().beginTransaction();
Fragment prev = getFragmentManager().findFragmentByTag("dialog");
if (prev != null) {
ft.remove(prev);
}
ft.addToBackStack(null);
onHoldDialog.show(ft, "dialog");
}
我的方法错了吗? FragmentDialog 实例是否只是“一次性”的?我可以将其复制到另一个实例吗?
【问题讨论】:
-
我知道这是一篇很老的帖子,但是在执行了dismiss() 然后是 show() 之后我也遇到了问题。我的问题是 UI 是从原始对话框中保留的。不知道为什么,只有一个实例,我可以看到我正在设置对新图像数据显示为可见的视图。
标签: android android-fragments android-dialogfragment