Android parse:从 parsequeryadapter 获取字符串并将它们存储到 ArrayList 中
Android parse: Get strings from parsequeryadapter and store them into an ArrayList
我有一个 ParseQueryAdapter class,我的项目正在成功检索。
但是,如果我有这个 for 循环来查看对象(字符串):
for (int i =0;i<adapter.getCount();i++){
Log.d("Ab", adapter.getItem(i).toString());
}
我得到这些:
com.example.ab_me.example.classname@41ef11f8
com.example.ab_me.example.classname@41ef33d8
com.example.ab_me.example.classname@41ef40c0
注意:出于安全原因,我将我的应用程序名称替换为 example
并将我的 class 名称替换为 classname
.
为什么是这样?应该是:
listItem1
listItem2
listItem3
提前致谢
从 getItem
方法调用返回的 Object
不会覆盖 toString()
方法,因此 java 在这种情况下使用默认实现,因为它不会'know' 如何将对象转换为 String
类型。
如果您拥有此类型,只需 @Override
具有您自己的实现的 toString()
方法。
示例:
假设您的类型名称是 YourType
。我的意思是,adapter.getItem(i)
returns YourType
的对象。在 YourType.java
:
class YourType {
private String exampleField1;
private String exampleField2;
@Override
public String toString() {
return exampleField1 + ", " + exampleField2;
}
}
我有一个 ParseQueryAdapter class,我的项目正在成功检索。 但是,如果我有这个 for 循环来查看对象(字符串):
for (int i =0;i<adapter.getCount();i++){
Log.d("Ab", adapter.getItem(i).toString());
}
我得到这些:
com.example.ab_me.example.classname@41ef11f8
com.example.ab_me.example.classname@41ef33d8
com.example.ab_me.example.classname@41ef40c0
注意:出于安全原因,我将我的应用程序名称替换为 example
并将我的 class 名称替换为 classname
.
为什么是这样?应该是:
listItem1
listItem2
listItem3
提前致谢
从 getItem
方法调用返回的 Object
不会覆盖 toString()
方法,因此 java 在这种情况下使用默认实现,因为它不会'know' 如何将对象转换为 String
类型。
如果您拥有此类型,只需 @Override
具有您自己的实现的 toString()
方法。
示例:
假设您的类型名称是 YourType
。我的意思是,adapter.getItem(i)
returns YourType
的对象。在 YourType.java
:
class YourType {
private String exampleField1;
private String exampleField2;
@Override
public String toString() {
return exampleField1 + ", " + exampleField2;
}
}