Android中PopupWindow使用方法详解

参考原文Android PopupWindow用法解析进行学习,通过实例及PopupWindow源码分析了PopupWindow的使用。文章最后的“补充Case: 弹窗不消失,但是事件向下传递”很赞。

不过,源码已经发生了变化,文章中提到的PopupViewContainer类,在目前的源码(Android6.0)中使用的是PopupBackgroundView和PopupDecorView共同完成的。

而在6.0版本的PopupWindow的preparePopup方法中,无论是否setBackgroundDrawable,最终都要创建PopupDecorView实例来生成视图,而PopupDecorView实现了onTouchEvent,所以用6.0版本开发,运行在6.0的设备上,无论是否setBackgroundDrawable,点击popupWindow之外的区域,popupWindow都会消失。

源码截图:

PopupWindow.preparePopup方法:

PopupDecorView类:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

坐在外婆的沙滩,看最白的帆影。

Android中PopupWindow使用方法详解

相关文章:

你感兴趣的文章:

标签云: