gpt4 book ai didi

android - 当 layout_marginLeft 或 layout_marginTop 设置得太高时,RelativeLayout 中的 ImageView 会奇怪地剪裁

转载 作者:太空狗 更新时间:2023-10-29 14:29:51 26 4
gpt4 key购买 nike

因此,我允许用户在屏幕周围拖动包含在 ImageView 中的 RelativeLayout(以及其他一些内容)。该布局将 ImageView 包裹在其中,还有另一个相对布局将内容放在 ImageView 之上。像这样:

<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="center"
/>

<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">

... a couple text views that also fill parent

</RelativeLayout>
</RelativeLayout>

我在 ImageView 上动态设置 src。

用户可以在另一个 RelativeLayout 中拖动布局,这会占用整个屏幕。当用户移动它时,我会更改左边距和上边距。 我看到一个奇怪的问题,当布局到达屏幕的右边缘或底部边缘时,布局(以及它正在包装的 ImageView)是...

  • 在布局右侧超出屏幕右侧时在左侧裁剪
  • 在布局的底部超出屏幕底部时在顶部剪裁。

将布局拖动到屏幕的左边缘或上边缘时完全没有问题。

我曾尝试将 ImageView 的 scaleType 更改为所有其他值,然后才意识到问题似乎是封闭的 RelativeLayout 实际上导致了它(例如,当我将 ImageView 的 scaleType 更改为 fitXY 时,图像被压缩成很小的尺寸因为布局被拖出了屏幕的边缘)。

我还尝试切换我能找到的每个布局参数,包括 clipChildren、clipPadding、adjustViewBounds、margin、padding 等,但没有真正起作用的东西。我正在为这个我认为应该只使用默认参数的简单问题绞尽脑汁。需要明确的是,我希望发生的事情是,当我将布局拖出屏幕边缘时,屏幕外的部分不再可见,而屏幕上的内容保持原样。

最佳答案

我认为 Margin 通常不会允许您的部分 View 在屏幕外呈现。您必须最大化边距,以便边距 + 大小 < 父大小(因此它保留在屏幕上)。但是,您可以尝试设置一个负的右边距和底部边距(怀疑它会起作用)。

关于android - 当 layout_marginLeft 或 layout_marginTop 设置得太高时,RelativeLayout 中的 ImageView 会奇怪地剪裁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8072701/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com