首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IOS通知实现设计技术

IOS通知实现设计技术
EN

Stack Overflow用户
提问于 2015-12-21 21:12:50
回答 1查看 49关注 0票数 0

我目前正在开发我的应用程序,使用Parse.com服务发送推送。

我已经成功地执行了,所以推送和接收是正确的。我需要帮助的是,当实际尝试处理通知时,如何思考。

我知道怎么做,但我有些问题困扰着我,很难在网上专门搜索这样的问题,所以经过几个小时的搜索和思考,我放弃了,想和你们分享我的问题。

现在转到实际问题上:

我应该在哪里实现代码来处理推送通知来做一些事情?在我的应用程序中,将有不同的推送通知用于不同的目的,每个推送通知都要求应用程序做一些事情。我是否应该编写相同的代码来处理我拥有的每个viewController上的推送通知(因为我认为当收到推送消息时,我不能真正知道用户在哪里),或者显然有一个更聪明/更干净的解决方案?

让我们说,一个特定的推送通知应该发出一个警报,用户可以按下两个按钮。如果我有三个不同的视图,即三个不同的viewControllers,那么我需要实现相同的代码来对每个VC执行警报吗?

如果我的问题不清楚,请告诉我,我会尽量解释得更透彻。谢谢。。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-21 21:30:48

我通常创建一个类,它处理通知,并引用我称为表示管理器(它知道如何实例化视图控制器)(它基本上保持对故事板的引用,并为应用程序委托处理windows设置)。应用程序委托实例化此通知处理程序,并将所有本地/远程通知转发给它。

为了显示通知的UI,我选择使用一个操作队列,就像在WWDC15会话“高级NSOperation”期间描述的一个苹果。我只是安排的操作,提出一个VC和完成时,VC被解雇。这些UI操作是相互排斥的(参见苹果示例代码中的AlertOperation )。这样,当收到大量通知时,我不会显示多个VC,但用户尚未关闭第一个通知的UI。

我们通过从主UIWindow的presentedViewController遍历到最内部的rootViewController来呈现这样的“模式”VC。这为您提供了一个VC,只要您不使用特殊的表示上下文配置,就可以调用presentViewController()。(同样,可以为您进行此查找的演示文稿管理器在这里也很有用)

如果您为该演示文稿实现了一个自定义演示控制器,您还可以创建一个自定义VC,并使其看起来像一个模态对话框/弹出。或者是像Facebook Messenger使用的那种从顶端下来的酒吧。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34404408

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档