У меня проблема с добавлением маркера из файла XML
это мой XML-файл
<PA>
<node>
<id>1</id>
<nama>SMP 8 Cimahi</nama>
<longitude>-6.894581</longitude>
<latitude>107.536519</latitude>
<kategori>sekolah</kategori>
</node>
я хочу проанализировать значение долготы и широты с помощью анализатора DOM
это часть моего кода в файле активности
try {
DocumentBuilderFactory DBF;
DocumentBuilder DB;
Document dom;
Element elt;
DBF = DocumentBuilderFactory.newInstance();
DB = DBF.newDocumentBuilder();
dom = DB.parse(new InputSource(getAssets().open("database.xml")));
elt = dom.getDocumentElement();
NodeList nodeList = elt.getElementsByTagName("node");
for (int i = 0; i < nodeList.getLength(); i++) {
Node node = nodeList.item(i);
Element fstElmnt = (Element) node;
NodeList longList = fstElmnt.getElementsByTagName("longitude");
Element longElement = (Element) longList.item(0);
longList = longElement.getChildNodes();
int lng = ((int) (Double.parseDouble(longList.item(0).getNodeValue()) *1E6));
NodeList latList = fstElmnt.getElementsByTagName("latitude");
Element latElement = (Element) latList.item(0);
latList = latElement.getChildNodes();
int lat = ((int) (Double.parseDouble(latList.item(0).getNodeValue()) *1E6));
List<Overlay> mapOverlays = mapView.getOverlays();
Drawable drawable = this.getResources().getDrawable(R.drawable.school);
markerpeta itemizedoverlay = new markerpeta(drawable,this);
GeoPoint point = new GeoPoint(lat,lng);
OverlayItem overlayitem = new OverlayItem(point, "", null);
itemizedoverlay.addOverlay(overlayitem);
mapOverlays.add(itemizedoverlay);
это мой маркерпета класс
public class markerpeta extends ItemizedOverlay {
private ArrayList<OverlayItem> mOverlay = new ArrayList<OverlayItem>();
private Context mContext;
//private peta peta;
public markerpeta(Drawable defaultMarker) {
super(boundCenterBottom(defaultMarker));
// TODO Auto-generated constructor stub
}
public markerpeta(Drawable defaultMarker, Context context) {
super(boundCenterBottom(defaultMarker));
mContext = context;
// TODO Auto-generated constructor stub
}
public void addOverlay(OverlayItem overlay){
mOverlay.add(overlay);
populate();
}
@Override
protected OverlayItem createItem(int i) {
// TODO Auto-generated method stub
return mOverlay.get(i);
}
@Override
public int size() {
// TODO Auto-generated method stub
return mOverlay.size();
}
@Override
protected boolean onTap(int index) {
OverlayItem item = mOverlay.get(index);
AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
dialog.setTitle(item.getTitle());
dialog.setMessage(item.getSnippet());
dialog.setPositiveButton("Close", new OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
arg0.dismiss();
}
});
dialog.show();
return true;
}
}
в этом коде нет ошибки, но в приложении нет маркера, кто-нибудь может мне помочь?
спасибо