1、使用方法
(1)构造函数
public PopupWindow(View contentView, int width, int height)
参数解释:contentView:你希望PopupWindow显示的内容,可以是一个自定义view的对象;
width、height:PopupWidow的宽度和高度,单位是像素(px);
(因为我用的是上面这个构造函数,所以这里只介绍这一个。当然还有其他的构造函数,使用的时候根据自己的需求选择合适的构造函数来创建PopupWindow对象即可。)
(2)使用方式
View view = LayoutInflater.from(cxt).inflate(R.layout.self_notice_option, null);
PopupWindow popupWindow = new PopupWindow(view, Utils.dp2pix(cxt, 130), Utils.dp2pix(cxt, 80)); 说明
:
R.layout.self_notice_option:获取自定义的布局资源id(PopupWindow显示的内容) Utils.dp2pix(cxt,130):这是我自己定义的一个将dp转换为px的工具函数
2、主要方法
(1)popupWindow.setOutsideTouchable(true);设置PopupWindow显示区域外的部分是否可点击,点击域外区域可使popupwindow消失。
(2)popupWindow.setFocusable(true);设置PopupWindow内容是否可点击。如需相应PopupWindow显示区域的点击事件,则给该函数传递参数 true。
(3)popupWindow.showAsDropDown(v);设置PopupWindow的显示位置。调用该方法,则PopupWindow将会在事件触发控件的下方显示,紧挨着该控件。如需PopupWindow在任意位置出现,则调用showAtLocation(View parent, int gravity, int x, int y)。
3、效果展示(图中白色部分)
项目下载地址:https://pan.baidu.com/s/1pKCUGWF
![菊子曰](https://i-blog.csdnimg.cn/blog_migrate/fa444947694a8dd1dce3794b94895876.png)