自定义吐司
来源:互联网 发布:算法基础第五版 编辑:程序博客网 时间:2024/04/27 18:48
自定义吐司工具类
public class Toast { private static WindowManager mWM; public static void show(Context context, final View view) { mWM = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); final WindowManager.LayoutParams params = new WindowManager.LayoutParams(); params.height = WindowManager.LayoutParams.WRAP_CONTENT; params.width = WindowManager.LayoutParams.WRAP_CONTENT; params.format = PixelFormat.TRANSLUCENT; params.type = WindowManager.LayoutParams.TYPE_PRIORITY_PHONE; params.gravity = Gravity.LEFT + Gravity.TOP; params.flags = WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE; view.setOnTouchListener(new View.OnTouchListener() { public float starty; public float startx; @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: startx = event.getRawX(); starty = event.getRawY(); break; case MotionEvent.ACTION_MOVE: float newx = event.getRawX(); float newy = event.getRawY(); int dx = (int) (newx - startx + 0.5f); int dy = (int) (newy - starty + 0.5f); //移动赋值 params.x += dx; params.y += dy; //设置不超出屏幕 if (params.x < 0) { params.x = 0; } if (params.y < 0) { params.y = 0; } if (params.x > mWM.getDefaultDisplay().getWidth() - v.getWidth()) { params.x = mWM.getDefaultDisplay().getWidth() - v.getWidth(); } if (params.y > mWM.getDefaultDisplay().getHeight() - v.getHeight()) { params.y = mWM.getDefaultDisplay().getHeight() - v.getHeight(); } //通知移动 mWM.updateViewLayout(view, params); startx = event.getRawX(); starty = event.getRawY(); break; case MotionEvent.ACTION_UP: break; } return true; } }); mWM.addView(view, params); } public static void onDestroy(View view){ if(mWM!=null&&view!=null) { mWM.removeView(view); view = null; } }}
阅读全文
0 0
- 自定义吐司
- 自定义吐司
- 自定义吐司:
- 自定义吐司
- 自定义吐司
- 自定义吐司
- 自定义吐司
- 自定义吐司
- 自定义控件-自定义吐司
- Android自定义吐司(Toast)
- Android自定义吐司(Toast)
- 自定义吐司Toast
- 自定义好看的吐司
- android自定义吐司的使用
- 安卓 自定义吐司样式
- 自定义吐司Toast(二)
- 王学岗自定义吐司和SnackBar
- 吐司
- Spark程序优化基础
- Clojure 为何不是面向对象的?
- 基于DirectShow获取音频视频输入设备列表
- spring报错ava.lang.NoClassDefFoundError:
- 剑指Offer面试题35第一个只出现一次的字符,面试题36数组中的逆序对
- 自定义吐司
- el 与 jstl
- Struts2学习总结(六):ValueStack值栈
- SharePreference
- Linux 文本编辑器vim
- x264源代码简单分析:概述
- select与epoll
- VMware Ubuntu安装详细过程
- 题目