본문 바로가기

Development Note/JAVA

[안드로이드] 코드만으로 버튼 만들기


 



 안드로이드에서 레이아웃 위에 버튼을 만들기 위해서 보통 xml 편집기를 사용합니다. 하지만 때때로 xml편집기는 너무 느리고, 짜증나게 하죠. 안드로이드 앱의 레이아웃상에 코드만을 이용해서 간단한 버튼을 생성하는 법을 알아보겠습니다.


onCreate(){

    Button mButton = new Button(this); //버튼을 선언

    LayoutParams pm = new LayoutParams(); //레이아웃파라미터 생성
    pm.width = LayoutParams.WRAP_CONTENT; //버튼의 너비를 설정(픽셀단위로도 지정가능)
    pm.height = LayoutParams.WRAP_CONTENT; //버튼의 높이를 설정(픽셀단위로도 지정 가능)
    pm.gravity = Gravity.CENTER; //버튼의 Gravity를 지정

    mButton.setText("button"); //버튼에 들어갈 텍스트를 지정(String)
    mButton.setBackgroundResource(R.drawable.button_selector); //버튼 이미지를 지정(int)
    mButton.setLayoutParams(pm); //앞서 설정한 레이아웃파라미터를 버튼에 적용
    mButton.setOnClickListener(mOnClick); //버튼에 OnClickListener를 지정(OnClickListener)

    mView.addView(mButton); //지정된 뷰에 셋팅완료된 mButton을 추가
}


 기본적으로 위의 셋팅정도만 지정해주면 대략 위치지정과 이미지설정, OnClickListener지정까지 완료가 됩니다. 코더 입맛에 맞게 사용하면 됩니다.