【问题标题】:Force A MapView To Refresh?强制 MapView 刷新?
【发布时间】:2012-09-27 21:52:16
【问题描述】:

我现在有一个大问题,我真的需要一些帮助,我花了一个星期的时间,但失败了。

  1. 创建一个 MapActivity (A)
  2. 从 (A) 开始另一个活动 (B)
  3. 从 (B) 开始另一个 MapActivity (C)
  4. 返回 (C) -> (B)
  5. 返回 (B) -> (A)

第一个 MapActivity (A) 是死亡,无论我做什么都不要重绘(放大、缩小、移动)

如何强制 MapActivity (A) 再次工作?

任何帮助将不胜感激,

提前致谢

【问题讨论】:

    标签: android refresh android-mapview


    【解决方案1】:

    您尝试过 mapview.invalidate() 吗?

    【讨论】:

    • 我试过 mMapView.invalidate(); mmapView.refreshDrawableState(); mmapView.requestLayout(); mmapView.forceLayout();
    【解决方案2】:

    是的,我也面临这个问题,尝试在一些布局中使用 MapView,比如 MapLayout。并在 onPause() 中从 MapLayout 中移除 MapView,并在 onResume() 中将 MapView 添加到 MapLayout 中。

    示例:

    @Override
    public void onResume(){
        super.onResume();
        if(mMapLayout.indexOfChild(mMapView)==-1) mMapLayout.addView(mMapView);
    }
    
    @Override
    public void onPause(){
        super.onPause();
        if(mMapLayout.indexOfChild(mMapView)!=-1) mMapLayout.removeView(mMapView);
    }
    

    相当老的线程,但我浪费了 3-4 小时来解决这个问题。我希望这个答案对其他人有帮助。

    【讨论】:

      【解决方案3】:

      没有办法做到这一点 2 MapActivity不能同时活 只是做其他解决方案,杀死A然后在回来时创建A

      【讨论】:

        猜你喜欢
        • 2010-12-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-10-22
        • 1970-01-01
        相关资源
        最近更新 更多