我有一个可调整大小的应用小部件。我想在图像上方和下方放置文字。图像应占用尽可能多的空间,文本应直接位于图像的上方和下方。
我只想在 xml 中执行此操作,但无法找出适用于附件图像中显示的两种情况的布局。
所以我的问题是,我可以用什么 XML 来实现这种行为?
编辑:图像视图可能大于父容器视图。
我有一个可调整大小的应用小部件。我想在图像上方和下方放置文字。图像应占用尽可能多的空间,文本应直接位于图像的上方和下方。
我只想在 xml 中执行此操作,但无法找出适用于附件图像中显示的两种情况的布局。
所以我的问题是,我可以用什么 XML 来实现这种行为?
编辑:图像视图可能大于父容器视图。
像这样的东西:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/imageview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="center"
android:layout_alignParentCenter="true"/>
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@id/imageview"
android:text="text 1"/>
<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/imageview"
android:text="text 2"/>
</RelativeLayout>
或者这样,使用布局权重来控制大小:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:weightSum="100"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_weight="10"
android:layout_height="0px"
android:text="text 1"/>
<ImageView
android:id="@+id/imageview"
android:layout_width="wrap_content"
android:layout_weight="80"
android:layout_height="0px"
android:scaleType="center"
android:layout_alignParentCenter="true"/>
<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_weight="10"
android:layout_height="0px"
android:text="text 2"/>
</LinearLayout>
使用权重、图像对齐和图像比例类型来获得你想要的。