구현하려는 기능은 버튼 클릭시 토스트 메시지가 뜨게 하는 간단한 기능입니다.
토스트 메시지 중복을 처리하려고 이런 함수를 작성하고
fun makeToast(str: String) {
if (mToast == null) {
mToast = Toast.makeText(context, str, Toast.LENGTH_SHORT)
}else
mToast?.setText(str)
mToast?.show()
}
onClick에서 사용합니다.
override fun onClick(view: View?) {
when (view) {
binding.btnStart -> {
makeToast("시작")
}
binding.btnEnd -> {
makeToast("종료")
}
}
}
문제는 버튼이 여러번 눌리면서 토스트 메시지가 뜨지 않는 버그가 생겼습니다.
일정 시간 뒤에는 다시 정상 작동하다가 또 여러번 눌리면 동작하지 않습니다.
에러 메시지는 E/OpenGLRenderer: ReliableSurface: perform returned an error 라고 나오는데, 구글링해도 자료를 찾기가 힘드네요 ㅠㅠ
왜 이런건가요?