美文网首页弹窗
Popupwindow的基础知识

Popupwindow的基础知识

作者: 残非 | 来源:发表于2019-10-11 16:19 被阅读0次

    1.PopupWindow与AlertDialog的区别

    PopupWindow和AlertDialog很相似,都是一个悬浮的窗口遮挡在当前页面,PopupWindow是可以指定显示位置的,随便哪个位置都可以,更加灵活。

    2.构造函数

      public PopupWindow(View contentView) {
        this(contentView, 0, 0);
    }
    public PopupWindow(View contentView, int width, int height) {
        this(contentView, width, height, false);
    }
    public PopupWindow(View contentView, int width, int height, boolean focusable) {
       ......
    }
    

    首要注意:看这几个构造函数,但要生成一个PopupWindow最基本的三个条件是一定要设置的:View contentView,int width, int height ;少任意一个就不可能弹出来PopupWindow!!!!

    3.创建方法

    View inflate = LayoutInflater.from(this).inflate(R.layout.pop, null, false);
    final PopupWindow popupWindow = new PopupWindow(inflate, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
    popupWindow.showAsDropDown(mBtn2,0,0);
    

    4.显示函数

    //相对于某个控件的位置(正左下方),无偏移
    showAsDropDown(View anchor);
    //相对某个控件的位置,有偏移;xoff表示x轴的偏移,正值表示向左,负值表示向右;yoff表示相对y轴的偏移,正值向下,负值向上;
    showAsDropDown(View anchor);
    //相对于父控件的位置(例如正中央Gravity.CENTER,下方Gravity.BOTTOM等),可以设置偏移或无偏移
    showAsDropDown(View anchor);
    //点击消失
    popupWindow.dismiss();

    相关文章

      网友评论

        本文标题:Popupwindow的基础知识

        本文链接:https://www.haomeiwen.com/subject/ajqxmctx.html