안녕하세요


언제나 프로젝트를 진행하다보면 -_- 그놈에 해상도 차이와 dp 차이 때문에 짜잉이 납니다.


보통은 xml에서 dp로 코딩을 하지만 코드에서 x y 값을 구해야 할때가 있는데.


그럴때마다 찾아서 뭐 하긴 그렇고 해서 그냥 간단하게 하나 만들어 보았습니다.


단순 wrapper 입니다만!!


필요하신분 유용하게 쓰셨으면 좋겠네요!!


인터넷에 문서만 보고 쓴거라 버그가 있다면 알려주세요!!


사용예

----

        DPIUtil.getInstance().init(this);

        float px = DPIUtil.getInstance().dp2px(100);

        float dp = DPIUtil.getInstance().px2dp(150);

        System.out.println(DPIUtil.getInstance().getMetricsInfo());

        System.out.println("result : " + px);

        System.out.println("result : " + dp);

----
결과
----
04-17 17:50:49.584: I/System.out(21046): densityDpi : 240
04-17 17:50:49.588: I/System.out(21046): density : 1.5
04-17 17:50:49.588: I/System.out(21046): W : 480, H : 800
04-17 17:50:49.588: I/System.out(21046): result : 150.0
04-17 17:50:49.588: I/System.out(21046): result : 100.0
----

init(Activity)
float dp2px(float)
float px2dp(float)

DisplayMetrics getMetrics();

String getMetricsInfo();

init으로 초기화 하고
두 함수를 마구 써주시면 됩니다.
코드 보시면 아시겠지만 싱글턴 입니다 :D

나머지는 정보 얻어오는거니 원하실때 쓰세요!!