如何从Data Base添加TextView新数据(1 textView = 1名称)?在一个循环中

时间:2011-09-24 17:28:47

标签: android android-layout

我在TableRow中有3个textView的tableLayout。 如何从Data Base添加TextView新数据(1 textView = 1名称)?  那不起作用:

我的光标说:从TABLE_NAME中选择*

  Cursor cursor = database.query(TABLE_NAME,
    new String[] {"*"},
 null, null,null,null,"_id");  



    cursor.moveToFirst();
        try {
      if (!cursor.moveToFirst()) {
          return;
      }

      do {
          TextView textView = (TextView)findViewById(R.id.edit);
          textView.setText(cursor.getString(0));
            } while (cursor.moveToNext());
  } finally {
     cursor.close();
  }

我的表:

        _id student
         1   Said
         2   Bill
         3   John

1 个答案:

答案 0 :(得分:0)

每次致电TextView时,您都会覆盖edit所标识的setText(String)。您可能需要以编程方式创建TextView的新实例。

TableRow row = new TableRow(context);
do {
    TextView textView = new TextView(context);
    textView.setText(cursor.getString(0));
    row.addView(textView); //add each textview to your row
} while (cursor.moveToNext());

myTableLayout.addView(row); //add your row to your table

如果您已有TableLayout,则可以使用TableRow向其添加addView(View v)。将TextView的新实例添加到TableRow,您应该得到您想要的内容。