iOS开发——在特定时间、任意时间做本地推送UILocalNotification

本文介绍如何在iOS中使用UILocalNotification实现根据用户设定的特定时间发送本地推送。通过设置fireTime属性并结合Date操作,可以创建在用户指定时间触发的通知。教程包括创建Date对象、设置通知属性及调度通知的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当需要发送一个本地推送的时候,我们需要为其设置fireTime即发送时间,网上好多示例代码只是简单地将一个类似10秒之后的时间设上去,但我们可能更需要在自定义或用户定义的某个特定的时间发送,其实这也不难,算是OC的知识点了——对常用类之时间类的运用。

首先我们需要一个具体的时间Date,我们就根据这个时间来将其拆分。这个时间通常来自用户设定的时间。

    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    formatter.dateFormat = @"yyyy-MM-dd HH:mm";
    NSDate *testDate = [formatter dateFromString:model.testTime];
    NSAssert(testDate != nil, @"testDate = nil");

其次,拆分时间需要的两个非常重要的类:NSCalender类和NSDateComponent类。初始化这两个变量,为NSDateComponent类指定Units。

    //to set the fire date
    NSCalendar *calender = [NSCalendar autoupdatingCurrentCalendar];
    NSDateComponents *dateComponents = [calender components:N
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值