gpt4 book ai didi

ios - 要从主应用程序发送到键盘扩展的图像

转载 作者:行者123 更新时间:2023-11-30 12:13:29 25 4
gpt4 key购买 nike

我有一个主应用程序 View Controller ,其中使用用户默认值设置和获取图像,如下所示:

animalcat = ["s1.jpg","s2.jpg","s3.jpg","s4.jpg"] 
var appGroupDefaults1 = UserDefaults.standard appGroupDefaults1 = UserDefaults(suiteName:"group.testKeyboard.Emo")!
appGroupDefaults1.set(animalcat, forKey: "imageValue")
appGroupDefaults1.synchronize()

此图像必须在键盘扩展类文件中获取,但图像显示为零。

在键盘扩展中-

let dataArray1 = appGroupDefaults1.object(forKey: "imageValue") print(dataArray1)

如何从主应用程序获取图像并将其显示在键盘扩展中,以便在加载键盘时显示它?

最佳答案

请检查是否有以下步骤: 1. 要将图像从应用程序共享到扩展程序,您需要启用应用程序组并正确设置。现在将所有图像保存在sharedContainer中,您可以看到以下代码。

let defaults = UserDefaults.init(suiteName: kAppGroupIdentifier)

        var arrDefault = [String]()
var arrImages = [String]()

if (defaults?.object(forKey: "arrImg") != nil) {
arrDefault = defaults?.value(forKey: "arrImg") as! [String]
print("Array : \(String(describing: defaults?.object(forKey: "arrImg")))")

arrDefault.append(imgName)
}
else{
arrDefault.append(imgName)
}

arrImages.removeAll()
arrImages.append(contentsOf: arrDefault)
defaults?.set(arrImages, forKey: "arrImg")

然后像这样获取它...... 2. let defaults = UserDefaults.init(suiteName: kAppGroupIdentifier)

        var arrTemp = [String]()

if (defaults?.object(forKey: "arrImg") != nil) {
arrTemp = defaults?.value(forKey: "arrImg") as! [String]
print("Array of Image Name : \(String(describing: arrTemp))")}

这里的 kAppGroupIdentifier 是您的应用程序组标识符,您在从共享容器保存和检索数据时必须使用它。“arrImg”是我获取图像数组的关键。

关于ios - 要从主应用程序发送到键盘扩展的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45727209/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com