如何在Android Studio中使用ListView适配器显示RSS源的图像和描述?

时间:2020-08-06 13:41:15

标签: android-studio android-listview rss

我正在尝试显示带有标题,描述,图像和发布日期的rss feed。下面的代码仅返回标题部分。我将不胜感激任何意见,以帮助我解决此问题。贝娄是后台进程和后处理代码

URL url = new URL("https://feeds.bbci.co.uk/news/world/rss.xml");
            XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
            factory.setNamespaceAware(false);
            XmlPullParser xpp = factory.newPullParser();
            xpp.setInput(getInputStream(url), "UTF_8");                
            boolean insideItem = false;
            int eventType = xpp.getEventType();
            
            while (eventType != XmlPullParser.END_DOCUMENT) {
                if (eventType == XmlPullParser.START_TAG) {
                    if (xpp.getName().equalsIgnoreCase("item")) {
                        insideItem = true;
                    } else if (xpp.getName().equalsIgnoreCase("title")) {
                        if (insideItem) {
                            titles.add(xpp.nextText());
                        }
                    } else if (xpp.getName().equalsIgnoreCase("link")) {
                        if (insideItem) {
                            links.add(xpp.nextText());
                        }
                    } else if (xpp.getName().equalsIgnoreCase("description")) {
                        if (insideItem) {
                            description.add(xpp.nextText());
                        }

                    } else if (xpp.getName().equalsIgnoreCase("pubDate")) {
                        if (insideItem) {
                            pubdate.add(xpp.nextText());
                        }
                    }
                } else if (eventType == XmlPullParser.END_TAG && xpp.getName().equalsIgnoreCase("item")) {
                    insideItem = false;
                }

                eventType = xpp.next();
            }

@Override
    protected void onPostExecute(Exception s) {
        super.onPostExecute(s);
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, titles);
        lv.setAdapter(adapter);
    }

0 个答案:

没有答案
相关问题