我有一个ParseQueryAdapter类,我的项目正在成功检索。 但是,如果我有这个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
,将我的班级名称替换为classname
。
为什么是这样?应该是:
listItem1
listItem2
listItem3
提前致谢
答案 0 :(得分:0)
从getItem
方法调用返回的toString()
不会覆盖String
方法,因此java在这种情况下使用默认实现,因为它不知道如何转换对象为@Override
类型。
如果您拥有此类型,只需使用您自己的实现toString()
YourType
方法。
实施例:
假设您的类型名称为adapter.getItem(i)
。我的意思是,YourType
返回YourType.java
的对象。在class YourType {
private String exampleField1;
private String exampleField2;
@Override
public String toString() {
return exampleField1 + ", " + exampleField2;
}
}
:
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
// do something here
}
}, 1000);