0
Google지도 뷰에 마커를 넣는 비동기 메서드가 있습니다. 아래의 코드에서 객체 오버레이를 onProgressUpdate 메소드에 전달하려고합니다. itemizedOverlay.addOverlay가 배열을 기대하지 않는다는 컴파일러 오류가 발생합니다. overlayitem이 배열 (즉, overlayitem [])로 전달되는 이유를 혼동합니다. 누구든지 도와 줄 수 있습니까?onProgressUpdate 인수 전달 문제 - 비동기 메서드
class OverlayLoader extends AsyncTask<Void, OverlayItem, Void> {
List<Overlay> mapOverlays;
@Override
protected void onPreExecute() {
mapOverlays = mapView.getOverlays();
}
@Override
protected Void doInBackground(Void... params) {
SQLiteDatabase db = mDbHelper.getReadableDatabase();
Cursor mCursor = db.query(TABLE_NAME, null, null, null, null, null, null);
startManagingCursor(mCursor);
OverlayItem overlayitem = null;
while (mCursor.moveToNext()) {
Address = mCursor.getString(4);
Name = mCursor.getString(0);
String noSpaces = Address.replaceAll(" ", "+");
JSONObject geocoded = getLocationInfo(noSpaces);
GeoPoint point = getGeoPoint(geocoded);
overlayitem = new OverlayItem(point, Name, Address);
publishProgress(overlayitem);
}
return null;
}
protected void onProgressUpdate(OverlayItem... overlayitem) {
List<Overlay> mapOverlays = mapView.getOverlays();
String x = "@Hello";
Log.e("Hello",""+x);
Drawable drawable = maptabview.this.getResources().getDrawable(R.drawable.pushpin);
CustomizedItemOverlay itemizedOverlay =
new CustomizedItemOverlay(drawable, maptabview.this);
itemizedOverlay.addOverlay(overlayitem);
mapOverlays.add(itemizedOverlay);
}
}
감사합니다. 마침내! – GuybrushThreepwood