【问题标题】:Android RSS Parse: get image thumbnailAndroid RSS Parse:获取图像缩略图
【发布时间】:2017-06-22 09:58:27
【问题描述】:

我正在尝试为 Android 制作一个新闻阅读器,但我不知道如何解析每个 rss 项目的缩略图。我是否必须粘贴缩略图的每个 url,然后保存它们以使用它们,或者我可以将它们与 url 一起使用?这是提要的代码

public class RssFeed implements Parcelable {`

    private String title;
    private String link;
    private String description;
    private String language;
    private ArrayList<RssItem> rssItems;

    public RssFeed() {
        rssItems = new ArrayList<RssItem>();
    }

    public RssFeed(Parcel source) {

        Bundle data = source.readBundle();
        title = data.getString("title");
        link = data.getString("link");
        description = data.getString("description");
        language = data.getString("language");
        rssItems = data.getParcelableArrayList("rssItems");

    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {

        Bundle data = new Bundle();
        data.putString("title", title);
        data.putString("link", link);
        data.putString("description", description);
        data.putString("language", language);
        data.putParcelableArrayList("rssItems", rssItems);
        dest.writeBundle(data);
    }

    public static final Parcelable.Creator<RssFeed> CREATOR = new Parcelable.Creator<RssFeed>() {
        public RssFeed createFromParcel(Parcel data) {
            return new RssFeed(data);
        }
        public RssFeed[] newArray(int size) {
            return new RssFeed[size];
        }
    };  

这是 Rss 阅读器:(我还创建了一个对象 RssItem 来存储值)。

public class RssReader {

    public static RssFeed read(URL url) throws SAXException, IOException {

        return read(url.openStream());

    }

    public static RssFeed read(InputStream stream) throws SAXException, IOException {

        try {

            SAXParserFactory factory = SAXParserFactory.newInstance();
            SAXParser parser = factory.newSAXParser();
            XMLReader reader = parser.getXMLReader();
            RssHandler handler = new RssHandler();
            InputSource input = new InputSource(stream);

            reader.setContentHandler(handler);
            reader.parse(input);

            return handler.getResult();

        } catch (ParserConfigurationException e) {
            throw new SAXException();
        }

    }

    public static RssFeed read(String source) throws SAXException, IOException {
        return read(new ByteArrayInputStream(source.getBytes()));
    }

}

【问题讨论】:

    标签: android rss thumbnails rss-reader


    【解决方案1】:

    我不确定你所说的解析 URL 是什么意思。我猜你有缩略图的完整 URL。

    如果您有缩略图的 URL,那么我想您可以使用任何图像下载和缓存库,例如 PicassoGlide。当您想在 Android 中处理图像时,它们易于使用并为您完成所有繁重的工作。

    我用过毕加索,它的工作原理和宣传的一样。不过,由于我在开发者圈子里听说过,我也很想试试 Glide。

    注意:也许还有其他库可以帮助你,所以也许看看那里有什么,什么对你有用!

    希望这会有所帮助。编码愉快!

    【讨论】:

    • 好的,谢谢,但我的问题是我不知道如何获取网址!
    • url 必须是 RssItem 模型的一部分,对吧?由于您获得了 RssItem 对象的 ArrayList,因此您可以从那里简单地使用它!我需要查看更多代码,如果这对您没有意义,也许可以更好地解释。
    猜你喜欢
    • 2014-03-28
    • 1970-01-01
    • 1970-01-01
    • 2012-03-05
    • 2010-10-10
    • 1970-01-01
    • 2016-09-24
    • 2016-02-14
    • 2013-09-05
    相关资源
    最近更新 更多