我重写了MyLocationOverlay事件发现.
@Override
public boolean onTouchEvent(MotionEvent arg0, MapView arg1) {
return super.onTouchEvent(arg0, arg1);
}此方法只有在arg0=1(TouchUp)的时候会刷新界面,arg0=2(Touching)的时候不会刷新界面,此时移动后的界面就是灰色的,就算是之前已经加载后的界面,再Touching回来也是灰色,只有在TouchUp的时候 才会加载页面...此问题 有没有其他人也遇到过? 你们是怎么解决的呢?

解决方案 »

  1.   

    MotionEvent有这几种:MotionEvent.ACTION_DOWN:
    MotionEvent.ACTION_MOVE:
    MotionEvent.ACTION_UP:你可以在super.onTouchEvent之前判断是否为 arg0是否为MotionEvent.ACTION_MOVE,如果是的话,
    将arg0的值改为MotionEvent.ACTION_UP,然后再调用super.onTouchEvent(arg0, arg1);
      

  2.   

    另外,这不是Bug问题,别人提供了接口,在这个基础上如何延伸扩展是自己程序的事情。 
      

  3.   

    首先谢谢你的思路,,但是此方法不行...
    MotionEvent.ACTION_DOWN:
    MotionEvent.ACTION_MOVE:
    MotionEvent.ACTION_UP:
    3种TouchAction都有自己的处理方式.. 所以在MotionEvent.ACTION_MOVE的时候 先move在up此办法行不通. 效果一样...说明一个问题, 地图切换的流程是在up开始down结束,和move没有关系...
    我找了一早上的onTouchEvent源码方法体都没有找到- -..悲催... 
    找到了源码才知道如何修改- -...
      

  4.   

    百度地图的sdk和高版本的adt不兼容,去掉AndroidManifest。xml里的android:targetSdkVersion就可以自动刷新了。