android - 在 LinearLayout 中嵌套 TableLayout - 这可能吗?

标签 android android-layout android-linearlayout tablelayout

我想生成如下所示的 Android 屏幕布局:

Label   Text Field
Label   Text Field
Label   Text Field

-----Button-------
-----TextField----

也就是说,我想在顶部有一个 TableLayout,在表格布局下面有一些项目(主要是为了我可以强制这些项目位于屏幕底部)。我试过按照下面的代码嵌套它们,但底部的项目似乎没有出现。

有什么想法吗?

<?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="match_parent"
    android:stretchColumns="1"
    android:shrinkColumns="1" android:layout_height="wrap_content"  android:layout_gravity="center_vertical">
    <TableRow>
        <TextView android:text="Latitude:"
        android:textAppearance="?android:attr/textAppearanceLarge"
        />
        <TextView android:id="@+id/latitude"
        android:text="Not available"
        android:textAppearance="?android:attr/textAppearanceLarge"
        />
    </TableRow>
    <TableRow>
        <TextView android:text="Longitude:"
        android:textAppearance="?android:attr/textAppearanceLarge"/>
        <TextView android:id="@+id/longitude"
        android:text="Not available"
        android:textAppearance="?android:attr/textAppearanceLarge"/>
    </TableRow>
    <TableRow>
        <TextView android:text="Altitude:"
        android:textAppearance="?android:attr/textAppearanceLarge"/>
        <TextView android:id="@+id/altitude"
        android:text="Not available"
        android:textAppearance="?android:attr/textAppearanceLarge"/>
    </TableRow>
    <TableRow>
        <TextView android:text="Accuracy:"
        android:textAppearance="?android:attr/textAppearanceLarge"/>
        <TextView android:id="@+id/accuracy"
        android:text="Not available"
        android:textAppearance="?android:attr/textAppearanceLarge"/>
    </TableRow>
</TableLayout>
<Button android:id="@+id/save"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Save"/>
<TextView android:text="Test"/>
</LinearLayout>

最佳答案

在你的表格布局中添加这些

android:layout_height="80dp"  
 android:layout_weight="1.0"

还为底部按钮和 TextView 添加固定高度。如果您的表格需要更多空间 然后放在scrollView之间

关于android - 在 LinearLayout 中嵌套 TableLayout - 这可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6764484/

相关文章:

android - 从 list 中删除后,应用权限显示在应用设置中

android - 按钮布局有 4 个独立的 "borders": Can't get text in center

java - Android:当我还在 View 上设置 layoutParams 时,在 View 上调用 setPadding() 不起作用

android - 带换行符的TextView

java - Android透明Fragment/GoogleMap

java - Android 应用程序无法很好地渲染 html 标签

android - 在操作栏中切换选项卡时隐藏键盘

android - 使水平 ListView 的列表项的高度动态

android - 如何动态创建一个按钮?

Android 'Couldn' t expand remoteViews for ...' 以编程方式创建布局时