鸿蒙开源第三方组件——日期和时间处理组件JodaTime-ohos

前言 基于安卓平台的日期和时间处理组件JodaTime-ohos(https://github.com/dlew/joda-time-android), 实现鸿

前言

         基于安卓平台的日期和时间处理组件JodaTime-ohos(https://github.com/dlew/joda-time-android), 实现鸿蒙化迁移和重构。代码已经开源到(https://gitee.com/isrc_ohos/joda-time_ohos),欢迎各位下载使用并提出宝贵意见!

背景

       JodaTime-ohos是一个日期和时间处理组件,可以获取标准时间、当前时间、相对时间、格式化时间等多种形式的时间,并支持对各类时间进行计算和判断。该组件易于使用、可扩展性强、拥有全面的功能集 ,支持多种日历系统,被广泛应用于时间显示类应用。

组件效果展示

(1)显示“标准时间”“一段时间”“格式化时间”“一段时间的相对表示”“一段时间的相对的字符串表示”“相对时间”

  • 标准时间:程序执行时刻的时间表示,见图1中的a。
  • 格式化时间:将日期/时间格式转换为预先定义的日期/时间格式,见图1中的b。
  • 一段时间:在程序执行时刻的基础上,增加一段时间后的起始时间和结果时间显示,见图1中的c。
  • 一段时间的相对表示:未来或者在过去的某个时间段表示,见图1中的d。
  • 一段时间的相对字符串表示:在程序执行时刻的基础上,增加一段时间的结果时间显示,见图1中的e。
  • 相对时间:在程序执行时刻的基础上,增加一段时间后的结果时间和时间段表示,见图1中的f。

鸿蒙开源第三方组件——日期和时间处理组件JodaTime-ohos-鸿蒙HarmonyOS技术社区

图1 显示“标准时间”“一段时间”“格式化时间”“一段时间的相对表示”“一段时间的相对的字符串表示”“相对时间”

(2)显示“当前时间”、“是否为今天”

  • 当前时间:程序执行时刻的年月日表示。同时也可以给出在当前时间的基础上增加一段    时间后的结果表示,如图2的a所示。
  • 是否为今天:可以判断程序执行的日期是否为今天、是否为昨天、是否为明天,如图2的b所示。

鸿蒙开源第三方组件——日期和时间处理组件JodaTime-ohos-鸿蒙HarmonyOS技术社区

图2 显示“当前时间”、“是否为今天”

(3)显示“一段时间的格式化表示”  

  “一段时间的格式化表示”:将一段时间用对应的单位表示出来。

鸿蒙开源第三方组件——日期和时间处理组件JodaTime-ohos-鸿蒙HarmonyOS技术社区

图3 显示“一段时间的格式化表示”

Sample解析

1、工程结构

鸿蒙开源第三方组件——日期和时间处理组件JodaTime-ohos-鸿蒙HarmonyOS技术社区

图4 Sample的工程结构

       从上图可以看出,Sample的工程结构主要分为三个部分: 图中第①部分的MainAbilitySlice主要负责构建组件应用的主页面布局。主页面上有9个按钮,点击不同的按钮,会跳转到不同的导航界面,每个界面显示不同的时间格式,如图5所示。