728x90
splash 화면이랑 애플리케이션을 실행하면 로고를 보여주고 지정된 시간이 지나면 사라지믄 화면을 말한다.
안드로이드는 Activity를 이용해 할 수도 있지만 테마를 설정해서 하면 구현이 가능하다
Splash 화면으로 사용할 화면을 테마로 구성해 MainActivity에 적용하고 onCreate 메서드에서 원래의 테마로 다시 설정하는 방식을 사용한다.
Splash 에 사용할 이미지 생성
drawalbe에 이미지를 생성한다
splash.xml로 저장
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/white"/>
<item>
<bitmap android:src="@drawable/soft_logo"
android:gravity="center"/>
</item>
</layer-list>
Theme 설정
MainActivity에 적용할 테마를 작성한다.
AndroidManifest.xml에서 테마 설정
특정 시간 후 원래의 테마로 설정
package com.example.app1memo
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.SystemClock
import com.example.app1memo.databinding.ActivityMainBinding
class MainActivity : AppCompatActivity() {
lateinit var binding : ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// 딜레이 시간을 주어 splash 화면을 좀더 보여지게 한다
SystemClock.sleep(1000)
// Splash 화면 이후로 보여질 화면 설정
setTheme(R.style.Theme_App1Memo)
binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
}
}
728x90
'안드로이드 > Layout' 카테고리의 다른 글
tablayout slide 기능 끄기 (0) | 2022.08.16 |
---|---|
안드로이드 새로고침 (0) | 2022.07.02 |
안드로이드 include other layout (0) | 2022.05.27 |
안드로이드 GridLayout (0) | 2022.05.27 |
안드로이드 RelativeLayout (0) | 2022.05.27 |