3

私はAndroidを初めて使用し、これまですべてがうまくいきました。レイアウトを処理する必要があります。私が欲しいのはこのレイアウトです:

レイアウト: 画像は適切に拡大縮小され、その比率を維持する必要があります。

そのため、このXMLコードを試しましたが、希望どおりに機能しません。画像はその比率を維持しますが、垂直の場合は左側と右側が画面から外れ、水平の場合は上下がカットされます。

それがどのようにレイアウトするか: ここに画像の説明を入力してください

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_centerHorizontal="true"
    android:orientation="vertical"
    android:background="@color/background">


     <ImageView
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_gravity="center"
        android:src="@drawable/logo"
        android:gravity="center"
        android:scaleType="centerCrop"
        android:contentDescription="@string/app_logo"
        android:layout_weight="2.5" />

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="4"
        android:gravity="center">  

        <Button
            android:id="@+id/id1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_marginBottom="20dp"
            android:layout_marginLeft="50dp"
            android:layout_marginRight="50dp"
            android:text="@string/text1"
            android:textSize="40sp" 
        />

          <Button
            android:id="@+id/id2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_marginLeft="50dp"
            android:layout_marginRight="50dp"
            android:text="@string/text2"
            />

        <Button
            android:id="@+id/id3"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="50dp"
            android:layout_marginRight="50dp"
            android:layout_gravity="center"
            android:text="@string/text3" />
    </LinearLayout>
</LinearLayout>

私はたくさんグーグルで検索しましたが、探していたものが見つかりませんでした。助けてください!

4

3 に答える 3

1

それはandroid:scaleType="fitCenter"あなたが探しているもののようです

于 2013-03-05T09:33:06.223 に答える
0

に設定android:scaleType="fitXY"してみてくださいImageView

于 2013-03-05T08:47:51.637 に答える
0

垂直状態と水平状態の 2 つのレイアウトを設計し、Android プロジェクトの 2 つの異なるフォルダーに配置する必要があります。

通常のレイアウトをレイアウト フォルダーに入れている間は、横向きのレイアウトをフォルダーに入れる必要がありlayout-landます。

于 2013-03-05T08:45:09.800 に答える