是否有可重用的标准 iOS“推送通知视图”?

Posted

技术标签:

【中文标题】是否有可重用的标准 iOS“推送通知视图”?【英文标题】:Is there a standard iOS "Push Notifications View" that is reusable? 【发布时间】:2015-12-22 22:17:38 【问题描述】:

我的意思是当您在后台/关闭应用程序并发送推送通知时,您会看到在屏幕顶部弹出正常外观的通知,如下所示:

我正在尝试模仿该确切视图来在应用程序中处理推送通知。我已经处理了在应用程序中接收通知的代码,它将使用 CWStatusBarNotification 窗格显示自定义视图。

但到目前为止,我一直无法复制我想要的那种精确外观。我想知道是否有一个标准的可重用视图包含在 ios 中,或者如果其他人制作了一个,它有我可以为图像和文本设置的插座,使其看起来就像上面的图像。我希望图像大小和间距以及它的颜色/不透明度相同。

或者如果没有我可以使用的视图,如果有人知道推送通知的测量/约束(如高度、图像大小/偏移量、文本字体/大小/偏移量等),那将只是很有帮助,因为我可以为它创建自己的视图。

有谁知道这是否存在于任何地方?

【问题讨论】:

您确定尝试完全模仿系统 UI 元素是个好主意吗?用户会期望它做与所述元素相同的事情,但不一定如此。 我根本不会模仿它。当下一个 iOS 改变了通知的外观并且你要花一整天时间来模仿新的时会发生什么。创建适合您的应用程序的警报。 @rickster 好吧,它会做与系统通知一样的事情,它只会转到该人发送给他们的短信,就像应用程序关闭或在后台一样. @DanielStorm 这是一个很好的观点,我会记住这一点并与其他人讨论它。此外,跨 iOS 版本的通知看起来也可能不同,这会导致另一个问题。感谢您的提醒。 【参考方案1】:

尝试使用以下方式安排本地通知:

let notification = UILocalNotification()
notification.fireDate = NSDate(timeIntervalSinceNow: 5)
notification.alertBody = "Hey you!"
notification.alertAction = "be awesome!"
notification.soundName = UILocalNotificationDefaultSoundName
notification.userInfo = ["key": "value"]
UIApplication.sharedApplication().scheduleLocalNotification(notification)

【讨论】:

我的印象是本地通知与推送通知的工作方式相同,因为如果应用程序在前台,它们将不会显示。几天前我试过这个,当代码被命中时没有任何反应,我很确定这是由于 iOS 处理通知的一般方式。

以上是关于是否有可重用的标准 iOS“推送通知视图”?的主要内容,如果未能解决你的问题,请参考以下文章

是否可以在 iOS 上自定义推送通知

迁移到 iOS VoIP 推送通知

是否可以使用 Phonegap 获取 iOS 应用推送设置?

打包 iOS 应用后推送通知停止工作

推送通知进入时的警报序列

是否有可用于我正在构建的应用程序的现有数据层?