gpt4 book ai didi

android - 如何使用textview查看数据库中的数据?

转载 作者:搜寻专家 更新时间:2023-10-30 20:45:37 25 4
gpt4 key购买 nike

我正在做一个管理页面,可以查看系统中存在的用户。我的想法是在一页中显示用户列表和详细信息。我听说使用 listview 非常繁琐。还有其他简单的方法吗?

也许可以在 textview 中查看,但我不知道它是如何工作的。我必须在我的 xml 中放入很多 textview 吗?

一个简单的任务,我需要知道如何去做。我只需要知道如何使用任何方法查看页面中的数据。

非常感谢!希望尽快得到回复! =D

戴恩


再见

这是 ListView 的样子:

package log1.log2;

import android.app.ListActivity;
import android.database.Cursor;
import android.os.Bundle;
import android.widget.ArrayAdapter;

public class AdminMain extends ListActivity {


static final String[] COUNTRIES = new String[] {
"Macau", "Madagascar", "Malawi", "Malaysia", "Maldives", "Mali", "Malta", "Marshall Islands","Nicaragua", "Niger", "Nigeria", "Niue", "Norfolk Island", "North Korea", "Northern Marianas", "Norway", "Oman", "Pakistan", "Palau", "Panama", "Papua New Guinea", "Paraguay", "Peru"
};


@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, COUNTRIES));

ListView lv = getListView();
lv.setTextFilterEnabled(true);

lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// When clicked, show a toast with the TextView text
Toast.makeText(getApplicationContext(), ((TextView) view).getText(),
Toast.LENGTH_SHORT).show();
}
});
}

对于上面的代码,数据是写在代码本身中的。我的数据在我的数据库中,我需要它显示在 ListView 中。我不知道怎么做。我尝试了一些想法:

public class AdminMain extends ListActivity {

DBAdapter db = new DBAdapter(this);

private String TEST;




public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
db.open();
Cursor c = (Cursor) db.getAllUser();
final String[] COUNTRIES = new String[] {

};


TEST=c.getString(1).toString();

setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, TEST));
getListView().setTextFilterEnabled(true);

}

}

我声明了一个字符串,并尝试从数据库中检索数据并将其保存到 TEST 字符串中。然后我尝试在 ListView 中显示它:

setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, TEST));
getListView().setTextFilterEnabled(true);

但我不能在 ListView 中放置“TEST”。错误,The constructor ArrayAdapter<String>(AdminMain, int, String) is undefined.会出现。

我希望有人能给我一个好的答案。我期待着您的回复。感谢您花时间阅读本文。

-戴恩


你好塞菲

这是我编辑的。

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
db.open();
Cursor c = (Cursor) db.getAllUser();
/*final String[] COUNTRIES = new String[] {

};*/

final String[] TEST = c.getString(1);

//TEST[]=c.getString(1).toString();

setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1));
getListView().setTextFilterEnabled(true);

}

如您所见,我试图将数据库中的数据直接放入数组中,但它不起作用; final String[] TEST = c.getString(1); .错误信息Type mismatch: cannot convert from String to String[]出现了。

最佳答案

ListView 使用起来很乏味,但有时,如果您的数据集很大且重复,您可能需要考虑使用 ListView
如果你仍然不想,你可以创建一个 ScrollView 加上一个 TextView 中的标题,例如在你的 xml 中,然后在你的 java 中,你使用 for循环或一段时间循环你的数据库结果,每次你准备好一组数据时,你创建一个新的 TextView 并将它添加到 ScroolView。应该是这样的:

if (yourCursor.moveToFirst()) {
do {
//prepare your data
TextView tv = new TextView(yourContext);
tv.setText("yourData");
// you can set id, tag, text color, font, ...
yourScrollView.addView(tv);
} while (yourCursor.moveToNext());
}
yourCursor.close();
yourDB.close();

关于android - 如何使用textview查看数据库中的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3465214/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com