토스트 메시지 빠르게 사라지게 하기

토스트메시지를 연속으로 띄울 때, 아무 조건식 없이 구현하게되면 이전에 띄웠던 토스트 메시지가 빠르게 사라지지 않고 정해진 시간만큼 화면에 남아있게된다. Toast.LENGTH_SHORT으로 duration매개변수를 설정해도 마찬가지다.

이럴 땐, cancel()메서드를 써서 토스트객체가 null이 아닐경우 토스트 뷰를 사라지게 해주면 된다.

@Overridepublic void onListItemClick(int clickedItemIndex) {
    if (mToast != null ){
        mToast.cancel();    }
    String toastMessage = "Item #" + clickedItemIndex + "is clicked.";    mToast = Toast.makeText(this, toastMessage, Toast.LENGTH_LONG);    mToast.show();
}

위 코드에선 리스트 뷰 내에 구현된 아이템을 클릭할 경우 리스너의 onListItemClick메서드가 실행되도록 하였다.






댓글

이 블로그의 인기 게시물

API 요청 URL(URI) 만들기(조합하기) -Uri.Builder사용하기-

TextView에 글자를 넣어주는 방법(setText, append)

텍스트 뷰의 배경을 원형 이미지로 지정하고, 배경 색상 채우기(안드로이드)