自定义Toast

主要解决问题:
1:系统toast样式不符合UI需求
2:多次点击弹出多个toast

public class ToastUtils {

    private static Toast mToast;
    private static TextView title;
    private static Handler mHandler = new Handler();
    private static Runnable r = new Runnable() {
        public void run() {
            mToast.cancel();
        }
    };


    public static void toastAbove(Context context, CharSequence text) {
        mHandler.removeCallbacks(r);
        if (mToast != null && title != null) {
        //如果toast不为空,直接改变内容就行,就不会显示多次,因为用的是同一个对象
            title.setText(text);
        } else {
            View layout = LayoutInflater.from(context).inflate(R.layout.custom_toast, null);
            title = (TextView) layout.findViewById(R.id.text);
            title.setText(text);
            mToast = new Toast(context);
            mToast.setGravity(Gravity.CENTER, 0, 0);
            mToast.setDuration(Toast.LENGTH_SHORT);
            mToast.setView(layout);
        }
        //这里定义了1500ms后取消,上面用的是Toast.LENGTH_SHORT(2000),根据这种方法就可以指定toast的显示时间
        mHandler.postDelayed(r, 1500);
        mToast.show();
    }

}
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33666539/article/details/67640156
个人分类: Android
想对作者说点什么? 我来说一句

自定义toast

2016年09月27日 562KB 下载

android默认Toast,各种自定义Toast

2015年12月30日 1.38MB 下载

android 自定义toast

2015年07月29日 62KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭