하루에 0.01%라도 성장하자

Develop/Android

Android - Toast가 중첩되어 보여질 때

뚠님 2022. 10. 19. 17:05
반응형

앱을 개발하다 보면 Toast를 많이 사용하곤 한다.

 

이때 Toast를 띄우는 버튼을 여러번 누를 경우 Toast가 최근것만 보이지 않고 밀렸던 Toast가 뜨게된다.

 

사실 사용자 경험상 가장 최근에 발생한 안내문구만 Toast 형태로 제공하는 것이 좋다.

 

Flow

Toast 처리 로직

 

 

Flow를 확인해보면 생각보다 간단한 로직이다.

 

Code
// 전역변수
private var toast: Toast? = null

fun showToast(msg: String) {
    toast?.cancel()
    toast = Toast.makeText(GlobalApplication.getContext(), msg, Toast.LENGTH_SHORT)
    toast?.show()
}


// 사용법

showToast("안녕하세요")

이렇게 작성하면 Toast가 발생하는 상황에서 하나의 Toast만 사용하게 되므로 존재 여부를 확인할 수 있고

존재한다면 취소하고 신규 Toast 노출, 없다면 Toast 노출 하는 형태로 구현할 수 있다.

반응형