본문 바로가기
안드로이드 자바

[JAVA][Android] xml파일 없이 Java 언어 만을 사용하여 화면 제작

by teamnova 2022. 7. 3.

안녕하세요.

오늘은 java 언어만을 사용해 안드로이드의 화면을 구성하는 방법을 가져왔습니다.

일반적으로 안드로이드의 화면 구성을 할 때에는 xml 화면을 제작한 후,

java 파일 내에서 setContentView에 xml 파일을 설정해 사용하는데요.

오늘은 xml 파일 없이 자바로만 안드로이드의 화면 구성을 해보겠습니다.

 

해당 자바 파일 입니다.

//MainActivity.java

public class MainActivity extends AppCompatActivity {

    TextView tv;// TextView 참조변수

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.activity_main); //화면에 보여줄 View 를 설정하는 메소드 -주석처리

        //Java 언어만으로 화면 꾸미기

        //액티비티에 놓여질 수 있는 것은 View클래스를 상속받은 클래스들만 가능함.

        //글씨를 보여주는 TextView 객체 생성 및 설정[ 참조변수 tv는 저 위에 MainActivity클래스의 멤버변수로 만들기 ]
        tv = new TextView(this);
        tv.setText("Hello world!!!!!");

        //버튼역할을 수행하는 객체 생성 및 설정
        Button btn = new Button(this);
        btn.setText("버튼");

        //액티비티는 한번에 하나의 View만 보여줄 수 있기에 View를 여러개 가질 수 있는 ViewGroup객체 생성
        LinearLayout layout = new LinearLayout(this);

        //위에서 만들었던 TextView와 Button을 ViewGroup에 추가
        layout.addView(tv);
        layout.addView(btn);

        //ViewGroup 1개를 추가하지만 그 안에 TextView와 Button이 배치되어 있어서 결국 2개의 뷰를 보여줄 수 있게됨.
        setContentView(layout);

        //버튼 클릭에 반응하는 리스너 객체 설정
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //버튼이 클릭되었을 때(on Click) 텍스트뷰의 글씨를 변경
                tv.setText("Nice to meet you.");
            }
        });

    }

}

 

해당 java파일을 안드로이드에서 실행하면

 

 

영상과 같이 java파일로만 화면을 구성하는 것을 확인 할 수 있습니다.

감사합니다.