앱을 실행하면 보통 앱 로고 / 회사 로고 등을 일정 시간 보여주는 용도인 로딩 화면을 만들 예정
1. SplashActivity라는 새 Activity를 만들어줬다.(이름은 마음대로)
2. Manifest에 가서
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
MainActivity에 있던 이 구문을 SplashActivity로 옮겨주었다.
=> 시작화면을 뭘로 해줄지
SplashActivity 부분만 보면
<activity
android:name=".SplashActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data
android:name="android.app.lib_name"
android:value="" />
</activity>
3. SplashActivity.kt에서
val myHandler = Handler(Looper.getMainLooper())
myHandler.postDelayed( {
//2.5초 후에 실행할 내용 작성
//메인화면으로 이동 + 지금 화면 종료
val myIntent = Intent(this, MainActivity::class.java)
startActivity(myIntent)
finish()
}, 2500)
이 작업을 진행해줬다. 저 2500은 ms 단위이기 때문에 실제로는 2.5초를 뜻한다.
실행을 해보면 2.5초간 SplashActivity를 보여주다가 MainActivity로 넘어간다.
'Android' 카테고리의 다른 글
[Android] ViewPager (0) | 2023.01.02 |
---|---|
[Android] SharedPreferences 데이터 항목 반영구 저장 (0) | 2023.01.02 |
[Android] AlertDialog (0) | 2022.12.31 |
[Android] 리스트뷰 Listview 목록 변경 반영하기 notifyDataSetChanged() (0) | 2022.12.31 |
[Android] 리스트뷰 Listview 이벤트 처리(item click event) (0) | 2022.12.31 |