ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Android:将视图放置在任意位置

2019-11-06 16:25:27  阅读:169  来源: 互联网

标签:layout coordinates android


我一直试图将视图放置在任意位置.

我的目标是:在给定与JPG / PNG相关的坐标的情况下,以其他视图(例如图库或视频)覆盖JPG / PNG的某个矩形.

我不想使用AbsoluteLayout,因为它已被描述.

因此,我使用RelativeLayout,将虚拟文本框定义为占位符,并将视图RIGHT_TO放在文本框的下方.

+--------+
|TextView|
|        | (x,y)
+--------+-----------------------+
         |                       |
         |     My View           |
         |                       |
         +-----------------------+

我的问题是:是否有更健壮和优雅的方法来做到这一点?

上面建议的方法的问题在于它非常脆弱:需要为每个新屏幕重新计算坐标.我的视图覆盖在下面.它需要准确放置,这很难做到.

>每当旋转或缩放时,我都需要重新布局屏幕.更差:

>在初始化时间上,放置图像的典型时间,屏幕坐标无效.将实体放置在屏幕上之后,坐标才有效.为了将实体准确地放置在屏幕上,我们需要坐标.鸡鸡蛋问题:(
>旋转时,坐标包括边距而不是视图本身的宽度(例如:在人像AVD上,显示人像ImageView,然后按CTRL F12进行旋转.ImageView的左,右,顶部和底部完全是不符合预期).
>缩放动画时,将缩放坐标.

因此,我想找到一种更好的方法.

Thanks
    M.

解决方法:

尚未完全了解自己在做什么,似乎您正在使用RelativeLayout为自己做额外的工作.您尝试在屏幕上放置的内容与任何内容都不相关,它基于图像中的特定坐标,因此,即使您使用其他布局之一,您实际上仍会在绝对坐标中放置某些内容.

至于AbsoluteLayout被弃用,据我所读,只是因为它与可变屏幕尺寸有关的缺点,所以不鼓励使用它.他们无意实际删除它,即使这样做,您也可以获取源代码并将其编译到您的项目中.

标签:layout,coordinates,android
来源: https://codeday.me/bug/20191106/1999314.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有