본문 바로가기

Android/참고

[Kotlin] n초 뒤 화면 전환

Handler().postDelayed({ startActivity(Intent(StartActivity::class.java, MainActivity::class.java)) }, 2000L)

액티비티를 실행할 때 위와같이 딜레이를 준 후 핸들러에게 넘겨주면 된다.


원리를 요약하면 아래와 같다.

- 핸들러 생성 시점의 스레드(여기서는 보통 메인스레드)의 메시지 큐에 { } 안에 정의된 작업(람다식이 Runnable 로 변환됨)을 큐잉한다.

- 설정한 딜레이가 지난 후 작업이 수행되도록 한다.



< 자바코드 >

new Handler().postDelayed(new Runnable() {
@Override
public void run() {
startActivity(new Intent(StartActivity.this, MainActivity.class));
finish();
}
}, 2000L);


* 참고 : 인터페이스에서 구현해야할 메소드가 하나(함수형 인터페이스)일 경우 람다식으로 대체 가능 -> SAM

'Android > 참고' 카테고리의 다른 글

[Android] android:src VS app:srcCompat  (0) 2018.12.26
[kotlin] TextView 에 밑줄긋기  (0) 2018.10.01
[Kotlin] Recyclerview  (0) 2018.07.09
[Kotlin] 인터페이스 구현할때  (0) 2018.07.06
[Android] 툴바 테두리 없애기  (0) 2018.07.05