안드로이드에서 가장 쉽게 화면에 알림을 띄우는 방법은 토스트(Toast)를 사용하는 것이다.
쉽고 간편하기 때문에 나는 개발시 간단한 값 확인등 테스트를 위해서도 종종 토스트를 사용하기도 한다.
토스트(Toast)의 특징
- 토스트는 모덜리스(Modeless) 방식 다이얼로그이다.
- 토스트는 알림메세지를 띠운 뒤, 지간이 지나면 자동으로 사라진다. 따라서 사용자 확인이 꼭 필요한 메시지는 토스트가 아니라 AlertDialog로 띄워야 한다.
모달(Modal) 다이얼로그와 모덜리스(Modeless) 다이얼로그란?
- 모달 다이얼로그(Modal Dialog) : 다이얼로그를 닫기 전까지 원래 창(해당 다이얼로그를 호출한 창)을 사용자가 사용 할 수 없다. 안드로이드의 알림창(AlertDialog)가 모달 다이알로그 이다.
- 모덜리스 다이얼로그(Modeless Dialog) : 다이얼로그가 화면에 떠 있더라도 사용자가 원래의 창을 계속 사용 할 수 있다. 안드로이드의 토스트(Toast)는 모덜리스 다이얼로그이다.
토스트 사용 예제
간단히 아래처럼 한줄로 안드로이드 화면에 알림을 뛰울 있다.
1 | Toast.makeText(getApplicationContext(), "약속의 땅으로 가즈아ㅏㅏㅏㅏㅏㅏㅏ~", Toast.LENGTH_LONG).show(); |
토스트 동작화면
토스트는 사용자의 컨펌을 받는 알림 메세지가 아니라 그냥 보든 말든 흘러가는 알림이다.
따라서 중요한 알림을 토스트에 사용하는 것은 적합하지 않아 보인다.
makeText 메소드의 형식은 다음과 같다.
makeText(Context context, int resId, int duration)
makeText(Context context, CharSequence text, int duration)
세번째 인자가 토스트 메세지의 유지시간으로 이 시간이 지나면 메세지는 사라진다.
이 값은 임의의 숫자값을 지정 할수 없으며 다음과 같은 Toast의 내장된 상수값을 지정해야 한다.
- LENGTH_SHORT : 3 초
- LENGTH_LONG : 5 초
지금까지 안드로이드 토스트의 사용법을 정리해 보았다.
문뜩 든 생각인데 쉽고 간편한 사용법 때문에 토스트라는 이름이 붙은 것은 아닐까 한다.