THINK HARD

onCreate(), setContentView(), 안드로이드스튜디오 레이아웃 파일 보는법, 레이아웃 폴더 없을 때, android:exported 본문

안드로이드/공부

onCreate(), setContentView(), 안드로이드스튜디오 레이아웃 파일 보는법, 레이아웃 폴더 없을 때, android:exported

HEEJUNDID 2025. 9. 8. 19:07
728x90
반응형

앱만들기

코틀린 코드 파일(.kt)은 앱의 동작을, XML 파일(.xml)은 앱의 화면 구성을 담당한다. 항상 두 파일이 한 쌍의 젓가락 처럼 사용된다.

onCreate()

클래스가 생성될 때 맨 처음에 호출되는 콜백 함수이다. 여기에 초기화 코드를 넣으면 된다. savedInstanceState: Bundle?

→ 특정한 상황에서 액티비티가 저장한 값을 다시 불러오는 값이다.

super란 상위 클래스를 뜻하며, 상위클래스의 onCreate()를 먼저 실행하라는 의미이다. 이 줄이 없으면 오직 적은 코드만 실행되어 SupterNotCalledException과 같은 에러를 만나게 된다.

setContentView()

보여줄 레이아웃을 지정해 준다.

레이아웃 파일 보는 방법

app → res → layout → activity_main.xml

(⚠️ Android Jetpack Compose 를 사용하게 되며 xml 보다는 Compose를 사용하여 개발하는 경우가 있기 에 Empty와 Empty Views로 나뉜것 같다는 것이다. 만약 layout 폴더가 없어 activity_main.xml이 없다면 액티비티를 고르는 창에서 Empty Activity가 아닌 Empty Views Activity를 고르자…

참조 : https://velog.io/@jejun_/안드로이드-스튜디오-프로젝트에-왜-Layout폴더-activitymain.xml이-없을까

감사합니다 선생님)

layout 폴더를 원한다면 Empty Views Activity 선택

레이아웃 에디터의 모드에는 3가지가 있다.(우 상단 확인)

  • Code : 코드만 보여줌
  • Split : 코드와 디자인 모두 보여줌
  • Design : 디자인 된 화면 보여줌

레이아웃 수정

Declared Attributes를 클릭해보면 해당 뷰와 관련 된 정보가 뜬다.

여기서 text 속성을 바꾸면 HelloWorld가 바뀔 것

Design 탭에서 Code탭을 다시 확인해보면 수정한 텍스트가 반영 된 것을 볼 수 있다.

android:exported 확인

exported 속성은 앱에서 만든 액티비티, 서비스와 같은 컴포넌트들이 외부 앱에 의해 실행될 수 잇는지를 정의하는데 쓰인다. 안드로이드 스튜디오 버전이 2020.3.1 이상 인 경우 exported 속성이 액티비티가 생성될 때 자동으로 추가된다.

  1. exported 속성은 AndroidManifest.xml 파일에서 수정 가능(app → manifests → AndroidManifest.xml)
  2. activity 태그안 속성을 android:exported=”true”로 지정
728x90
반응형

'안드로이드 > 공부' 카테고리의 다른 글

코틀린 기본(2) - 제어문  (0) 2025.09.14
코틀린 기본(1)  (0) 2025.09.10
에뮬레이터로 실행하기, 실제 기기로 실행하기  (0) 2025.09.08
Gradle Scripts  (0) 2025.09.02
안드로이드 코틀린(1)  (1) 2025.09.01