我创建了一个类来生成Toast
。我想要它是因为我需要在显示新 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
时可能出现的一些问题。
提前谢谢你。
最佳答案
是的,您可以在您的 Activity 中将此语句用作:
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();
}
关于java - 我可以使用许多 Activity 中使用的静态方法生成 Toast 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44946925/