PopupWindow
顾名思义为弹出式菜单,
不同于Dialag对话框,PopupWindow
不会使宿主activity组件失去焦点,
也就是说PopupWindow弹出后,
你可以与宿主activity进行交互,
Dialog却不能做到这一点。
注意:PopupWindow组件的使用问题,PopupWindow是一个阻塞对话框,如果你直接在Activity创建的方法中显示它,则会报错:android.view.WindowManager$BadTokenException:Unable to add window -- token null is not valid; is your activity running?
总结: PopupWindow必须在某个事件中显示或者是开启一个新线程去调用,不能直接在onCreate方法中显示一个Popupwindow,否则永远会有以上的错误
常用设置:
// PopupWindow定义,显示view,以及初始化长和宽
PopupWindow menu = new PopupWindow(view, 200, 60);
// 必须设置,否则获得焦点后页面上其他地方点击无响应
menu.setBackgroundDrawable(new BitmapDrawable());
// 设置焦点,必须设置,否则PopupWindow内的空间无法响应事件
menu.setFocusable(true);
// 设置点击其他地方 popupWindow消失
menu.setOutsideTouchable(true);
// 显示在某个位置
menu.showAsDropDown(anchor);
除了setBackgroundDrawable(new BitmapDrawable());还可以使用下面两种解决页面无法响应问题
a、处理响应
有点麻烦,有兴趣可以自己看看http://zhoudan241.iteye.com/blog/1147730
b、最笨的方法将listView中元素拿出来放到LinearLayout中,对于非listView都无需设置setFocusable(true),从而解决问题,具体可以见http://blog.csdn.net/ihrthk/article/details/7338791
但这种方法对于动态变化的菜单需要配置多份layout文件
分享到:
相关推荐
PopupWindowSet 安卓PopupWindow组件的一般使用方式,各种自定义的效果,以及位置的设定 运行环境为:eclipse-adt
使用vue.js实现的popupwindow组件
由于在项目里想实现一个新建地址的PopupWindow效果,便想到可以使用Vue的一些特性来实现。 用到的Vue特性:组件(Component),props传值,slot内容插入,transitions过渡动画,x-templete模板。 直接上代码(完整...
Android ExpandableListView组件与PopupWindow组件的完美结合,数据来源于json。
主要为大家详细介绍了Android组件popupwindow使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
注意:PopupWindow组件的使用问题,PopupWindow是一个阻塞对话框,如果你直接在Activity创建的方法中显示它,则会报错:android.view.WindowManager$BadTokenException:Unable to add window -- token null is not ...
在开发中遇到了一个类似弹出框的效果,经确认这是仿微信的popupwindow组件,整理后分享给大家。
Android项目PopupWindow下拉列表是一个功能丰富的UI组件,它允许开发者在应用中轻松实现下拉列表的功能。此项目已进行优化,易于二次开发定制,满足各种需求。 该组件基于Android PopupWindow类进行扩展,具有以下...
源码类
一个PopupWindowDemo,希望可以帮你很清晰的学会这个小组件
主要介绍了Android 开发使用PopupWindow实现加载等待界面功能,结合实例形式分析了Android使用PopupWindow组件实现加载等待界面功能相关布局与功能实现技巧,需要的朋友可以参考下
前面的文章说过,要实现弹框相关的可以用React Native 提供的 Modal组件(Modal组件),使用Modal组件可以实现我们原生开发中的大多数效果。 要实现下拉三角,可以让美工切一个带下拉三角的背景,当然也可以自己通过...
DropDownMenu,仿美团查询。已封装好,直接引入调用即可
点击某个View组件后有一个小窗口window悬挂在对应组件下面的效果,点击悬挂串口中的内容后悬挂窗口消失,并进行其他操作。
可以在Activity、Service、Fragment、Dialog、popupWindow、Notification等组件中使用 支持HTTPFTP断点续传、多任务自动调度 支持HTTP任务组FTP文件夹,断点续传下载 支持HTTP表单上传 支持文件FTP断点续传上传 支持...
用PopupWindow实现的一个组件附近弹出选项框的效果,欢迎下载,共同学习
我们还提供了一些常用的界面组件和动画效果,以增加安卓应用的交互性和吸引力。 总之,我们的安卓项目源码旨在帮助开发人员快速构建各种类型的安卓应用。无论是社交、娱乐、教育还是商务,我们相信我们的项目源码将...
Popupwindow.setAnimationStyle()方法还不太理解使用,无法使整个PopupWindow界面播放动画效果。 现在采用折中方法实现了PopupWindow子组件播放效果。 如果各位有改进级意见希望能主动与我交流。 Author:I'am...