一:一般都是先上效果图
二:实现步骤:
1.xml布局实现
<&#63;xml version="1.0" encoding="utf-8"&#63;>
2.drawable文件下的转角,然后在布局引用
<&#63;xml version="1.0" encoding="utf-8"&#63;>
3.activity的实现
/** * 弹框 */ private View mPopupHeadViewy;//创建一个view private PopupWindow mHeadPopupclly;//PopupWindow private TextView tetle, textdz;//title,打折 private TextView textwzdl, textckxq;//我知道了,查看详情 @SuppressWarnings("deprecation") private void popupHeadWindowcll() { mPopupHeadViewy = View.inflate(getActivity(), R.layout.tankuang_layout, null); tetle = (TextView) mPopupHeadViewy.findViewById(R.id.tetle); textdz = (TextView) mPopupHeadViewy.findViewById(R.id.textdz); textwzdl = (TextView) mPopupHeadViewy.findViewById(R.id.textwzdl); textckxq = (TextView) mPopupHeadViewy.findViewById(R.id.textckxq); mHeadPopupclly = new PopupWindow(mPopupHeadViewy, AbsListView.LayoutParams.MATCH_PARENT, AbsListView.LayoutParams.MATCH_PARENT, true); // 在PopupWindow里面就加上下面代码,让键盘弹出时,不会挡住pop窗口。 mHeadPopupclly.setInputMethodMode(PopupWindow.INPUT_METHOD_NEEDED); mHeadPopupclly.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); mHeadPopupclly.setBackgroundDrawable(new BitmapDrawable()); mHeadPopupclly.setOutsideTouchable(true); mHeadPopupclly.showAsDropDown(textviewid, 0, 0); textwzdl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { mHeadPopupclly.dismiss(); } }); textckxq.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { mHeadPopupclly.dismiss(); Toast.makeText(getActivity(), "查看详情", Toast.LENGTH_LONG).show(); } }); }
注意:
1、
mHeadPopupclly = new PopupWindow(mPopupHeadViewy, AbsListView.LayoutParams.MATCH_PARENT, AbsListView.LayoutParams.MATCH_PARENT, true);
这句代码就是控制弹出框是铺满屏幕还是自适应
2、
mHeadPopupclly.showAsDropDown(textviewid, 0, 0);
这句话是这个弹框基于哪个控件之下,textviewid是控件名,后面两个是坐标
这是一个简单的自定义弹框,大神勿喷,有用的希望顶一下
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!