谷歌在多个片段android中映射api v2

时间:2013-03-26 17:16:12

标签: java android google-maps-android-api-2 android-maps-v2

我有一个FragmentActivity,这是一个标签栏。 在第一个选项卡中包含一个片段(Supportmapfragment)。 在第二个选项卡中,还包含一个片段(Supportmapfragment)。 当我切换到第二个选项卡时,我无法在第二个supportmapfragment中执行任何操作,但是当屏幕锁定然后解锁时已经可以执行。 在这个开关中我隐藏了第一个片段,因为我需要保持第一个片段的状态。

这是可能的,我该怎么做呢。 感谢。

1 个答案:

答案 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();
   }