0

我是 Android 应用程序开发的新手。我尝试在我的活动中使用 Textview 查看我的数据库。

这是我的 setText() java

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_viewlogs); 
TextView tv = (TextView) findViewById(R.id.tvSqlinfo);
LogsDB info = new LogsDB(this);
info.open();
ArrayList<String> data = info.getData();
info.close();
tv.setText(data);
}

我似乎在 tv.setText(data);. 声明“TextView 类型中的方法 setText(CharSequence) 不适用于参数 (ArrayList)”然后当我执行推荐的修复时它会改变

tv.setText(data)

tv.setText((CharSequence) data);

然后,当我测试应用程序时,我收到一个错误,指出它不能被强制转换。我需要更改什么才能在 textview 中查看我的数据库?

任何建议和帮助将不胜感激。谢谢

4

2 回答 2

1

您可能希望从 中取出每个String并将ArrayList它们添加到单个String对象中,然后将其添加到您的TextView. 就像是

String text = "These are my database Strings ";
for (int i=0; i<data.size(), i++)
{
    text = text.concat(data.get(i));  // might want to add a space, ",", or some other separator
}
tv.setText(text);

并且您可以将Strings 分开,但是您希望它们显示。

于 2013-09-23T01:10:40.653 回答
1

如果你想保持简单,你可以使用

tv.setText(data.toString());

代替

tv.setText(data);

它将显示如下内容: ([field1],[field2],...)

于 2013-09-23T01:21:04.167 回答