android – 什么是LayoutParams的X和Y坐标基于?

android – 什么是LayoutParams的X和Y坐标基于?,第1张

概述我很抱歉再次发布这个问题,我发布了一个几乎相同的问题,但也许它太长了,我没有回答.我会直截了当地提出这个问题 所以我制作了像Facebook的ChatHead这样的浮动图标,但我的X和Y坐标有些问题.我需要获得顶部,底部,左侧和右侧边缘的手机屏幕以解决问题.我没有得到的是这些X和Y基于什么?我的Note 2屏幕是1280×720,但是当我将头部移动到顶部和底部边缘时,我从Log获得了这些随机数: 我很抱歉再次发布这个问题,我发布了一个几乎相同的问题,但也许它太长了,我没有回答.我会直截了当地提出这个问题
所以我制作了像Facebook的Chathead这样的浮动图标,但我的X和Y坐标有些问题.我需要获得顶部,底部,左侧和右侧边缘的手机屏幕以解决问题.我没有得到的是这些X和Y基于什么?我的Note 2屏幕是1280×720,但是当我将头部移动到顶部和底部边缘时,我从Log获得了这些随机数:

12-28 11:41:49.471: D/COORDINATES X Y(9879): 73 -571 (top)  12-28 11:42:05.991: D/COORDINATES X Y(9879): 23 572 (Bottom)

(由于我的代码精度导致的值存在偏差,这是我上面提到的问题,但它仅在1-5的范围内)
我试图将2个绝对Y值相加,但结果远不及1280这是我的屏幕分辨率所以现在我对此非常困惑?
希望有人可以帮助我,我花了几个小时寻找这个,但仍然没有出现
更多细节:这是头部的代码:( x = 0,y = 0,它将出现在屏幕的中央)

final WindowManager.LayoutParams params = new WindowManager.LayoutParams(                WindowManager.LayoutParams.WRAP_CONTENT,WindowManager.LayoutParams.WRAP_CONTENT,WindowManager.LayoutParams.TYPE_PHONE,WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,PixelFormat.TRANSLUCENT);        params.x = 0;        params.y = 0;        windowManager.addVIEw(chathead,params);

编辑:@Jason说我应该使用屏幕的尺寸(如果我的理解是正确的话,屏幕的宽度和高度).但我需要X和Y来移动头部并且它们不是基于屏幕的尺寸.
如果有人需要,这是完整代码的链接:http://www.piwai.info/chatheads-basics/

解决方法 我和你有类似的问题.我测试了我的应用程序WindowManager.LayoutParam.x和WindowManager.LayoutParam.y.
(我的手机是galaxy 4S,最大尺寸是1920×1280)

我想出了答案.

基础值是第一次加载时VIEw的“第一个位置值”的非常相对值.

总结

以上是内存溢出为你收集整理的android – 什么是LayoutParams的X和Y坐标基于?全部内容,希望文章能够帮你解决android – 什么是LayoutParams的X和Y坐标基于?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1127735.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存