自定义toast

来源:互联网 发布:caffe 添加数据层 编辑:程序博客网 时间:2024/05/17 08:07

1,其实大家都知道,Toast的生命周期不是伴随着activity的,toast是系统的windowsmanager创建的。要向window窗口显示view, wm.addView(view, params);

接受两个参数,view和param

    其中:view :toast的view其实是一个文本框(可以带背景图片)比如

                view = View.inflate(this, R.layout.toast_address, null);
TextView tv_address = (TextView) view.findViewById(R.id.tv_address);(自定义显示样式)
tv_address.setText(address);(弹出内容)

              param:param需要设置显示框的长宽高,比如 

          params.height = WindowManager.LayoutParams.WRAP_CONTENT;
         params.width = WindowManager.LayoutParams.MATCH_PARENT;
         params.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE

         还可以设置透明度:params.format = PixelFormat.TRANSLUCENT;半透明

        最后声明类型是toast的  params.type = WindowManager.LayoutParams.TYPE_TOAST;

  这样一个窗口生成了


0 0