我创建了一个类来生成Toast
。我想要它,因为我需要在显示新Toast
时取消以前的。
我的怀疑是,在我的课堂上,我有
- 静态方法
Toast
静态类字段
同时,我传递静态方法不同的Context
,具体取决于我调用静态方法的Activity
:ToastUtility.generateToast(activity_context, "message", Toast.LENGTH_LONG);
这是类:
public class ToastUtility {
private static Toast myToast;
public static void generateToast(Context context, String message, int duration){
if(myToast != null)myToast.cancel();
myToast = Toast.makeText(context, message, duration);
myToast.show();
}
}
恐怕我没有考虑使用static
方法和字段时可能会出现的一些问题,而是不同的Context
.
提前谢谢你。
是的,您可以在您的活动中使用此语句,如下所示:
Utils.showToast(this, "" + model.getMessage());
在 Utils 类中,您可以创建如下方法:
public static void showToast(Activity activity, String message) {
Toast toast = Toast.makeText(activity, message, Toast.LENGTH_SHORT);
toast.setGravity(Gravity.BOTTOM, 0, 0);
toast.show();
}