我对android相当陌生,并且在布局上遇到一些问题。下面是我想让布局看起来像的一个近似值。 (我希望列表首先在屏幕下方显示,以便用户可以向下滚动以查看它。)但是,我现在的代码使得左侧的所有视图只占用屏幕的四分之一而不是一半,如图所示,即使我已将所有宽度设置为fill_parent。Android中的布局问题
此外,此布局似乎弄乱了我的自定义视图上的坐标系统。通常情况下,这不是什么大问题,但在这种情况下,我正在使用该视图来绘制图片,并且图片最终出现在错误的地方。有谁知道如何解决这些问题?
这里是我的代码:
<?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">
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:orientation="vertical">
<TableRow>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent" android:orientation="vertical"
android:layout_width="fill_parent">
<TableRow>
<TextView android:text="Resultant Force" android:id="@+id/resForceTitle"
android:textSize="25dip" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:padding="3dip"
android:gravity="center" android:layout_span="2" />
</TableRow>
<TableRow>
<TextView android:id="@+id/magText" android:text="Magnitude (N) ="
android:textSize="15dip" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:padding="3dip"
android:gravity="center_vertical" android:layout_span="2" />
</TableRow>
<TableRow>
<EditText android:id="@+id/magnitude" android:inputType="numberDecimal"
android:layout_width="fill_parent" android:padding="3dip"
android:layout_height="fill_parent" android:layout_span="2" />
</TableRow>
<TableRow>
<TextView android:id="@+id/dirText" android:text="Angle (deg) ="
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:textSize="15dip" android:gravity="center_vertical"
android:layout_span="2" />
</TableRow>
<TableRow>
<EditText android:id="@+id/direction" android:inputType="numberDecimal"
android:layout_height="fill_parent" android:padding="3dip"
android:layout_width="fill_parent" android:layout_span="2" />
</TableRow>
<TableRow>
<Button android:id="@+id/pushButton" android:text="Add Force"
android:layout_height="fill_parent" android:padding="3dip"
android:layout_width="fill_parent" />
<Button android:id="@+id/clearButton" android:text="Clear"
android:layout_height="fill_parent" android:padding="3dip"
android:layout_width="fill_parent" />
</TableRow>
</TableLayout>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<android.physicsengine.AxisDrawing
android:id="@+id/image" android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</FrameLayout>
</TableRow>
</TableLayout>
<ListView android:id="@android:id/list" android:layout_height="wrap_content"
android:padding="3dip" android:layout_width="fill_parent"
android:clickable="false" />
<TextView android:id="@android:id/empty" android:text="Add Forces to List Components"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:textSize="15dip" android:gravity="center_vertical" />
</LinearLayout>
我还没有遇到过,一个LinearLayout与权重不是比TableLayouts更好的选择。 – schwiz 2011-01-23 02:50:17