gpt4 book ai didi

android - 如何根据 ImageView 的内容大小将 View 放在 ImageView 之上?

转载 作者:可可西里 更新时间:2023-11-01 19:07:11 25 4
gpt4 key购买 nike

背景

假设我想使用 ImageView 显示某物的图像,并且我想在其之上放置新 View (例如,在世界地图图像上显示图钉的动画 ImageView,或者在其之上的 Switch View 智能手机图像)。

这意味着无论 ImageView 如何显示图像, View 都应该在其中,在正确的位置,与指定的大小相同,或者与 imageView 本身相关的大小

问题

与其他 View 不同,ImageView 可以有一定的大小,但它的内容是其他东西(以保持宽高比)。

我尝试了什么

我尝试使用 ConstraintLayout,但这并没有什么帮助,因为 ImageView 可以改变它的大小(例如,当改变方向时),从而破坏我给 View 与 ImageView 相比的位置。

我发现了一些库可以处理类似的事情(比如 here ),我什至在之前问过一个类似的问题( here ),但是所有这些解决方案都是针对 ImageView 中的静态图像的,但是什么我搜索的是在 ImageView 之上添加一个 View 。

问题

如何将 View 正确放置在 ImageView 的内容之上?

与 ImageView 内容的大小相比,如何缩小/放大 View ?

可以使用 ConstraintLayout 来根据 ImageView 的大小更改 View 的比例吗?

最佳答案

ImageView 周围使用 wrap_content 制作 FrameLayout。然后你可以在 ImageView 之上设置 SwitchView。您可以将它对齐到中心、侧面或角落,并使用边距来获得一些合适的位置。

它仍然不会随图像缩放,但您可以获得很好的结果。如果这不适合您,您可以通过编程方式获取 ImageView 的宽度/高度并相应地更改 SwitchView 的位置(或边距)。

关于android - 如何根据 ImageView 的内容大小将 View 放在 ImageView 之上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41569800/

25 4 0