使用 Swift 添加贴纸背景颜色
Posted
技术标签:
【中文标题】使用 Swift 添加贴纸背景颜色【英文标题】:Add Stickers Background Color With Swift 【发布时间】:2017-12-16 20:34:55 【问题描述】:我刚刚使用 Swift 制作了我的第一个 iMessage
贴纸,但我无法更改贴纸显示框中的背景颜色。我不希望它是白色的。我怎样才能做到这一点?我把代码放在哪里?
我在MessagesExtensions
下创建了一个新的 Swift 文件并使用了这段代码。我添加了所有图像并将它们连接到Storyboard
中的课程。我已经尝试了我在网上找到的所有类型的代码,包括:
self.view.backgroundColor = UIColor.black
self.view.backgroundColor = UIColor(patternImage: UIImage(named: "Pattern")!)
我是一个新生儿,也许我没有在正确的地方添加代码?
我没有更改MessagesViewController.Swift
代码,但我应该这样做吗?
无论如何,这是我使用的代码:
var stickers :[MSSticker]!
var stickerNames = ["Brokkoli8","Carrot2","Eggplant4","Gresskar9","Lettuce6","Mushroom3","Onion10","Paprika2","Potato5","Tomato7"]
override func viewDidLoad()
super.viewDidLoad()
self.stickers = [MSSticker]()
self.stickers = loadStickers()
override func numberOfStickers(in stickerBrowserView: MSStickerBrowserView) -> Int
return self.stickers.count
override func stickerBrowserView(_ stickerBrowserView: MSStickerBrowserView, stickerAt index: Int) -> MSSticker
return self.stickers[index]
private func loadStickers() -> [MSSticker]
var stickers = [MSSticker]()
for stickerName in self.stickerNames
guard let url = Bundle.main.url(forResource: stickerName,withExtension: "png") else
fatalError("resource does not exist")
let sticker = try! MSSticker (contentsOfFileURL: url,
localizedDescription: stickerName)
stickers.append(sticker)
return stickers
【问题讨论】:
嗨,Zzz。请围绕您的问题提供一些背景信息。告诉我们您尝试过什么但没有奏效,以便我们可以从那里得到它。一个小代码 sn-p 或观察到的行为的图像可能对初学者有所帮助。 嗨,很抱歉,我应该对我的问题添加一个更好的描述,但我已经更新了!请看一看! 【参考方案1】:查看 wwdc 演示文稿:https://developer.apple.com/videos/play/wwdc2016/204/ 特别是从 20 分钟开始。
简而言之:您需要将 MSStickerBrowserView 子类化,您可以在其上设置 backgroundColor
【讨论】:
以上是关于使用 Swift 添加贴纸背景颜色的主要内容,如果未能解决你的问题,请参考以下文章