본문 바로가기
Android Studio

[Android Studio/안드로이드 스튜디오] setContentView()

by Alkaloid 2021. 3. 5.
반응형

안드로이드 스튜디오에서 새로운 프로젝트를 만들면 총 2개의 파일이 보입니다.

 

 

.xml 과 .java 두개의 파일이 보입니다.

xml파일은 레이아웃 파일이라고 합니다. java파일은 말그대로 java파일 입니다.

둘의 관계는 java로 xml을 제어합니다.

 

앱을 실행하게 되면 사용자는 xml파일을 보게되는것입니다.

그럼 java로 xml을 제어한다했는데 어떻게 사용자에게 xml을 보여줘야 할까요?

 

바로 java파일에서 setContentView()라는 메소드를 사용해서 보여주게 됩니다.

그럼 .java파일에 가서 해당 메소드를 확인해 보겠습니다.

 

보시면 제가 드래그를 해놓았습니다.

setContentView() 메소드는 onCreate안에 정의가 되어있습니다.

또한 setContentView(R.layout.activity_main)으로 xml의 내용을 파싱해 뷰를 생성하고,

뷰에서 정의된 속성을 설정합니다.

그럼 매소드 안에있는 R.layout.activity_main은 무엇일까요?

 

R: res폴더

layout: R의 내부 클래스

activity_main: 레이아웃의 이름

 

이렇게 표현을 하면 무슨말인지 모르실수 있습니다.

그럼 아래를 확인해보죠.

안드로이드 스튜디오 왼쪽편에 있는 폴더 입니다.

제가 드래그로 표시를 해놨습니다.

res, layout,activity_main

setContentView()메소드에 들어가는 R.layout.activity_main은 

저것을 의미하게 되는것입니다.

activity_main.xml을 ID를 말하는 것이죠.

 

그럼 이것을 풀어 말하면

setContentView()메소드에  원하는 레이아웃의 리소스ID를 전달하면 해당 레이아웃이 출력이 된다.

 

 

안드로이드 스튜디오를 처음만들게 되면 보이는 매소드를 설명해드렸습니다.

저또한 이렇게 보니 새롭네요...

항상 있던거고..다른 파일일때는 R.layout 뒤만 바꿔줬으니..

 

 

반응형