Java코드에서 dp를 px로 변환 :: 안드로이드 설치 및 개발[SSISO Community]
 
SSISO 카페 SSISO Source SSISO 구직 SSISO 쇼핑몰 SSISO 맛집
추천검색어 : JUnit   Log4j   ajax   spring   struts   struts-config.xml   Synchronized   책정보   Ajax 마스터하기   우측부분

안드로이드 설치 및 개발
[1]
등록일:2018-10-15 16:44:08 (0%)
작성자:
제목:Java코드에서 dp를 px로 변환

dp를 px로 바꾸는 3가지 방법에대해 알아봅시다.


방법1. Java에서 제공하는 메소드를 사용해서 계산


방법2. density(밀도) 값을 가져와서 계산

density(밀도)란 화면안에 얼마나 많은 pixel(픽셀)들이 있는가를 말한다.

안드로이드에서는 밀도에따라 high, mediaum, low 3가지 분류로 나누게되는데 밀도가 높을수록 같은 넓이의 스크린안에 많은 픽셀들이 존재한다.


방법3. demens.xml 파일에 있는 dp값을 불러와서 계산

* 3번째 방법은 res/values/demens.xml 파일안에 아래 리소스가 정의되어있어야 합니다.

<resources>
<dimen name="dip">25dp</dimen>
</resources>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
        float dp = 25;
        //방법1
        int pixels1 = (int) TypedValue.applyDimension(
        TypedValue.COMPLEX_UNIT_DIP, dp, getResources().getDisplayMetrics());
 
        //방법2
        DisplayMetrics metrics = getResources().getDisplayMetrics();
        float fpixels = metrics.density * dp;
        int pixels2 = (int) (fpixels + 0.5f);
 
        //방법3
        float pixels3 = getResources().getDimensionPixelSize(R.dimen.dip);
 
        Log.e("functionPixel",pixels1+"");
        Log.e("metricsPixel",pixels2+"");
        Log.e("diemPixel",pixels3+"");
[본문링크] Java코드에서 dp를 px로 변환
[1]
코멘트(이글의 트랙백 주소:/cafe/tb_receive.php?no=34862
작성자
비밀번호

 

SSISOCommunity

[이전]

Copyright byCopyright ⓒ2005, SSISO Community All Rights Reserved.