(4.1.6)Android控件相对与绝对坐标详解
来源:互联网 发布:linux新建脚本命令 编辑:程序博客网 时间:2024/05/21 07:58
- 一dip dp px sp区别
- 二控件坐标 与 点击事件坐标
- 1 控件坐标
- 11 相对父布局的相对坐标
- 12 相对屏幕和窗口的绝对坐标
- 2 点击事件坐标
一、dip, dp, px, sp区别
我们在Android代码中获取到的宽高坐标等基本全都是px
- dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这 这个,不依赖像素。
- dip(value)=(int) (px(value)/1.5 + 0.5)
- dp: 很简单,和dip是一样的。
- px: pixels(像素),不同的设备不同的显示屏显示效果是相同的,这是绝对像素,是多少就永远是多少不会改变。
- sp: scaled pixels(放大像素). 主要用于字体显示best for textsize
public static int dip2px(Context context, float dipValue){ final float scale = context.getResources().getDisplayMetrics().density; return (int)(dipValue * scale + 0.5f); } public static int px2dip(Context context, float pxValue){ final float scale = context.getResources().getDisplayMetrics().density; return (int)(pxValue / scale + 0.5f); }
二、控件坐标 与 点击事件坐标
2.1 控件坐标
2.1.1 相对父布局的相对坐标
- getTop:获取到的,是view自身的顶边到其父布局顶边的距离
- getLeft:获取到的,是view自身的左边到其父布局左边的距离
- getRight:获取到的,是view自身的右边到其父布局左边的距离
- getBottom:获取到的,是view自身的底边到其父布局顶边的距离
2.1.2 相对屏幕和窗口的绝对坐标
- android中getLocationInWindow 和 getLocationOnScreen的区别
- getLocationOnScreen ,计算该视图在全局坐标系中的x,y值,(注意这个值是要从屏幕顶端算起,也就是说包括了通知栏的高度)//获取在当前屏幕内的绝对坐标
- getLocationInWindow ,计算该视图在它所在的widnow的坐标x,y值,//获取在整个窗口内的绝对坐标(譬如,在dialog中)
int[] location = new int[2]; view.getLocationOnScreen(location); int x = location[0]; int y = location[1];
2.2 点击事件坐标
- getX():获取点击事件相对控件左边的x轴坐标,即点击事件距离控件左边的距离
- getY():获取点击事件相对控件顶边的y轴坐标,即点击事件距离控件顶边的距离
- getRawX():获取点击事件相对整个屏幕左边的x轴坐标,即点击事件距离整个屏幕左边的距离
- getRawY():获取点击事件相对整个屏幕顶边的y轴坐标,即点击事件距离整个屏幕顶边的距离
阅读全文
0 0
- (4.1.6)Android控件相对与绝对坐标详解
- 详解CSS绝对定位与相对定位
- appium 的 move_to 相对坐标?绝对坐标?
- appium 的 move_to 相对坐标?绝对坐标?
- jquery获取元素的绝对/相对位置(坐标)
- URL路径(绝对与相对)
- 绝对与相对
- 绝对与相对
- 绝对与相对路径
- 相对与绝对
- 相对 与 绝对
- jQuery获得绝对、相对位置的坐标
- android获得控件在屏幕中的绝对坐标
- android获得控件在屏幕中的绝对坐标
- Android获得控件在屏幕中的绝对坐标
- android获得控件在屏幕中的绝对坐标
- android获得控件在屏幕中的绝对坐标
- android获得控件在屏幕中的绝对坐标
- Java中常见的数组排序算法(包括冒泡,选择,插入,快速排序)
- 每天一道LeetCode-----有序数组右移n位后查找某个元素
- Android动画使用详解
- 版本更新
- 关于jsdoc3,yuidoc使用感受
- (4.1.6)Android控件相对与绝对坐标详解
- caffe学习系列:训练自己的图片集(超详细教程)
- codevs 2604 舞会邀请(tarjan)
- web前端开发基础环境配置
- <html lang="zh-cn">和<meta chartset="utf-8">
- TensorFlow实现经典深度学习网络(6):TensorFlow实现基于LSTM的语言模型
- RecyclerView万能分割线
- KindEditor示例
- 基于Spring-Boot和Redis缓存Mysql数据库数据