본문 바로가기
안드로이드/Layout

안드로이드 splash 화면

by 김어찐 2022. 6. 26.
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