Andriod学习不深奥,经验全从实践来
大家好,今日经验分享之~ 受控的Toast
大家都想制作一个Toast的单例,这样的话我们就不用看到满屏弹不完的“土司了”,
1、用handler及时的清除现在的这个toast,接受新的然后显示
2、就是利用toast的单例来进行
第二种方式无疑是最方便,最为简单的方式,但是android4.2之后如果你想做Toast单例的话如下图
public static void showToast(Context context, int text) {
if (toast == null) {
toast = new Toast(context);
}
toast.setDuration(Toast.LENGTH_SHORT);
toast.setText(text);
toast.show();
}
这样已经给不行了,因为系统会报错提示你,Toast was not make from makeText...
那么如何解决这个问题呢?
应该用这种方式来进行
/**
* 极简吐司提示
* @param context
* @param text
*/
public static void showToast(Context context, int text) {
if (makeText==null) {
makeText = Toast.makeText(context, "", Toast.LENGTH_SHORT);
}
makeText.setText(text);
makeText.show();
}
再试试,看还有这个问题了吗?问题就是这么解决的,对于问题我们应该用正确的做法去不断的尝试
转载请注明出处