티스토리 뷰
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | /** ldpi(120dpi /기타 소형단말기) : 240 x 320 * mdpi(160dpi/G1, 옵티머스원): 320 x 480 * mdpi(160dpi/G1, 갤럭시 탭 7.0,):600 x 1024 * mdpi(160dpi/G1, 모토롤라 Xoom 10,갤럭시탭 7.7 & 10.1):1280 x 800 * hdpi(240dpi / 갤럭시 S/S2) : 480 x 800 * hdpi(240dpi / 모토로라 드로이드, XPERIA X10) : 480 x 854 * xhdpi(320dpi / 갤럭시 S3/노트II ) : 720 x 1280 * xhdpi(320dpi / 삼성 갤럭시 넥서스 ) : 720 x 1194 or 1280 * xhdpi(320dpi / 삼성 갤럭시 노트I : 800 x 1280 * xhdpi(320dpi / LG 옵티머스G, 넥서스4) : 768 x 1280 * xxhdpi(480dpi / 갤럭시 S4 & 옵티머스G프로) : 1080×1920 * xxxhdpi(640dpi / LG G3) : 1440×2560 */ /** 이미지를 그려줄때 기반이 되는 모바일 디스플레이 사이즈. (이걸 기반으로 이미지를 리사이징해줌.) 현재 320dpi 기반. */ mViewWidth = 600; mViewHeight = 1024; | cs |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | public void setPosition(int _x, int _y) { mX = (float)(_x / mViewWidth); mY = (float)(_y / mViewHeight); } public void setSize(int _w, int _h) { //TODO:: 이미지를 DPI에 맞게 기반이 되는 모바일 디스플레이 DPI의 사이즈 비율로 반환. mW = (float)((_w / (cGameManager.getInstance().getDisplayMetrics().densityDpi/160)) / mViewWidth); mH = (float)((_h / (cGameManager.getInstance().getDisplayMetrics().densityDpi/160)) / mViewHeight); } public Point getPosition() { //TODO:: 원하는 디스플레이 DPI의 사이즈 비율로 변환된 값을 현재 디스플레이의 값을 곱해 현재 디스플레이의 크기에 알맞도록 이미지 위치 설정. Point pos = new Point(); pos.x = (int)(mX * cGameManager.getInstance().getDisplayMetrics().widthPixels); pos.y = (int)(mY * cGameManager.getInstance().getDisplayMetrics().heightPixels); return pos; } public int getWidth() { int w = (int)(mW * cGameManager.getInstance().getDisplayMetrics().widthPixels); return w; } public int getHeight() { int h = (int)(mH * cGameManager.getInstance().getDisplayMetrics().heightPixels); return h; } | cs |
1 2 3 4 5 6 7 8 9 | public void draw(Canvas _canvas) { if (mEnable == true && mBitmap != null) { Rect dst = new Rect(); dst.set(getPosition().x, getPosition().y, getPosition().x + getWidth(), getPosition().y + getHeight()); _canvas.drawBitmap(mBitmap, null, dst, null); } } | cs |
'Programming > Android' 카테고리의 다른 글
포커스를 잃었을 때 스레드를 다시 실행시키는 방법 (0) | 2016.04.25 |
---|---|
font size px to sp (0) | 2016.04.22 |
Activity로 Dialog Popup 만들기 (0) | 2016.03.05 |
시간 데이터 얻어오기. (0) | 2015.12.05 |
Android Google Places API Web Service 사용방법 (주변검색) (0) | 2015.12.05 |
댓글