问题:
我需要在ViewPager中放置一个MapView
更多信息:
由于Mapview将是静态的(clickable =“false”),因此滚动或触摸事件不会有任何问题。 ViewPager将获得每一次触摸,就是这样。
我尝试了什么:
经过大量的Google搜索,我发现了这个很棒的库:https://github.com/inazaruk/map-fragment
我在寻呼机适配器中的代码:
@Override
public Fragment getItem(int position) {
return new MyMapFragment(itineraries);
}
和MyMapFragment中的构造函数:
public ArrayList<Itinerary> itineraries;
public MyMapFragment(ArrayList<Itinerary> itineraries) {
super();
this.itineraries = itineraries;
}
这是有效的,我很高兴结果和点击时的行为设置为假
我的问题:
由于我想画出行程,我完全陷入困境。
MapFragment没有任何Mapview功能。 我知道我可以编辑MyMapActivity类并使一切工作在那里,但是如何将ArrayList从Fragment发送到Activity?
目前,MapACtivity没有任何变量来绘制标记。所有这些信息都在MapFragment
中答案 0 :(得分:0)
据我所知,使用ItemizedOverlay<OverlayItem>
(只需将图片放在地图上绘制标记)。
public class MyViewActivity extends MapActivity {
....
OverlayItem myMarker;
MapView myMapView;
ItemizedOverlay<OverlayItem> mItemizedoverlay;
GeoPoint mCurrentPoint;
....
Drawable drawable = this.getResources().getDrawable(R.drawable.target);
mItemizedoverlay = new MyItemizedOverlay(drawable, this);
....
Address address = ...;
....
mCurrentPoint = new GeoPoint((int) (address.getLatitude() * 1E6), (int) (address.getLongitude() * 1E6));
myMarker = new OverlayItem(mCurrentPoint, "Submit", toSearch);
mItemizedoverlay.addOverlay(myMarker);
myMapView.getOverlays().add(mItemizedoverlay);
....