简体   繁体   English

无法显示我的ArrayList

[英]Can't display my ArrayList

Currently new in Java. 目前是Java的新功能。 I have this code where I'm want to store XML parse data for ListView. 我有此代码,我想为ListView存储XML解析数据。 But when I try to display the content of my ArrayList in the logcat, it give me this com.example.azrie.dummyvoice.FeedItem@717d5c6 instead. 但是,当我尝试在日志猫中显示我的ArrayList的内容时,它却给了我这个com.example.azrie.dummyvoice.FeedItem@717d5c6 Did I not store the data properly or is there else wrong ? 我是否没有正确存储数据或还有其他错误? Can someone enlighten me on this matter. 有人可以在这件事上给我启发。

This is my parse method 这是我的解析方法

 public void parseXMLAndStoreIt(XmlPullParser myParser) {
    int event;
    String text=null;

    try {
        event = myParser.getEventType();
        FeedItem item = new FeedItem();

        while (event != XmlPullParser.END_DOCUMENT) {
            String tagName = myParser.getName();

            switch (event){

                case XmlPullParser.START_TAG:
                    if(tagName.equalsIgnoreCase("item")){
                        int eventChild = myParser.next();

                            while(eventChild != XmlPullParser.END_DOCUMENT){
                                String tagNameChild = myParser.getName();

                                switch (eventChild){

                                    case XmlPullParser.START_TAG:
                                        break;

                                    case XmlPullParser.TEXT:
                                        text = myParser.getText();
                                        break;

                                    case XmlPullParser.END_TAG:

                                        if(tagNameChild.equalsIgnoreCase("title")){
                                            item.setTitle(text);
                                            feedItems.add(item);
                                            Log.d("Title", item.getTitle());
                                        }

                                        else if(tagNameChild.equalsIgnoreCase("link")){
                                            item.setLink(text);
                                            feedItems.add(item);
                                            Log.d("Link", item.getLink());
                                        }

                                        else if(tagNameChild.equalsIgnoreCase("description")){

                                            String plain = Html.fromHtml(text).toString();
                                            //stripHtml(text);
                                            item.setDescription(plain);
                                            feedItems.add(item);
                                            Log.d("Description", item.getDescription());
                                        }

                                        else if(tagNameChild.equalsIgnoreCase("pubDate")){
                                            item.setPubDate(text);
                                            feedItems.add(item);
                                            Log.d("pubDate", item.getPubDate());
                                            //Log.d("pudDate",text);
                                        }

                                        else if(tagNameChild.equalsIgnoreCase("media:thumbnail") || tagNameChild.equalsIgnoreCase("media:content") || tagName.equalsIgnoreCase("enclosure")){

                                            //Output test
                                            if(myParser.getAttributeValue(null,"url") != null) {
                                                item.setThumbnailUrl(text);
                                                feedItems.add(item);
                                                Log.d("Thumbnail", item.getThumbnailUrl());
                                                //Log.d("ItemThumbnailUrl",myParser.getAttributeValue(null,"url"));
                                            }
                                        }

                                        else if(tagNameChild.equalsIgnoreCase("item")){
                                            Log.d("Test", "" + feedItems.get(1));

                                        }


                                        break;



                                }

                                eventChild = myParser.next();
                                /*feedItems.add(item);
                                Log.d("Title", item.getTitle());
                                Log.d("Link", item.getLink());
                                Log.d("Description", item.getDescription());
                                Log.d("pubDate", item.getPubDate());
                                Log.d("Thumbnail", item.getThumbnailUrl());*/

                            }


                    }
                    break;

                case XmlPullParser.TEXT:
                    break;

                case XmlPullParser.END_TAG:
                    break;

            }

            event = myParser.next();

        }

        parsingComplete = false;
    }

    catch (Exception e) {
        e.printStackTrace();
    }
}

This 这个

com.example.azrie.dummyvoice.FeedItem@717d5c6

indicates that you are logging (or printing) an object and not a string. 表示您正在记录(或打印)对象而不是字符串。 I would guess that this originate from this line: 我猜想这源于这一行:

Log.d("Test", "" + feedItems.get(1));

Try to implement toString method on the FeedItem class. 尝试在FeedItem类上实现toString方法。 Or if that's not possible try something like 或者,如果不可能,请尝试类似

Log.d("Test", "" + feedItems.get(1).getTitle());

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM