Notice
Recent Posts
Recent Comments
올해는 머신러닝이다.
android 해상도 및 가로/세로 알아내기 본문
- 화면 해상도 알아내기 -
방법 #1
1 |
DisplayMetrics metrics = new DisplayMetrics(); |
2 |
getWindowManager().getDefaultDisplay().getMetrics(metrics); |
3 |
|
4 |
int ScreenWidth = metrics.widthPixels |
5 |
int ScreenHeight = metrics.heightPixels |
방법 #2
1 |
WindowManager wm = (WindowManager)getSystemService(Context.WINDOW_SERVICE); |
2 |
Display dsp = wm.getDefaultDisplay(); |
3 |
|
4 |
int height = dsp.getHeight(); |
5 |
int width = dsp.getWidth(); |
- 화면 상태 확인하기 -
현재 화면이 가로인지 새로인지 확인하는 방법은 화면 해상도를 확인하는 방법도 있겠지만 API 에서 제공하는 함수로도 확인 할 수 있다. 가로 혹은 세로 해상도가 같은 경우에는 API 함수를 이용하는 것이 보다 정확할 것이다.
Android 2.1 이하에서는 getOrientation() 만 동작하며 Android 2.2 이상에서는 getOrientation() 과 getRotation() 이 동작을 한다.
Android 2.1 이하
1 |
WindowManager wm = (WindowManager)getSystemService(Context.WINDOW_SERVICE); |
2 |
Display disp = wm.getDefaultDisplay(); |
3 |
|
4 |
int orientation = disp.getOrientation(); // Android 2.1 |
5 |
Log.i( "Orientation" , "orientation : " + orientation ); |
Android 2.2 이상
01 |
WindowManager wm = (WindowManager)getSystemService(Context.WINDOW_SERVICE); |
02 |
Display disp = wm.getDefaultDisplay(); |
03 |
|
04 |
int rotation = disp.getRotation(); // Android 2.2 |
05 |
Log.i( "Rotation" , "rotation : " + rotation ); |
06 |
|
07 |
switch ( rotation ) |
08 |
{ |
09 |
case Surface.ROTATION_0: |
10 |
Log.i( "Roation" , "Portrait : 0" ); |
11 |
break ; |
12 |
|
13 |
case Surface.ROTATION_90: |
14 |
Log.i( "Roation" , "Landscape : 90" ); |
15 |
break ; |
16 |
|
17 |
case Surface.ROTATION_180: |
18 |
Log.i( "Roation" , "Portrait : 180" ); |
19 |
break ; |
20 |
|
21 |
case Surface.ROTATION_270: |
22 |
Log.i( "Roation" , "Landscape : 270" ); |
23 |
break ; |
24 |
} |
'Android > Tip&Tech' 카테고리의 다른 글
[펌]custom seek bar 만들기 (3) | 2011.09.26 |
---|---|
[펌]안드로이드 아이폰 스타일 on/off 만들기 (0) | 2011.09.26 |
[펌]Android: Check application is running (0) | 2011.09.21 |
[팁]자바상에서 text 가변크기 설정(sp,dp등등) (0) | 2011.09.21 |
c2dm php 팁#1 (3) | 2011.09.21 |