如何将 ImageView 放置在屏幕外 xml

How to position ImageView offscreen in xml

说明:具有 Imageview 的 ConstraintLayout。 ImageView 源的宽度比设计的屏幕大。

问题:可以轻松定位 ImageView,使图像的前半部分可见,而后半部分不在屏幕内。但是,在进一步的状态下,图像的前半部分应该隐藏,而后半部分应该显示.

仅供说明: 图片:XXXXXX 屏幕:[] 第一状态:[XXX]XXX 第二状态:XXX[XXX]

我只是想 XML 并且不想以编程方式执行此操作。

我可以尝试任何解决方案吗??

我不认为你会绕过任何编程。为了避免在 activity 的函数中添加/编辑 imageView,您可以做些什么来让自己成为一个自定义 class 以包含到您的 xml 中。看看这里:https://developer.android.com/training/custom-views/create-view.html

如果你想严格保持xml,你可以设置负填充。这样,imageView 将保持相同的大小,但内容会向左或向右移动。这样做的问题是您必须将大小硬编码到 xml 中。当然,您可以在 xml 中为所有可能的屏幕尺寸创建尺寸变量,但我认为编码会容易得多。无论如何,xml 看起来像这样:

<ImageView
    app:srcCompat="@your_src"
    android:id="@+id/imageViewID"
    android:scaleType="fitXY"
    android:layout_width="width"
    android:paddingLeft="-width"
    android:layout_height="height*2" />