〇、前言

上一篇,已经向大家介绍了如何在鸿蒙应用中,进行 XML 格式的数据的解析,并且以 CSDN 博客的 RSS 链接为例,进行具体的实践演示。这一篇,本着继往开来的原则,对上一篇中实现的 RSS 解析结果,进行进一步的使用,打造一个简易的RSS阅读器

一个简易的 RSS 阅读器,关键的地方只有两处:

  1. 解析 RSS 源下发的 XML 文档,从中提取出所需的文章标题和链接等必要数据
  2. 使用 WebView 将文章链接所指向的网页,在适当的 APP 界面中渲染。

至于完成这两步工作,是在一个APP页面中,还是两个页面中,则根据大家各自的理解进行设计,我这边,是采用了两个页面的方式,因为使用 WebView 的APP页面,在我看来,就应该实现为公共页面,因为一个APP里面,会用到网页浏览的地方,往往不止一处。

一、实现页面

1、改造起始页

在这里插入图片描述

如上图所示,我将 TxtEdit 的起始页进行了改造,由原来的两个 Tabs 页,变成了三个 Tabs 页,中间的 Tabs 页用于获取用户所要使用的 RSS 订阅源,这里,为了用户方便,特地提供了一个默认的 CSDN 订阅源——当然了,这个订阅源就是我本人的 CSDN 博客。

对应的源代码,比较简单:
在这里插入图片描述

2、新增文章列表页

2.1、搭建毛坯

在 RSS 源输入页,无论用户是选择用默认的链接,还是自己亲手输入的链接,在点击“开始阅读”按钮后,都会先跳转到如下的文章列表页:
在这里插入图片描述
在该页面,RSS 源返回的没有骗文章的标题、作者、发表日期和摘要,都会被展示出来;用户可以通过其中文章摘要,决定是否打开文章详情进行阅读。整个文章列表,都是由结构如下的列表项迭代循环出来的:
在这里插入图片描述

2.2、装饰美化

在展示文章信息的时候,大部分数据可以直接使用,除了发表日期。发表日期的源格式是英文风格的:Sun, 18 May 2025 00:03:47 +0800,与中文语境差异太大,所以,需要将其转换成符合中文表达习惯的格式:
在这里插入图片描述
当然了,如果追求整齐,那么文章摘要也可以设计成显示字数相同的风格。
在这里插入图片描述
由于 ArkTS 的 UI 表达式,本身就支持条件渲染,所以,对文章摘要进行显示字数的控制,是十分的简单的。

另外,显示文章信息的列表项,也可以从纯灰色背景换成图片背景:
在这里插入图片描述
如果使用了图片背景,那么,为了文本的清晰显示,必须相应地调整文本颜色,使之与图片中的色彩具备反色对比效果。
在这里插入图片描述

3、展示文章详情

这一步,无需新增任何页面,因为专门浏览网页的页面,我之前早就实现过了,这里只需为每个文章列表项,设置一个点击响应即可:
在这里插入图片描述
而网页最终的渲染效果,就跟我们用微信打开 CSDN 博客链接一样:
在这里插入图片描述

三、总结

RSS 阅读器,实际上就是解析 XML 和渲染网页,总体难度不高,只要顺利完成 XML 解析,那么渲染文章链接指定的网页,仅仅就是鸿蒙SDK内置组件的使用罢了:
在这里插入图片描述

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐