我希望我的应用能够展示图片。照片的尺寸应该更大,照片描述就像Instagram一样。但它不适用于我的代码。 我目前的结果如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_weight="2"
android:layout_width="match_parent"
android:layout_height="0dp">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/ivFish"/>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="fish name"
android:id="@+id/textFishName"
android:layout_marginLeft="5dp"
android:layout_toRightOf="@id/ivFish"
android:layout_toLeftOf="@+id/textPrice"/>
<TextView
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="price"
android:id="@+id/textPrice"
android:textColor="@color/colorAccent"
android:layout_alignParentRight="true"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
/>
<TextView
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="Small Text"
android:id="@+id/textSize"
android:layout_marginLeft="5dp"
android:layout_below="@id/textFishName"
android:layout_toRightOf="@id/ivFish"
android:layout_toEndOf="@id/ivFish"
android:textColor="#666"/>
<TextView
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="sd"
android:id="@+id/textType"
android:layout_marginLeft="5dp"
android:layout_below="@id/textSize"
android:layout_toRightOf="@id/ivFish"
android:textColor="#666"/>
</LinearLayout>
</LinearLayout>
答案 0 :(得分:1)
如果您需要将图片显示为match_parent
,则需要将android:scaleType
属性fitXY
添加到ImageView中,如下所示:
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitXY"
android:id="@+id/ivFish"/>
答案 1 :(得分:1)
正如我所见,您想裁剪图像周围的空白区域。如果我更正,您需要添加
android:adjustViewBounds="true"
到你的ImageView。您还应该添加您的欲望scaleType。
答案 2 :(得分:0)
您缺少父布局的weightSum属性。
android:layout_weight适用于android:weightSum。所以首先将WeightSum添加到父布局。
答案 3 :(得分:0)
使用两个线性布局会使布局变得复杂。
如果您需要将图像对齐以逐个占据该图像下方的宽度和所有文本,则以下内容将起作用。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
>
<ImageView
android:scaleType="fitXY"
android:layout_width="match_parent"
android:layout_weight="1"
android:layout_height="0dp"
android:id="@+id/ivFish"
android:src="@drawable/icon"
android:gravity="center"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_weight="2"
android:layout_height="0dp"
android:orientation="vertical"
android:gravity="center"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="fish name"
android:id="@+id/textFishName"
android:layout_marginLeft="5dp"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="price"
android:id="@+id/textPrice"
android:textColor="@color/colorAccent"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="Small Text"
android:id="@+id/textSize"
android:layout_marginLeft="5dp"
android:textColor="#666"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="sd"
android:id="@+id/textType"
android:layout_marginLeft="5dp"
android:textColor="#666"/>
</LinearLayout>
</LinearLayout>
答案 4 :(得分:0)