我正在尝试为 iOS 10 的消息扩展动态加载贴纸。我已成功加载这些图标;但是,它们未能正确限制消息应用程序的比例。
我正在通过 MSStickerBrowserView 的 MSStickerBrowserView 的子视图加载这些贴纸。我正在覆盖 numberOfStickers 和stickerBrowserView 的超类方法来加载我的图像。
据我所知,MSStickerBrowserView 只是 UICollectionView 的包装器。
无论如何,在加载贴纸后,它们不会被限制在页眉和页脚中。我在下面附上了我的意思的GIF:
如您所见,在紧凑视图中,最后一行贴纸位于页脚下方。因此,在展开视图中,顶行贴纸位于标题下方。
作为一个实验,我实现了相同的动态贴纸系统,但使用了实际的 UICollectionViewController 和 UICollectionView(而不是 MSStickerBrowser 包装器),并实现了相同的效果。此外,我试图为此创建一个自定义布局,但它产生了相同的结果。
我宁愿坚持使用 MSStickerBrowserView,因为它已经为此目的而制作;但是,如果您看到 UICollectionView 更合适,我愿意更改。
请注意,使用 MSStickerBrowserViewController 和 View 时,UICollectionView 似乎是以编程方式创建的,因此情节提要约束不可用,并且我无法将任何编程约束应用于视图的单元格。
我不太确定如何解决这个问题,并且会喜欢任何建议。