相关疑难解决方法(0)

为什么我需要将ImageView包装到FrameLayout中?

这是一个简单的布局:

      <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <ImageView
                android:id="@+id/companyIcon"
                android:layout_width="wrap_content"
                android:layout_height="40dp" <!-- notice I've limited a height -->
                android:scaleType="fitStart"
                android:adjustViewBounds="true"
                android:layout_alignParentLeft="true" />

            <TextView
                android:id="@+id/companyName"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_toRightOf="@id/companyIcon"
                android:layout_marginLeft="3dp"
                android:layout_centerVertical="true"
                android:textStyle="bold"
                android:textColor="#20526d" />
        </RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

我将设置的图像高度setImageBitmap()超过40dp.使用这个布局我之间的额外的空间ImageViewTextView,在哪里它从何而来? 在此输入图像描述

但经过我的包裹ImageViewFrameLayout我没有这个不必要的额外空间:

<RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <FrameLayout
                android:id="@+id/image_container"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content">

                <ImageView
                    android:id="@+id/companyIcon"
                    android:layout_width="wrap_content"
                    android:layout_height="40dp"
                    android:scaleType="fitStart"
                    android:adjustViewBounds="true"
                    android:layout_alignParentLeft="true" />
            </FrameLayout>

            <TextView
                android:id="@+id/companyName"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_toRightOf="@id/image_container"
                android:layout_marginLeft="3dp"
                android:layout_centerVertical="true"
                android:textStyle="bold"
                android:textColor="#20526d" />
        </RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

结果如下:

在此输入图像描述

你们能解释为什么我应该把ImageViewFrameLayout有事情故意的吗?非常感谢你.

android android-layout

29
推荐指数
1
解决办法
1万
查看次数

标签 统计

android ×1

android-layout ×1