내가이 안드로이드지도 itemizedOverlay에 사진을 확장하기 위해 노력하고 확장, 내가 그것을 내가 10 개 사진을 볼 수있는 지점에 근무있어 , 난 이것이 MapItems입니다안드로이드 ItemizedOverlay 캔버스
zoomControle하지만 정말 아무것도를 가지고 ItemizedOverlay를 확장 클래스, 최적화 함께에서 기존의 캔버스 "로, 그러나 이것은 다른 위치에 캔버스를 다시 그리는 것, 내가 canvas.Scale를 사용하여 그리기 방법의 확장 시도하고있다
import java.util.ArrayList;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.util.Log;
import com.google.android.maps.ItemizedOverlay;
import com.google.android.maps.MapView;
import com.google.android.maps.OverlayItem;
public class MapItems extends ItemizedOverlay
{
private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
Context mContext;
public MapItems(Drawable defaultMarker)
{
super(boundCenterBottom(defaultMarker));
}
@Override
public void draw(android.graphics.Canvas canvas,MapView mapView,boolean shadow)
{
/*
Log.d("MapAc", String.valueOf(mapView.getZoomLevel()));
if(mapView.getZoomLevel() > 20)
{
Log.d("MapAc", "scaling up");
canvas.scale(1.2f, 1.2f);
}
*/
super.draw(canvas,mapView,false);
}
public MapItems(Context context)
{
super(boundCenterBottom(context.getResources().getDrawable(R.drawable.app_icon_clean)));
mContext = context;
}
public void addOverlay(OverlayItem overlay)
{
mOverlays.add(overlay);
populate();
}
public void clearOverlay()
{
mOverlays.clear();
}
@Override
protected OverlayItem createItem(int i)
{
return mOverlays.get(i);
}
@Override
public int size()
{
return mOverlays.size();
}
@Override
protected boolean onTap(int index)
{
/* ToDo
OverlayItem item = mOverlays.get(index);
AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
dialog.setTitle(item.getTitle());
dialog.setMessage(item.getSnippet());
dialog.show();
*/
return true;
}
}
환영의 원래 크기 ", 나는 t에서이 문제에 접근하고 있는지 잘 모르겠다. 그는 직각이나 단순히 화면을 지우는 문제 일 뿐이므로 숫자를 사용하여 그림을 그렸으므로 확대/축소시 매우 정확하게 그림을 확대 할 수 있습니다.
새지도 API를 사용하고 있습니까? – David
아니, 오래된 것, 심지어 하나 : 통고하지 않았다, S, 내가 재검토해야 하는가? 얼마를 재사용 할 수 있습니까? – bonitzenator
첫 번째 오류가 있습니다. 새 것을 사용하십시오. 그들은 새로운 것들에 정말로 많은 것을 단순하게했습니다. – David