0

我真的需要帮助我有一个从 MySQL DB 中选择查询的结果集。如何在表格布局中显示它?我已经为 tableview 设置了布局

<?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">

<EditText
    android:id="@+id/myFilter"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:ems="10"
    android:hint="@string/some_hint" />
<TextView android:layout_width="fill_parent"
  android:layout_height="wrap_content" android:padding="10dp"
  android:text="@string/some_text" android:textSize="20sp" />
<TableLayout
 android:id="@+id/producttablelayout"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:dividerPadding="@dimen/activity_horizontal_margin"
 android:scrollbars="horizontal|vertical"
 android:showDividers="none|beginning|middle|end" >

 <TableRow
     android:id="@+id/tableRow1"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:gravity="top|bottom|left|right"
     android:paddingTop="@dimen/activity_horizontal_margin" >

     <TextView
         android:id="@+id/ttt1"
         android:text="Column 1"
         android:textAppearance="?android:attr/textAppearanceLarge" />

     <TextView
         android:id="@+id/ttt2"
         android:text="Column 12"
         android:textAppearance="?android:attr/textAppearanceLarge" />


 </TableRow>

 </TableLayout>

</LinearLayout>

我希望能够将 ResultSet 数据添加到其中。就像是:

    super.onCreate(savedInstanceState);
     String s = null;
    setContentView(R.layout.activity_list_all_products);
    // Show the Up button in the action bar.
    setupActionBar();
    context333=this;
    TableLayout myTable = (TableLayout)findViewById(R.id.producttablelayout);
    try
    {
    connect2 = DriverManager.getConnection(LogonActivity.url, LogonActivity.user, LogonActivity.password);
    statement2 = connect2.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, 
            ResultSet.CONCUR_READ_ONLY);
    preparedStatement2 = connect2.prepareStatement("select     article_code,article_desc from products limit 4");
    resultSet2=preparedStatement2.executeQuery();
   resultSet2.beforeFirst();

   while (resultSet2.next()) {
      how to add next record here to the table layout??

   }

请帮忙

4

1 回答 1

0

您可以创建一个新视图(似乎您正在使用 TextViews 填充表格行)并根据需要使用查询结果填充它们。然后您可以TableRow使用构造函数创建一个新的(请参阅文档)。

使用以下命令将视图添加到表行实例:

tableRowInstance.addView(viewInstance);

然后tableRowtableLayout相同的方式添加:

myTable.addView(tableRowInstance)

TableLayouts 和 TableRows 都是 View 的子类。ViewGroup您应该对、 View 以及它们的结构进行一些研究。这个链接提供了很好的可视化。

于 2013-07-15T17:34:00.523 回答