[英]create a class for painting markers in google maps api v2
我正在嘗試做一個用於在地圖上繪制少量標記的類。 我有問題,但是這個問題是Java問題,沒有Android問題。
我有一個主類,它實例化一個幫助器類,該幫助器類定義了繪制標記的方法:
private GoogleMap mapa = null;
private MostrarBares pintaBares; //helper class
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tapas);
mapa = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.mapaTapas)).getMap();
mapa.setOnMarkerClickListener(this);
mapa.setOnInfoWindowClickListener(this);
if(todos == true)
pintaBares.addTodosMap(mapa);
.....
現在,我編寫幫助程序類:
public class MostrarBares {
public void addNo11OnMap(GoogleMap map)
{
map.addMarker(new MarkerOptions()
.position(new LatLng(40.656106,-4.691306))
.title("El No.11 La Taberna")
.icon(BitmapDescriptorFactory.fromResource(R.drawable.no11)));
}
public void addTodosMap(GoogleMap map)
{
addNo11OnMap(map);
}
}
調用方法pintaBares.addTodosMap(mapa)時,它將引發空指針異常...問題是什么?
如果我想實現這些方法
@Override
public boolean onMarkerClick(Marker marker)
{
Toast.makeText(this, marker.getTitle(), Toast.LENGTH_LONG).show();
return(false);
}
@Override
public void onInfoWindowClick(Marker marker)
{
Toast.makeText(this, marker.getTitle(), Toast.LENGTH_LONG).show();
}
我應該在哪里實施這些? 在主班還是助手班?
非常感謝你。
更改
private MostrarBares pintaBares; //helper class
至
private MostrarBares pintaBares = new MostrarBares(); //helper class
您需要有一個可以在其上調用方法的對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.