我有一个FragmentActivity,这是一个标签栏。 在第一个选项卡中包含一个片段(Supportmapfragment)。 在第二个选项卡中,还包含一个片段(Supportmapfragment)。 当我切换到第二个选项卡时,我无法在第二个supportmapfragment中执行任何操作,但是当屏幕锁定然后解锁时已经可以执行。 在这个开关中我隐藏了第一个片段,因为我需要保持第一个片段的状态。
这是可能的,我该怎么做呢。 感谢。
答案 0 :(得分:1)
我尝试的解决方案是在不同选项卡的活动之间切换时,使用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();
}