Android에서 Toast를 사용할 때, 메시지가 중복해서 뜨면서 오랫동안 지속되는 경우가 있습니다.

기존 메시지는 삭제하고, 현재 메시지만 보이도록 하는 방법을 공유합니다.

 

1. Toast 객체 선언
public static Toast mToast;

2. onCreate() 에서 Toast.makeText()를 이용하여 Toast 객체 초기화
mToast = Toast.makeText(this, "null", Toast.LENGTH_SHORT);

3. 이 후, Toast를 보여주는 코드에 있는 Toast.makeText().show() 대신 다음으로 변경
mToast.setText(
show this text);

mToast.show();

 

이렇게 수정하면,

l mToast가 보여지지 않던 상황에는, 설정한 string toast를 띄우게 되고,

l mToast가 보여지고 있던 상황에는, mToast에 보여지고 있던 text를 새로운 text로 변경하여 보여줍니다.

항상 가장 마지막에 setText(), show() 했던 text Toast에 보여지게 되며, Toast.LENGTH_SHORT 만큼의 시간이 흐른뒤에 Toast가 사라지게 됩니다.