我有一个 FragmentActivity,这是一个标签栏。在第一个选项卡中包含一个片段(Supportmapfragment)。在第二个选项卡中,还包含一个片段(Supportmapfragment)。当我切换到第二个选项卡时,我无法在第二个 supportmapfragment 中做任何事情,但是当屏幕锁定然后解锁时已经可以做到。在这个开关中,我隐藏了第一个片段,因为我需要保持第一个片段的状态。
这是可能的,我该怎么做。谢谢。
我有一个 FragmentActivity,这是一个标签栏。在第一个选项卡中包含一个片段(Supportmapfragment)。在第二个选项卡中,还包含一个片段(Supportmapfragment)。当我切换到第二个选项卡时,我无法在第二个 supportmapfragment 中做任何事情,但是当屏幕锁定然后解锁时已经可以做到。在这个开关中,我隐藏了第一个片段,因为我需要保持第一个片段的状态。
这是可能的,我该怎么做。谢谢。
我尝试的解决方案是在不同选项卡的活动之间切换时,使用 removeView() 在 onpause() 上删除地图,然后在 onResume() 上使用 addView() 再次将其添加回来。
地图在相对布局中膨胀,并从该布局本身添加和删除。
在 onCreate() :
setContentView(R.layout.rel_layout);
rel = (RelativeLayout)findViewById(R.id.rel);
LayoutInflater inflater = LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.map_layout, null);
rel.addView(view);
onPause() 和 onResume() 方法:
@Override
protected void onPause()
{
rel.removeView(view);
super.onPause();
}
@Override
protected void onResume()
{
if (view.getParent()!=rel)
rel.addView(view);
super.onResume();
}