android Navigator的高度计算和判断是否显示
来源:互联网 发布:js获取元素的margin值 编辑:程序博客网 时间:2024/05/17 02:24
进入互联网行业几天了, 从手机行业转到互联网行业也在慢慢的适应: IDE工具的使用(之前一直在Ubuntu 命令行进行开发), 版本管理工具,代码架构等等这些都需要重新适应。 好在本人还有一些底子,所以适应起来还算快^_^. 今天就从昨天遇到的一个小问题开始分享
先上图
如图所示,在使用popupwindow显示menu时, 底部navigator与确定按钮重叠。
解决此问题思路就是判断底部navigator是否已经打开, 如果打开则计算navigator的高度, 然后在调用popupwindow.showAtLocation时, 将y坐标做位移navigator的高度
具体方法可以看下面两个方法: 分别是判断navigator的高度和navigator是否显示---mcoy是本人的英文名称^_^
/**
* add by mcoy for bugID=427
* @return 底部状态栏的高度
*/
private int getNavigationBarHeight() {
if(!hasSoftKeys((WindowManager) context.getSystemService(Context.WINDOW_SERVICE))){
return 0;
}
Resources resources = context.getResources();
int resourceId = resources.getIdentifier("navigation_bar_height","dimen", "android");
int height = resources.getDimensionPixelSize(resourceId);
Log.e("mcoy", "the height is " + height);
return height;
}
/**
* add by mcoy for bugID=427, 判断底部navigator是否已经显示
* @param windowManager
* @return
*/
private boolean hasSoftKeys(WindowManager windowManager){
Display d = windowManager.getDefaultDisplay();
DisplayMetrics realDisplayMetrics = new DisplayMetrics();
d.getRealMetrics(realDisplayMetrics);
int realHeight = realDisplayMetrics.heightPixels;
int realWidth = realDisplayMetrics.widthPixels;
DisplayMetrics displayMetrics = new DisplayMetrics();
d.getMetrics(displayMetrics);
int displayHeight = displayMetrics.heightPixels;
int displayWidth = displayMetrics.widthPixels;
return (realWidth - displayWidth) > 0 || (realHeight - displayHeight) > 0;
}
- android Navigator的高度计算和判断是否显示
- 判断二叉树是否平衡,计算树的高度
- 平衡二叉树计算高度的同时判断是否平衡
- Android如何判断NavigationBar是否显示(获取屏幕真实的高度)
- Android如何判断NavigationBar是否显示(获取屏幕真实的高度)
- Android如何判断NavigationBar是否显示(获取屏幕真实的高度)
- 判断状态栏是否显示以及获取状态栏高度的方法
- Android获取屏幕实际高度跟显示高度,判断Android设备是否拥有虚拟功能键
- Android获取屏幕实际高度跟显示高度,判断Android设备是否拥有虚拟功能键
- Android获取屏幕实际高度跟显示高度,判断Android设备是否拥有虚拟功能键
- Android获取屏幕实际高度跟显示高度,判断Android设备是否拥有虚拟功能键
- Android下如何计算要显示的字符串所占的宽度和高度
- Android下如何计算要显示的字符串所占的宽度和高度
- android键盘弹出判断,计算键盘外的高度。
- Android 软键盘的监听(监听高度,是否显示)
- Android 软键盘的监听(监听高度,是否显示)
- android 计算listview的高度
- android判断是否连接wifi和网络状态的判断
- 作为一个医疗外推,我也需要爱情
- Java引用外包
- Java路上,必看书籍
- 文本框中默认显示出用户名,当输入名字的时候会覆盖用户名
- web-inf存放jsp的注意事项
- android Navigator的高度计算和判断是否显示
- 部分计算机视觉数据集汇总
- 单调栈相关
- Spring Security 2.0.5 学习笔记(一) - URL级别权限控制
- Android中Preference的使用以及监听事件分析
- UCOSii(四)——任务的通信与同步
- Netty的分隔符和定长解码器应用
- 《大话设计模式》--考研求职两不误--开放-封闭原则<The Open-Closeed Principle>(4)
- crontab(定时任务操作)