片段内的MapFragment仅在旋转时有效

幼稚的

我对MapFragment有问题。问题是地图第一次打开片段时起作用,但是当我离开片段时(我有侧边栏菜单)然后回来-屏幕只是白色。但是,如果我旋转手机,地图就会显示出来。从调试中可以看到,这是我第一次输入或旋转时发生的,但是当我返回片段时则不会发生。

02-13 08:27:37.263: I/dalvikvm-heap(4553): Grow heap (frag case) to 23.106MB for 4194320-byte allocation
02-13 08:27:37.283: D/dalvikvm(4553): GC_FOR_ALLOC freed <1K, 18% free 23629K/28748K, paused 12ms, total 12ms
02-13 08:27:37.323: D/dalvikvm(4553): GC_FOR_ALLOC freed 4356K, 21% free 19534K/24648K, paused 13ms, total 13ms

这是片段onCreateView的Java代码:

public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    if (rootView != null) {
        Log.d("map","rootView != null");
        ViewGroup parent = (ViewGroup) rootView.getParent();
        if (parent != null)
            Log.d("map","parent != null");
            parent.removeView(rootView);
    }
    try {
        Log.d("map","inside try");
        rootView = inflater
                .inflate(R.layout.fragment_map, container, false);
        setupGmap();
    } catch (InflateException e) {
        Log.d("map","inside catch");
    }
    return rootView;
}

在XML中:

    <fragment
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    class="com.google.android.gms.maps.SupportMapFragment"
    android:name="pl.szymonmaslanka.qrapp.MapFragment" />

要增加清晰度,请执行以下操作:打开应用程序,单击菜单中的地图-地图正确显示->移至另一个菜单项->再次单击地图菜单-白屏而不是地图->旋转手机-神奇地出现了地图。

干杯

哈迪克

用这个

<fragment
        android:id="@+id/map"
        android:name="com.google.android.gms.maps.SupportMapFragment"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:clickable="true"
         />

并重写方法OnDestroyView并将此代码放在OnDestroyView()上

public void onDestroyView() 
 {
    super.onDestroyView(); 
    Fragment fragment = (getFragmentManager().findFragmentById(R.id.map));  
    FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
    ft.remove(fragment);
    ft.commit();
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

VideoView 仅在我旋转屏幕时有效

来自分类Dev

拖放:仅在刷新时有效

来自分类Dev

提取仅在刷新时有效

来自分类Dev

仅在调试javascript时有效

来自分类Dev

Flexslider仅在我旋转手机时有效

来自分类Dev

显示/阻止仅在div位于表内时有效

来自分类Dev

显示/阻止仅在div位于表内时有效

来自分类Dev

尝试在按钮单击时旋转div,但仅在第二次单击时有效(使用Javascript)

来自分类Dev

将顶点位置从顶点传递到片段着色器-仅在使用Nsight进行调试时有效

来自分类Dev

WKNavigationDelegate仅在设置为self时有效

来自分类Dev

AngularJS代码仅在ng-app =“”时有效

来自分类Dev

EventBus仅在放入Handler时有效

来自分类Dev

灰烬加载模板仅在页面刷新时有效

来自分类Dev

CSS:hover仅在鼠标移动时有效

来自分类Dev

流星仅在以调试模式部署时有效

来自分类Dev

推送通知仅在注销时有效

来自分类Dev

图像RotateFlip仅在直接调用时有效

来自分类Dev

DoCmd.OutputTo仅在中断时有效

来自分类Dev

不透明褪色仅在延迟时有效

来自分类Dev

状态还原仅在连接到Xcode时有效

来自分类Dev

Vuetify输入颜色属性仅在聚焦时有效

来自分类Dev

.on('click',function(){})仅在首次点击时有效

来自分类Dev

scrollTop按钮仅在首次点击时有效

来自分类Dev

按钮功能仅在首次单击时有效

来自分类Dev

jQuery Ajax调用仅在首页加载时有效

来自分类Dev

该程序仅在声明整数时有效

来自分类Dev

图像RotateFlip仅在直接调用时有效

来自分类Dev

VBS文件仅在双击时有效

来自分类Dev

拖放:拖放仅在刷新时有效