【问题标题】:Android parse: Get strings from parsequeryadapter and store them into an ArrayListAndroid 解析:从 parsequeryadapter 获取字符串并将它们存储到 ArrayList
【发布时间】:2016-03-02 15:43:21
【问题描述】:

我有一个 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

提前致谢

【问题讨论】:

    标签: java android string parse-platform parse-android-sdk


    【解决方案1】:

    getItem 方法调用返回的Object 不会覆盖toString() 方法,因此java 在这种情况下使用默认实现,因为它不“知道”如何将对象转换为@987654324 @ 类型。

    如果您拥有这种类型,只需 @Override toString() 方法和您自己的实现即可。

    示例

    假设您的类型名称是YourType。我的意思是,adapter.getItem(i) 返回一个 YourType 的对象。在YourType.java:

    class YourType {
        private String exampleField1;
        private String exampleField2;
    
        @Override
        public String toString() {
            return exampleField1 + ", " + exampleField2;
        }
    }
    

    【讨论】:

    • 请举个例子好吗?对不起,我是新人
    • 等等,不要介意我删除的 cmets。好的。什么是exampleField1,如何定义?
    • 在您的情况下,类型是com.example.ab_me.example.classname。我不知道你在这个类中有哪些字段。只需在你的类名中重写一个 toString 方法并提供你自己的实现,让 java 知道如何将你的类名对象转换为字符串。就我而言,我有 2 个示例字段只是为了展示实现的样子。您不必定义这些。
    猜你喜欢
    • 1970-01-01
    • 2013-05-09
    • 2012-09-29
    • 2019-04-30
    • 2014-09-13
    • 2011-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多