创新互联IOS教程:在小组件中显示动态日期

概览

因为小组件扩展不会一直运行,所以你无法直接更新小组件的内容。WidgetKit 会代你渲染小组件的视图并显示结果。但那些在小组件显示时继续更新的内容,也可以借助某些 SwiftUI 视图来呈现。

创新互联建站专注为客户提供全方位的互联网综合服务,包含不限于成都网站设计、成都网站制作、吉阳网络推广、微信小程序、吉阳网络营销、吉阳企业策划、吉阳品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联建站为所有大学生创业者提供吉阳建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com

使用小组件中的文本 视图,可以在屏幕上显示最新的日期和时间。下面的示例显示了可用的组合。

要显示自动更新的相对时间:

 let components = DateComponents(minute: 11, second: 14) let futureDate = Calendar.current.date(byAdding: components, to: Date())!   Text(futureDate, style: .relative) // Displays: // 11 min, 14 sec   Text(futureDate, style: .offset) // Displays: // -11 minutes

使用相对 样式显示当前日期和时间与指定日期之间的绝对差异,无论日期是在未来还是过去。偏移 样式显示当前日期和时间与指定日期之间的差异,用减号 (-) 前缀表示未来的日期,用加号 (+) 前缀表示过去的日期。

要显示持续自动更新的计时器:

 let components = DateComponents(minute: 15) let futureDate = Calendar.current.date(byAdding: components, to: Date())!   Text(futureDate, style: .timer) // Displays: // 15:00

对于未来的日期,计时器 样式会进行倒计时,直到当前时间达到指定的日期和时间,对于过去的日期则进行正计时。

要显示绝对日期或时间:

 // Absolute Date or Time let components = DateComponents(year: 2020, month: 4, day: 1, hour: 9, minute: 41) let aprilFirstDate = Calendar.current(components)!   Text(aprilFirstDate, style: .date) Text("Date: \(aprilFirstDate, style: .date)") Text("Time: \(aprilFirstDate, style: .time)")   // Displays: // April 1, 2020 // Date: April 1, 2020 // Time: 9:41AM

最后,要显示两个日期之间的时间间隔:

 let startComponents = DateComponents(hour: 9, minute: 30) let startDate = Calendar.current.date(from: startComponents)!   let endComponents = DateComponents(hour: 14, minute: 45) let endDate = Calendar.current.date(from: endComponents)!   Text(startDate ... endDate) Text("The meeting will take place: \(startDate ... endDate)")   // Displays: // 9:30AM-2:45PM // The meeting will take place: 9:30AM-2:45PM

网站名称:创新互联IOS教程:在小组件中显示动态日期
本文地址:http://www.shufengxianlan.com/qtweb/news44/520544.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联