안드로이드 개발 질문/답변
(글 수 45,052)
public class Markers extends Overlay { private int GeoX; private int GeoY; private String TargetName; public Markers (int[] Geopoint, String TargetName){ this.GeoX = Geopoint[0]; this.GeoY = Geopoint[1]; this.TargetName = TargetName; } @Override public void draw(Canvas canvas, MapView mapView, boolean shadow) { // TODO Auto-generated method stub super.draw(canvas, mapView, shadow); Paint Cursor_Paint = new Paint(); Paint Text_Paint = new Paint(); Resources R = getResources(); BitmapDrawable BitDraw = (BitmapDrawable)R.getDrawable(R.drawable.cursor_icon); Bitmap Bit = BitDraw.getBitmap(); // Cursor_Paint.setARGB(64, 255, 0, 0); // alpha, red, green, blue Text_Paint.setARGB(255, 255, 0, 0); Text_Paint.setTextSize(20); //Text_Paint.setTextAlign(Paint.Align.CENTER); //Text Alignment // 아래에서 사용된 아규먼트는 위도, 경도 정보(40.756054)에서 가운데 '.' 을 뺀 것 GeoPoint geoPoint = new GeoPoint(GeoX,GeoY); Point pixPoint = new Point(); mapView.getProjection().toPixels(geoPoint, pixPoint); // 지리좌표를 화면상의 픽셀좌표로 변환 // drawCircle(float cx, float cy, float radius, Paint paint) ; // drawLine(float startX, float startY, float stopX, float stopY, Paint paint) ; // drawText(String text, float x, float y, Paint paint) ; //canvas.drawCircle(pixPoint.x, pixPoint.y, 5, Cursor_Paint); canvas.drawBitmap(Bit, pixPoint.x, pixPoint.y, Cursor_Paint); canvas.drawText(TargetName, pixPoint.x+10, pixPoint.y, Text_Paint); } }
이런 식인데요, getResources()를 이용해 drawable에 있는 icon을 가져와서 마커로 사용하려고 합니다
근데 getResources()에서 자꾸 인식이 안되네요 ㅠㅠ
구글 등에서 찾아보니 context. 이나 ConText. 이나 this. 을 사용해보라는데 전부 안되요;; 위 코드에서 getResources()앞에 붙였었어요
임포트해도 바뀌는게 없고 ㅠㅠ
그리고 위와같이 하려고 drawable-hpdi에다가 cursor_icon을 만들어 넣어서 id에 추가가 되었느데, 실행하면 drawable 이미지들이 하나씩 밀려나는 현상도 발생하네요...ㅡㅡ;;; 보니까 cursor_icon이 drawable에서 기존에 있던것들 사이에 끼어들어가서 주소를 하나씩 밀어내는데 그게 적용이 안되는것 같아요...