0

此图像描述了我需要创建的内容: 在此处输入图像描述

这是我的 xml 代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="@drawable/bg" >

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="left" />
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

<LinearLayout 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="center_vertical|center_horizontal"
    android:orientation="horizontal">
        <TextView  
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content" 
            android:gravity="left"
            />
       <TextView
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content"
            android:gravity="right"
            />
</LinearLayout>
<!-- Now the block that has to be flexible -->
<RelativeLayout 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:paddingTop="15dp" 
    android:gravity="center" >
<ImageView
    android:layout_width="350dp"
    android:layout_height="wrap_content"    
    android:layout_centerHorizontal="true" >
</ImageView>
<TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
/>
</RelativeLayout>
<!-- -------------------------------- -->
    <RelativeLayout 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">

<ImageButton
    android:layout_width="70dp"
    android:layout_height="61dp"
    android:layout_alignParentLeft="true"
    android:layout_alignParentBottom="true"
>
</ImageButton>

<ImageButton
    android:scaleType="fitCenter"
    android:layout_width="70dp"
    android:layout_height="70dp"
    android:layout_centerHorizontal="true"
    android:layout_alignParentBottom="true"  >
</ImageButton>

<ImageButton
    android:layout_width="65dp"
    android:layout_height="65dp"
    android:layout_alignParentRight="true"
    android:layout_alignParentBottom="true" >
</ImageButton>

</RelativeLayout>
</LinearLayout>

必须拉伸的块包含在 ImageView 和 TextView 中。所以我的问题是 - 如何使这个中间块灵活但在顶部和底部保留另外两个块以保持在任何屏幕高度上?中间块将被拉伸。

4

2 回答 2

0

对于顶部和底部布局:

android:layout_height="wrap_content" // or a value un pixels (e.g 100dp)

对于灵活的布局:

android:layout_height="fill_parent"

请注意,您不需要相对布局。只需使用线性布局,它们就会正确堆叠

于 2012-04-06T21:10:18.527 回答
0

我只会使用一个LinearLayout. 将其设置orientationvertical和。将中间部分的 设置为某个正值,例如,对于固定件,只需使用或适当的某个值。layout_heightfill_parentlayout_weight1wrap_contentdp

于 2012-04-06T21:15:30.527 回答