ios13通知内容自定义高度

Posted

技术标签:

【中文标题】ios13通知内容自定义高度【英文标题】:ios13 notification content custom height 【发布时间】:2019-09-17 10:14:17 【问题描述】:

我们的代码在以前的版本中工作,但在 ios13 上,自定义通知内容高度无法正常工作。一切都应该是可见的,但在部分视图后按钮不可点击。因此,例如在 320 像素之后,自定义视图是不可点击的。在 ios12 上运行相同的代码即可。

func didReceive(_ notification: UNNotification) 

   let content = notification.request.content
            
   self.preferredContentSize = CGSize(width: self.view.frame.size.width, height: contentH)
   self.view.setNeedsUpdateConstraints()
   self.view.setNeedsLayout()

有什么解决办法吗?还是iOS13的bug?

##更新:

我们正在 iOS14 测试版上开发我们的应用程序,但问题仍然存在。与此相关的只有一件事是新的。当我们点击屏幕时,这就是我们得到的。

通知内容[44466:2340668] [断言] UIScrollViewDelayedTouchesBeganGestureRecognizer 已移至视图 那不是滚动视图,因此我们无法确定触摸是否在 滚动指示器。

我们正在将所有子视图添加到视图控制器的视图中(没有自定义容器)。

【问题讨论】:

我认为这是一个错误,在我看来,当它是 iOS 13.0 时,什么都看不到,但在所有其他操作系统上都可以正常工作 【参考方案1】:

我不确定您从哪里设置高度和宽度,但在 IOS 13 之后,通知和推送通知都发生了很多变化,虽然推送通知仍然是一个很大的麻烦,必须更改令牌,而通知的最大影响是很多UIApplicationDelegate 生命周期方法不再被调用。

现在 UISceneDelegate 中有相应的生命周期方法。这意味着需要在 iOS 13 下收听 UIScene.didEnterBackgroundNotification 通知。现在您可能认为它对通知的高度或宽度没有直接影响,我遇到了这种情况并且正在移动他们根据他们正确呈现的新生命周期方法的人。

我不确定您的问题是否会得到解决,但请查看以下链接。可能会对你有所帮助。即使我在遇到问题时也提到了这一点

View controller responds to app delegate notifications in iOS 12 but not in iOS 13

【讨论】:

不,问题与这些东西无关,我已经向苹果报告了这个错误,希望有人回答或修复

以上是关于ios13通知内容自定义高度的主要内容,如果未能解决你的问题,请参考以下文章

如何为 ios 本地通知内容提供自定义辅助功能文本 - UNNotificationContent

ios 自定义cell中的block的值怎么取

iOS 可高度自定义的底部弹框

如何自定义pickerView的高度和宽度

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

ios8自定义交互式推送通知