解决在Android 7.0上PopupWindow.showAsDropDown不起作用
来源:互联网 发布:dota2网络连接超时 编辑:程序博客网 时间:2024/06/10 03:31
网上搜索的方法:
一: 无效, 测试机:小米6 不知道为什么?
计算控件的坐标,通过 showAtLocation()方法指定popupWindow的文章
if (Build.VERSION.SDK_INT < 24) { popupWindow.showAsDropDown(view);} else { int[] location = new int[2]; view.getLocationOnScreen(location); int x = location[0]; int y = location[1]; popupWindow.showAtLocation(view, Gravity.NO_GRAVITY, 0, y + view.getHeight());}
二: 有效
重写 showAsDropDown() 方法
@Override public void showAsDropDown(View anchor) { if (Build.VERSION.SDK_INT > 24) { Rect rect = new Rect(); anchor.getGlobalVisibleRect(rect); int h = anchor.getResources().getDisplayMetrics().heightPixels - rect.bottom; setHeight(h); } super.showAsDropDown(anchor); }
思考:看第二种方法要重写, 需要继承 ,好麻烦,所以看下面:
只需要在 showAsDropDown()方法前,巧妙变通;即可不用继承重写,就可能解决问题。
if (Build.VERSION.SDK_INT > 24) { Rect rect = new Rect(); mView.getGlobalVisibleRect(rect); int h = mView.getResources().getDisplayMetrics().heightPixels - rect.bottom; mPopupWindow.setHeight(h); } mPopupWindow.showAsDropDown(mView);
阅读全文
0 0
- 解决在Android 7.0上PopupWindow.showAsDropDown不起作用
- 在Android 7.0上PopupWindow.showAsDropDown不起作用
- 在Android 7.0上PopupWindow.showAsDropDown不起作用的解决方法
- 在Android 7.0上PopupWindow.showAsDropDown不起作用的解决方法
- 在Android 7.0上PopupWindow.showAsDropDown不起作用的解决方法
- Android 7.0 PopupWindow 的showAsDropDown(View v)适配
- android popupwindow showAsDropDown offsetx无效的问题
- 解决android 7.0 popwindow的showAsDropDown没有效果问题
- android 7.0 PopupWindow中ShowAsDropDown()方法不适配的解决方案
- [问题解决]Android7.0上PopupWindow的showAsDropDown位置问题
- Android7.0上PopupWindow的showAsDropDown位置问题
- Android7.0上PopupWindow的showAsDropDown位置问题
- Android7.0上PopupWindow的showAsDropDown位置问题 参数无效
- Android7.0 popupwindow showAsDropDown在屏幕上方弹出解决方法
- PopupWindow在android7.0+的update、showAsDropDown方法
- android7.0-PopupWindow-showAsDropDown
- Android下PopupWindow隐藏及显示(showAtLocation/showAsDropDown)
- Android下PopupWindow隐藏及显示(showAtLocation/showAsDropDown)
- 计算机硬件--笔记
- 内存管理
- C语言位运算符
- Eclipse Maven "Create a simple project" 没有web.xml文件
- t-分布邻域嵌入算法(t-SNE algorithm)简单理解
- 解决在Android 7.0上PopupWindow.showAsDropDown不起作用
- 笔记:对numpy中shape的理解
- >mysql -uroot -p Enter password: ERROR 1045 (28000): Access denied ,被mysql连接问题折磨到问题解决,分享
- 浅谈ES6新特性
- 台湾大学深度学习课程 学习笔记 lecture1-2 Neural Network Basics
- 汇编 in out的用法示例
- 哈尔滨理工大学第七届程序设计竞赛决赛(网络赛-高年级组)B题幸运大奖
- cuda dirver API总结
- 数据结构实验之查找一:二叉排序树