一、Toast事件多次触发只显示一次
- 编写一个ToastUtils类
import android.content.Context;
import android.widget.Toast;
public class ToastUtils {
private static Toast toast = null;
public static void showToast(Context context,String text) {
if (toast == null) {
toast = Toast.makeText(context, text, Toast.LENGTH_SHORT);
} else {
toast.setText(text);
toast.setDuration(Toast.LENGTH_SHORT);
}
toast.show();
}
public static void showToast(Context context,int textRes){
showToast(context,context.getString(textRes));
}
}
在showToast方法中我们先进行判断当前Toast对象是否为空,如果等于空的时候,我们创建一个Toast对象出来。相反如果Toast对象不为空的情况下,也就是Toast正被调用,我们就设置Toast对象的tex。这样一来就能给实现Toast消息多次点击只显示一次。
2.Toast·简单使用
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class TestActivity extends AppCompatActivity {
private Button mBtnTest;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
mBtnTest = findViewById(R.id.btn_test);
mBtnTest.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ToastUtils.showToast(TestActivity.this,"这是一场Toast测试");
}
});
}
}