7

我必须添加一个覆盖(ImageView),以便它稍微移动到包含布局的左边界的左侧。

在此处输入图像描述

做这个的最好方式是什么?

尝试了一些简单的事情,比如将 ImageView 放在布局中并使用负边距

android:layout_marginLeft="-20dip"

这使得:

在此处输入图像描述

(更正:图片中的文字应该是 20dip 而不是 20px)

AbsoluteLayout 已弃用。有没有像z-order这样的东西?或者我该怎么办?

提前致谢。

编辑:我尝试使用相对布局。一样的效果。这是 xml 减少到最低限度:

<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:clipChildren="false"
android:paddingLeft="50dip"
>

<ImageView
    android:id="@+id/myId"
    android:layout_width="60dip"
    android:layout_height="60dip"
    android:layout_marginLeft="-30dip"
    android:clipChildren="false"
    android:src="@drawable/pic" />

</RelativeLayout>

结果 在此处输入图像描述

当包含布局的背景图像小于屏幕而不是填充时,也会发生这种情况。

4

4 回答 4

14

使用 RelativeLayout 而不是 LinearLayout (允许重叠)并将其添加到 RelativeLayout 修复它:

android:clipToPadding="false"
于 2012-04-22T07:20:09.957 回答
1

在 xml 中设置“android:clipChildren = false”

于 2012-04-22T06:38:12.187 回答
1

代替

机器人:layout_marginLeft="-30dip"

尝试

安卓:paddingLeft="-30dp"

于 2015-12-31T11:14:24.553 回答
0

在宽度= 30dp的线性布局左侧使用透明(android:background =“#00000000”)图像视图。并在相对布局的情况下使 myId 左对齐。如果您使用线性布局,请将方向设为水平,并让透明图像视图成为其中的第一个条目。

于 2015-10-19T14:54:48.583 回答