4.PopupWindow

PopupWindow(悬浮框)

Android的对话框有两种:AlertDialog和PopupWindow。它们的不同点在于:

                                         AlertDialog的位置固定,是非阻塞线程的,

                                         PopupWindow位置随意,是阻塞线程的。

1.常用方法

             setContentView(View contentView):设置PopupWindow显示的View

             getContentView():获得PopupWindow显示的View

             setAnimationStyle(int):设置动画效果

             showAsDropDown(View anchor):相对某个控件的位置(正左下方),无偏移

             showAsDropDown(View anchor, int xoff, int yoff):相对某个控件的位置,有偏移

             showAtLocation(View parent, int gravity, int x, int y):相对于父控件的位置(例如正中央Gravity.CENTER,下方Gravity.BOTTOM等)

                                                                                                  可以设置偏移或无偏移

             setTouchable(boolean touchable):设置PopupWindow是否响应touch事件,默认是true

                                                                      如果设置为false,所有PopupWindow上的touch事件无响应

             setFocusable(boolean):是否具有获取焦点的能力,默认为false

                                                     1.如果为false,editText等控件将无法获取焦点(不可编辑)

                                                     2.如果为true,即pop获取焦点,返回键被拦截(如果setBackgroundDrawable,点击返回pop.dismiss)

              setOutsideTouchable(boolean):PopupWindow以外的区域是否可点击(点击外部区域pop.dismiss)

                                                                       需mPopWindow.setBackgroundDrawable(newBitmapDrawable());

                                                                        (因为bg不为null会加一层ViewContainer,并对返回键做了处理:点击pop.dismiss)


2.简单使用

简单使用
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容