개발하는 두더지

[Android/안드로이드] 안드로이드 해상도 구하기 및 화면 중앙 표시 본문

Java,Android

[Android/안드로이드] 안드로이드 해상도 구하기 및 화면 중앙 표시

덜지 2016. 7. 22. 01:33

해상도 별로 레이아웃 설정을 변경하거나 또는 늘이거나 줄이지 않고, 중앙에 표시하고자 할 때는 아래와 같이 합니다.

 

public class MainActivity extends Activity {
    
    private static final int _Width = 300;
    private static final int _Height = 400;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        
        DisplayMetrics displayMetrics = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
        int deviceWidth = displayMetrics.widthPixels;
        int deviceHeight = displayMetrics.heightPixels;
        
        //리니어 레이아웃
        LinearLayout layout = new LinearLayout(this);
        layout.setBackgroundColor(Color.YELLOW);
        layout.setOrientation(LinearLayout.VERTICAL);
        layout.setGravity(Gravity.CENTER);
        layout.setPadding(
                (deviceWidth - _Width) /2,
                (deviceHeight - _Height) /2,
                (deviceWidth - _Width) /2,
                (deviceHeight - _Height) /2
                );
        setContentView(layout);
        
        //텍스트뷰 추가
        TextView tv1 = new TextView(this);
        tv1.setText("Hello Android World");
        layout.addView(tv1);
        
        //버튼 추가
        Button Bt01 = new Button(this);
        Bt01.setText("버튼1");
        layout.addView(Bt01);
    }


Comments