0

私の目的は、SVG 背景画像を画面の幅全体に表示することConstraintLayoutです。AButtonがこの背景画像に重ねられているため、下のモックアップで確認できます。

ここに画像の説明を入力

背景画像は、星を含む画像です。その開始側と終了側は root に制限されるGroupViewため、画面の幅全体を埋めます。

問題は次のとおりです。下側を画面の下側にバインドするかどうかに関係なく、次の図に示すように、背景画像が歪んで表示されます。

ここに画像の説明を入力

ここに私が書いたコードがあります:

<ImageView
    android:id="@+id/imageView16"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:background="@drawable/ic_background_stars"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintTop_toBottomOf="@id/linearLayout4"  // "linearLayout4" is just a widget shown above, it's not an important element for this StackOverflow question
    />

<Button
    android:id="@+id/button_home_share"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="24dp"
    android:background="@color/colorRoyalRedLight"
    android:text="TextView"
    android:textAllCaps="false"
    android:textColor="@color/white"
    app:layout_constraintStart_toStartOf="@+id/imageView16"
    app:layout_constraintEnd_toEndOf="@+id/imageView16"
    app:layout_constraintTop_toTopOf="@+id/imageView16"
    app:layout_constraintBottom_toBottomOf="@+id/imageView16"
    />

私の質問

SVG 画像を背景画像として使用して、画面全体の幅を埋めて、歪みなく表示するにはどうすればよいですか? もちろん、高さは (適切なプロポーションを維持するために) 自動的に調整できますが、(Y 方向と X 方向で) ボタンよりも短くしないでください。

4

1 に答える 1