1

我已检索数据并成功在文本视图中显示它。
我必须在我的代码中修改什么以使其看起来像一个列表视图?
以及如何以编程方式修改我的列表视图(添加大小和填充)?

这是我的 DBclass 在选择我显示的项目时的一部分

    getFAData() {
      // TODO Auto-generated method stub
      String [] columns = new String[]{Row_Name};
      Cursor c = ourDB.query(db_Table, columns, null, null, null, null, null);
      String res = "";

      int iRow = c.getColumnIndex(Row_Name);
      //int iDesc = c.getColumnIndex(Row_Desc);
      //int iID = c.getColumnIndex(Row_id);

      for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext())
      {
        res = res + c.getString(iRow) + "\n";
      }
      return res;
    }

这是类文件:

    public class FirstAid extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.firstaid);
        displayresult();
    }

    public void displayresult (){
        TextView tvFa = (TextView) findViewById(R.id.tvFA);
        tvFa.setMovementMethod(new ScrollingMovementMethod());
        DbHelper tblFa = new DbHelper(this);
        tblFa.open();
        String result = tblFa.getFAData();
        tblFa.close();

        tvFa.setText(result);
    }
    }
4

2 回答 2

0

你需要像这样在你的 dbhelper 类中实现一个方法

 public List<String> selectAll_data() {
      List<String> list = new ArrayList<String>();

      Cursor cursor = this.db.query(TABLE_NAME_2, new String[] { "str" },
              null , null, null, null, null);

      if (cursor.moveToFirst()) {
         do {
                list.add(cursor.getString(0));                  

           } while (cursor.moveToNext());
      }
      if (cursor != null && !cursor.isClosed()) {
         cursor.close();
      }

      return list;
   }

现在在你的活动中

 List<String> events = dh.selectAll_data(); 
 String[] arr = new String[events.size()];      
 arr = events.toArray(arr);

 ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, android.R.id.text1, values);

 // Assign adapter to ListView
listView.setAdapter(adapter); 

如果您想查看实时示例,请检查此url

于 2012-10-01T09:51:40.780 回答
0

Create ArrayList int 获取数据库的数据函数

public ArrayList<String> getFAData() {
    ArrayList<String> comments = new ArrayList<String>();

    Cursor c = ourDB.query(db_Table, columns, null, null, null, null, null);
    int iRow = c.getColumnIndex(Row_Name);
    cursor.moveToFirst();
    while (!cursor.isAfterLast()) {          
        comments.add(c.getString(iRow ));
        cursor.moveToNext();
    }
    // Make sure to close the cursor
    cursor.close();
    return comments;
}

在您的活动中检索这样的数据。

ArrayList<String> array = new ArrayList<String>();
array = tblFa.getFAData();
于 2012-10-01T09:46:06.283 回答