안녕하세요? 첫 포스팅이네요!
앱을 실행하면 가장 먼저 보이는 시작 화면 기억나시나요?
앱이 로딩중에 표시되는 이미지 또는 텍스트 화면을 Splash 화면이라고 합니다.
오늘은 이 스플래시 화면을 만들어 보겠습니다.
class SplashActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_splash)
// 핸들러를 통해서 지정한 시간 이후 화면 이동
Handler(Looper.getMainLooper()).postDelayed({
// 지정한 시간이 지나면 다음 액티비티로 이동
val intent= Intent( this,MainActivity::class.java)
startActivity(intent)
// 스플래시 화면 finish
finish()
}, 2000) // 타이머 지정 : 2초 Duration
}
}
Layout.xml 같은 경우는 원하는 대로 꾸며주면 됩니다.
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/mainColor"
tools:context=".SplashActivity">
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="스플래시"
android:textColor="@color/splash"
android:textSize="70sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.479"
tools:ignore="MissingConstraints" />
</androidx.constraintlayout.widget.ConstraintLayout>
실행 결과