设为首页 加入收藏

TOP

Android PopupWindow模拟Windows开始菜单显示消失效果
2014-11-24 13:15:22 来源: 作者: 【 】 浏览:0
Tags:Android PopupWindow 模拟 Windows 开始 菜单 显示 消失 效果


Android PopupWindow模拟Windows开始菜单显示消失效果DEMO下载:


具体下载目录在 /pub/Android源码集锦/2011年/11月/Android PopupWindow模拟Windows开始菜单显示消失效果/


其中有三点要注意:



1.PopupWindow的参数设置




2.当PopupWindow显示时焦点会落在其中,所以监听事件的是它里面的View,如例中的Touch事件。按键事件是占整个View的ListView监听的。很奇怪的是不是里面的LinearLayout,如果高人知道,请在下面留言,小弟不甚感激。



3.最后一点是注意按键事件。例子中重写了Activity的OnKeyDown事件,而在ListView中的OnKey方法必须拦截KeyDown事件。如果不拦截菜单出现就会消失,因为OnKey方法会因Down和Up调用两次;如果拦截的是Up事件,情况也是一样的,因为当菜单没有出现按Menu键时,先执行Activity里面的onKeyDown事件,菜单出现。注意菜单出现是Down事件,那Up呢?正好当PopupWindow出现时,ListView继续执行事件,会执行OnKey事件,如果是拦截的Action是Up则会执行,所以整个事件会两个地方执行。有人说在Activity里面的OnKeyDown事件return true进行拦截不就行了,这样事件就不会执行到PopupWindow上面,这样想没有错,如果真的是那样,那按Back键后,整个Activity就不会退出。


以上是第一种方法。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android PopupWindow重写系统菜单 下一篇Android检查存储空间小结

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: