如何在每个设备屏幕的一半之前显示图像?

时间:2011-11-14 17:45:51

标签: android android-layout

在我的.xml文件中,我有这种格式:

<LinearLayout android:layout_orientation="vertical"...>

<ImageView>...
</ImageView>

<ScrollView ...>

    <TableLayout..>
    </TableLayout>

</ScrollView>


</LinearLayout>

对于imageView,我希望高度直到屏幕的一半(任何屏幕大小),然后在屏幕的另一半启动我的tableLayout!这可能吗?谢谢

3 个答案:

答案 0 :(得分:2)

使用Layout_weight。

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

    <ImageView android:layout_height="wrap_content" android:src="@drawable/icon"
        android:layout_width="fill_parent" android:layout_weight="1"
        android:background="#ffffff">
    </ImageView>

    <ScrollView android:layout_height="wrap_content"
        android:layout_width="fill_parent" android:layout_weight="1"
        android:background="#ff0000">

    </ScrollView>

</LinearLayout>][1]

它提供了您正在寻找的外观。

答案 1 :(得分:0)

您可以使用android:layout_weight属性指定每个子视图应占用的空间大小。看看@ http://developer.android.com/guide/topics/ui/layout-objects.html,特别是线性布局部分了解详情。

答案 2 :(得分:0)

试试这个:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView android:id="@+id/imageView1" android:src="@drawable/icon"
    android:layout_height="0dp" android:layout_width="fill_parent"
    android:layout_weight="1"></ImageView>
<ScrollView android:layout_width="fill_parent" android:id="@+id/scrollView1"
    android:layout_weight="1" android:layout_height="0dp">
    <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:stretchColumns="1">
<TableRow>
    <TextView
        android:text="Open"
        android:padding="3dip" />
    <TextView
        android:text="New"
        android:gravity="right"
        android:padding="3dip" />
</TableRow>

<TableRow>
    <TextView
        android:text="Save"
        android:padding="3dip" />
    <TextView
        android:text="Exit"
        android:gravity="right"
        android:padding="3dip" />
</TableRow>
</TableLayout>
</ScrollView>
</LinearLayout>