Java 为什么我的Android ORM库会生成这些奇怪的字符串?
我使用获取对象,然后在下面的ListView中列出它们。尽管如此,Sugar ORM并没有列出我在数据库中输入的字符串,而是生成某种资源标识符,而不是字符串。知道这些是什么吗?我怎样才能把它们变回弦 这是我的ListView代码:Java 为什么我的Android ORM库会生成这些奇怪的字符串?,java,android,sqlite,orm,Java,Android,Sqlite,Orm,我使用获取对象,然后在下面的ListView中列出它们。尽管如此,Sugar ORM并没有列出我在数据库中输入的字符串,而是生成某种资源标识符,而不是字符串。知道这些是什么吗?我怎样才能把它们变回弦 这是我的ListView代码: List<Book> books = Select.from(Book.class).orderBy("item").list(); setListAdapter(new ArrayAdapter<Book>(this, an
List<Book> books = Select.from(Book.class).orderBy("item").list();
setListAdapter(new ArrayAdapter<Book>(this, android.R.layout.simple_list_item_1, books));
List books=Select.from(Book.class).orderBy(“item”).List();
setListAdapter(新的ArrayAdapter(这个,android.R.layout.simple_list_item_1,books));
列表视图中填充了“Book”对象 对于每个列表项,简单的列表项都打印Book类的toString。如果不覆盖toString,它将打印出来“Class@somenumber“在你的情况下,这就是它所没有的 你可以做两件事: 重写book类的toString方法,以便决定它显示什么 例如:
@Override
public String toString(){
// assuming your book has a title (and its a string), put what you want here
return getTitle();
}
另一个选项是为listitem创建自定义视图。
因此,不要使用android.R.layout.simple_list_item_1,而是创建自己的。在视图中,您可能有一个tekstview,可以用书名填充它。这是一个多一点的工作,但你也有最多的控制列表项的布局 listview中填充了“Book”对象 对于每个列表项,简单的列表项都打印Book类的toString。如果不覆盖toString,它将打印出来“Class@somenumber“在你的情况下,这就是它所没有的 你可以做两件事: 重写book类的toString方法,以便决定它显示什么 例如:
@Override
public String toString(){
// assuming your book has a title (and its a string), put what you want here
return getTitle();
}
另一个选项是为listitem创建自定义视图。
因此,不要使用android.R.layout.simple_list_item_1,而是创建自己的。在视图中,您可能有一个tekstview,可以用书名填充它。这是一个多一点的工作,但你也有最多的控制列表项的布局 我不熟悉安卓,但似乎你有一个对象具有某些特征,你没有用setter或getter来解决它们?我不熟悉安卓,但似乎你有一个对象具有某些特征,而你没有用setter或getter来描述它们?@Gray感谢你写得这么好的答案!我回家后会试试的。我没有写答案@PintSizeSlash3r。我刚刚编辑了它。归功于nikitani.:-)@格雷:谢谢你写得这么好!我回家后会试试的。我没有写答案@PintSizeSlash3r。我刚刚编辑了它。归功于nikitani.:-)