0

问题

我想ImageView根据百分比或重量进行调整,但不能。

主布局由内部的2个布局组成,它们相当于第一行和第二行。

在第一行还有另外 4 个布局,每个布局都有一个ImageView.

我希望这些ImageView相应地扩展它们的高度和宽度

按其父母宽度高度的百分比或重量我该怎么办?

是否可以让它的宽度按我想要的重量缩放,让我们的高度

相对于其宽度扩展?

图片

在此处输入图像描述

XML 布局

<LinearLayout
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:background="@drawable/foot_bg">

        <LinearLayout
                android:orientation="horizontal"
                android:layout_width="match_parent"
                android:layout_height="0dp" 
                android:gravity="center_horizontal" 
                android:layout_weight="1">

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

                <ImageView
                        android:layout_width="70dp"
                        android:layout_height="70dp"
                        android:id="@+id/imageView"
                        android:src="@drawable/ic_sleepmode" 
                        android:scaleType="matrix" 
                        android:layout_weight="1"/>

                <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Sleep Mode"
                        android:id="@+id/textView3" 
                        android:textColor="#ffffff" 
                        android:textSize="10sp"/>               
            </LinearLayout>

            <LinearLayout android:orientation="vertical" 
                          android:layout_width="0dp" 
                          android:layout_height="match_parent"
                          android:layout_weight="1" 
                          android:id="@+id/linearLayout2" 
                          android:gravity="center">

                <ImageView
                        android:layout_width="70dp"
                        android:layout_height="70dp"
                        android:id="@+id/imageView2" 
                        android:layout_gravity="center_horizontal"
                        android:src="@drawable/ic_temp"/>
                <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Temperature"
                        android:id="@+id/textView4" 
                        android:textColor="#ffffff" 
                        android:textSize="10sp"/>
            </LinearLayout>

            <LinearLayout android:orientation="vertical" 
                          android:layout_width="0dp" 
                          android:layout_height="match_parent"
                          android:layout_weight="1"
                          android:id="@+id/linearLayout5" 
                          android:gravity="center">

                <ImageView android:layout_width="70dp" 
                           android:layout_height="70dp" 
                           android:id="@+id/imageView5"
                           android:layout_gravity="center_horizontal" 
                           android:src="@drawable/ic_tracking"/>

                <TextView android:layout_width="wrap_content" 
                          android:layout_height="wrap_content"
                          android:text="Tracking Mode" 
                          android:id="@+id/textView7" 
                          android:textSize="10sp"
                          android:textColor="#ffffff"/>
            </LinearLayout>

            <LinearLayout android:orientation="vertical" 
                          android:layout_width="0dp" 
                          android:layout_height="match_parent"
                          android:layout_weight="1" 
                          android:id="@+id/linearLayout6" 
                          android:gravity="center">

                <ImageView android:layout_width="70dp" 
                           android:layout_height="70dp" 
                           android:id="@+id/imageView6"
                           android:layout_gravity="center_horizontal" 
                           android:src="@drawable/ic_settings"/>

                <TextView android:layout_width="wrap_content" 
                          android:layout_height="wrap_content"
                          android:text="Settings" 
                          android:id="@+id/textView8" 
                          android:textSize="10sp"
                          android:textColor="#ffffff"/>
            </LinearLayout>

        </LinearLayout>

        <LinearLayout android:orientation="vertical" 
                      android:layout_width="match_parent"
                      android:layout_height="0dp"
                      android:layout_weight="1" 
                      android:id="@+id/linearLayout" 
                      android:gravity="center">

            <ToggleButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="New ToggleButton"
                    android:id="@+id/tgbPower" 
                    android:layout_gravity="center_horizontal" 
                    android:checked="false"/>
        </LinearLayout>

    </LinearLayout>
4

1 回答 1

0

编辑:

试试这个来检查图像视图是否随着权重调整大小:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="0dp"
   android:background="@drawable/foot_bg"
   android:orientation="vertical"
   android:weightSum="1" >

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="0.5"
    android:gravity="center_horizontal"
    android:orientation="horizontal"
    android:weightSum="1" >

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

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="wrap_content"
            android:layout_height="0dip"
            android:layout_weight="0.8"
            android:scaleType="matrix"
            android:src="@drawable/ic_sleepmode" />

        <TextView
            android:id="@+id/textView3"
            android:layout_width="wrap_content"
            android:layout_height="0dip"
            android:layout_weight="0.2"
            android:text="Sleep Mode"
            android:textColor="#ffffff"
            android:textSize="10sp" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/linearLayout2"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="0.25"
        android:weightSum="1"
        android:gravity="center"
        android:orientation="vertical" >

        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="wrap_content"
            android:layout_height="0dip"
            android:layout_weight="0.8"
            android:layout_gravity="center_horizontal"
            android:src="@drawable/ic_temp" />

        <TextView
            android:id="@+id/textView4"
            android:layout_width="wrap_content"
            android:layout_height="0dip"
            android:layout_weight="0.2"
            android:text="Temperature"
            android:textColor="#ffffff"
            android:textSize="10sp" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/linearLayout5"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="0.25"
        android:weightSum="1"
        android:gravity="center"
        android:orientation="vertical" >

        <ImageView
            android:id="@+id/imageView5"
            android:layout_width="wrap_content"
            android:layout_height="0dip"
            android:layout_weight="0.8"
            android:layout_gravity="center_horizontal"
            android:src="@drawable/ic_tracking" />

        <TextView
            android:id="@+id/textView7"
            android:layout_width="wrap_content"
            android:layout_height="0dip"
            android:layout_weight="0.2"
            android:text="Tracking Mode"
            android:textColor="#ffffff"
            android:textSize="10sp" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/linearLayout6"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="0.25"
        android:weightSum="1"
        android:gravity="center"
        android:orientation="vertical" >

        <ImageView
            android:id="@+id/imageView6"
            android:layout_width="70dp"
            android:layout_height="70dp"
            android:layout_gravity="center_horizontal"
            android:src="@drawable/ic_settings" />

        <TextView
            android:id="@+id/textView8"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Settings"
            android:textColor="#ffffff"
            android:textSize="10sp" />
    </LinearLayout>
</LinearLayout>

<LinearLayout
    android:id="@+id/linearLayout"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="0.5"
    android:gravity="center"
    android:orientation="vertical" >

    <ToggleButton
        android:id="@+id/tgbPower"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:checked="false"
        android:text="New ToggleButton" />
</LinearLayout>

</LinearLayout>
于 2014-07-22T16:56:35.710 回答