IOS 14 中未显示 JSQMessageViewController 的集合单元格中的媒体项

Ali*_*hdi 9 objective-c ios swift jsqmessagesviewcontroller ios14

我正在使用 JSQMessageViewController 并且我面临的问题(仅在 ios14 中)我无法在设备中看到图像、视频和音频等媒体项目,尽管这些视图正在生成调试视图层次结构。见下图:-

调试视图层次截图:

在此处输入图片说明

这是集合视图单元格内 UIImage 的描述: <UIImageView: 0x7fe7d6d95b30; 框架 = (20 8; 177 131); clipsToBounds = YES; 不透明 = 否;自动调整大小 = RM+BM; userInteractionEnabled = NO; 层 = <CALayer: 0x600001ce4ec0>>

这是屏幕附加的屏幕截图:

在此处输入图片说明

您可以看到视图为图像生成了空间,但没有显示!

有人面临这个问题吗?我怎么解决这个问题。此问题发生在 iOS 14 中,它在 iOS 13 中完美运行。

小智 22

您需要在JSQMessagesMediaViewBubbleImageMasker.m
方法中覆盖- (void)jsq_maskView:(UIView *)view withImage:(UIImage *)image并更改行:

view.layer.mask = imageViewMask.layer;
Run Code Online (Sandbox Code Playgroud)

成为

view.maskView = imageViewMask;
Run Code Online (Sandbox Code Playgroud)

我建议您为此使用类别。对我来说这是解决方案。