我正在为swift3中的i message app实现贴纸包应用
我的代码就像这样
func loadStickers() {
for i in 1...6 {
if let url = Bundle.main.url(forResource: "flower\(i)", withExtension: "jpg") {
do {
let sticker = try MSSticker(contentsOfFileURL: url, localizedDescription: "")
stickers.append(sticker)
} catch {
print(error)
}
}
}
}
func createStickerBrowser() {
let controller = MSStickerBrowserViewController(stickerSize: .large)
addChildViewController(controller)
view.addSubview(controller.view)
controller.stickerBrowserView.backgroundColor = UIColor.blue
controller.stickerBrowserView.dataSource = self
view.topAnchor.constraint(equalTo: controller.view.topAnchor).isActive = true
view.bottomAnchor.constraint(equalTo: controller.view.bottomAnchor).isActive = true
view.leftAnchor.constraint(equalTo: controller.view.leftAnchor).isActive = true
view.rightAnchor.constraint(equalTo: controller.view.rightAnchor).isActive = true
}
//代表
func numberOfStickers(in stickerBrowserView: MSStickerBrowserView) -> Int {
return stickers.count
}
func stickerBrowserView(_ stickerBrowserView: MSStickerBrowserView, stickerAt index: Int) -> MSSticker {
return stickers[index]
}
这里输出也没有错误
但问题是贴纸显示像列表我需要网格意味着每行3贴纸我搜索了很多教程但我没有得到任何人可以帮助我...
提前致谢
答案 0 :(得分:0)
let controller = MSStickerBrowserViewController(stickerSize: .large)
大贴纸是206 x 206点,这意味着在大多数设备上没有空间可以显示每行多于一个。如果您需要网格,请使用较小的标签尺寸。如果要完全控制视图,请在单元格内使用带有MSStickerView
的集合视图。