修改: TableLayout无法正常工作吗?我看到大多数人说使用相对布局,并跳过tableview?
在数据1和数据2之后的空间我试图摆脱。如果我在没有TableLayout的情况下放置相同的XML代码,那么它看起来没问题。我该怎么改变?
带有“100”的第3行我想在右侧显示2个输入文本视图。我已经尝试了所有我能想到的东西,但它不会出现在右边。我删除了第二个textview以查看是否有帮助,但没有太大的区别。
谁能告诉我我做错了什么?谢谢!
这是XML:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TableLayout android:layout_width="fill_parent"
android:stretchColumns="*" android:layout_height="fill_parent"
android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android"
android:padding="6px">
<TableRow style="@style/FormRows" android:layout_marginTop="15sp">
<Button android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_marginLeft="5px"
android:layout_span="3" android:layout_weight="1" android:text="Save"
android:id="@+id/dgSave" />
</TableRow>
<TableRow style="@style/FormRows">
<TextView android:layout_width="70sp"
android:layout_height="wrap_content" android:textSize="16sp"
android:layout_weight="1" android:text="Data 1" />
<Spinner android:id="@+id/dgData0" android:layout_weight="2"
android:layout_width="wrap_content" android:layout_height="wrap_content" />
</TableRow>
<TableRow>
<LinearLayout android:orientation="horizontal"
android:layout_width="fill_parent" android:layout_height="wrap_content">
<EditText android:text="100" android:selectAllOnFocus="true"
android:imeOptions="actionNext" android:numeric="integer"
android:width="100sp" android:id="@+id/dgWarn0" android:gravity="right"
android:layout_height="wrap_content" android:layout_weight="1"
android:layout_gravity="right" android:layout_span="2" />
<EditText android:text="100" android:selectAllOnFocus="true"
android:imeOptions="actionNext" android:numeric="integer"
android:width="100sp" android:id="@+id/dgWarn1" android:gravity="right"
android:layout_height="wrap_content" android:layout_weight="1"
android:layout_gravity="right" android:layout_span="2" />
</LinearLayout>
</TableRow>
<TableRow style="@style/FormRows">
<TextView android:layout_width="70sp"
android:layout_height="wrap_content" android:textSize="16sp"
android:layout_weight="1" android:text="Data 2" />
<Spinner android:id="@+id/dgData1" android:layout_weight="2"
android:layout_width="wrap_content" android:layout_height="wrap_content" />
</TableRow>
</TableLayout>
</ScrollView>
谢谢!任何帮助!!! 标记
答案 0 :(得分:2)
这是RelativeLayout的样子。我做得很快......它缺少其他一些利润等等......但这是一个起点。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<Button android:id="@+id/save"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_margin="20dp"
android:text="Save" />
<Spinner android:id="@+id/spinner1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@id/save" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/spinner1"
android:text="Data 1" />
<EditText android:id="@+id/editbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@id/save"
android:layout_below="@id/spinner1" />
<Spinner android:id="@+id/spinner2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@id/save"
android:layout_below="@id/editbox" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/spinner2"
android:text="Data 2" />
</RelativeLayout>
答案 1 :(得分:0)
嘿 我快速浏览了一下,也许TableLayout现在是这个特定活动的最佳选择。 你考虑过使用RelativeLayout吗?在那里,您可以通过将小部件放置在其他小部件附近来定义小部件的位置(例如,某些按钮位于文本视图下)。
这只是一个建议,也许不仅仅是这个具体问题,我还没有完全了解。
您可以在这里阅读有关RealtiveLayout的信息:
http://developer.android.com/reference/android/widget/RelativeLayout.html
http://developer.android.com/resources/tutorials/views/hello-relativelayout.html
编辑:Maximus,伟大的思想相似,我们的评论之间30秒:)