首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以更改UILocalNotification的显示持续时间?

是否可以更改UILocalNotification的显示持续时间?
EN

Stack Overflow用户
提问于 2013-12-18 05:53:26
回答 1查看 5.5K关注 0票数 0

我需要显示一个本地通知,并让它停留在屏幕上超过默认4-5秒,最好是直到应用程序本身删除它。我见过其他应用程序(例如潘多拉)能够以某种方式做到这一点(可能是推送通知?),但我在UILocalNotificationUIApplication方法(如presentLocalNotificationNow:scheduleLocalNotification:等)中找不到持续时间属性。无论是文献资料还是我找到的任何教程都无法解决显示时间问题。这难道就是不能用本地通知完成的事情吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-18 17:30:55

这里有几个解决方案,我也不建议:

你可以请求用户转到设置>通知中心>你的应用程序。并将警报样式从“旗帜”(默认)更改为“警报”。这将向用户呈现一个类似于应用程序在前台时出现的警报。用户将不得不取消警报,而不是刚刚出现/消失的横幅样式通知。除非这是一个公司的应用程序,你有用户购买,我不会走这条路线,因为这可能会惹恼用户。

2-我测试了声音剪辑方法,是的,如果你呈现一个通知的剪辑<30秒;通知将停留在(顶部)屏幕上,直到声音剪辑完成播放。话虽如此,如果用户点击任何音量按钮(例如,降低声音),通知甚至会在结束之前立即被驳回!不过,我认为通知的目的是一个温和的提醒,持续时间超过通常的4-5秒,这可能会使用户感到恼火(或者用户可能认为什么东西被卡住了,电话冻结了等等)。不管怎么说,这是代码:

代码语言:javascript
复制
UILocalNotification *howLongCanANotificationLast = [[UILocalNotification alloc]init];
howLongCanANotificationLast.alertBody=@"I am a notification";
howLongCanANotificationLast.soundName=@"musicfilename.mp3";
[[UIApplication sharedApplication] presentLocalNotificationNow:howLongCanANotificationLast];

希望这能有所帮助。

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

https://stackoverflow.com/questions/20650613

复制
相关文章

相似问题

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