如何在CSSearchableItemAttributeSet中删除thumbnailData

时间:2019-05-04 23:44:38

标签: ios swift spotlight corespotlight

我索引的数据没有照片,所以我不想显示照片,我只想要标题和描述: error

我尝试设置:

attributes.thumbnailData =无

但是它仍显示空白图像。

static func setupSearchableContentForSpotlight() {
    let realm = try! Realm(configuration:Constants.realmConfigration.wordsConfigration)
    var words: Results<Word>!
    words = realm.objects(Word.self)
    var searchableItems = [CSSearchableItem]()
    words?.forEach { word in
        let attributes = CSSearchableItemAttributeSet(itemContentType: kUTTypeData as String)
        attributes.title = word.defination
        attributes.contentDescription = word.meaning
        attributes.thumbnailData = nil
        let searchableVegetable = CSSearchableItem(uniqueIdentifier: nil, domainIdentifier: nil, attributeSet: attributes)
    }
    CSSearchableIndex.default().indexSearchableItems(searchableItems) { (error) -> Void in
        print("indxing completed")
        UserDefaults.standard.set(true, forKey: "spotLightIndexed")
        if let error = error  {
            print(error.localizedDescription)
        }
    }
}

例如,我希望结果只能是:

考试

الماس

没有此空白图片。 注意:该应用程序已经具有显示图标。

2 个答案:

答案 0 :(得分:0)

始终在Core Spotlight结果旁边显示图像。如果您不提供缩略图,则iOS将显示您的应用图标。

确保图标集中的尺寸图标正确。您需要一个40x40图标(标准分辨率,2x和3x分辨率)。

答案 1 :(得分:0)

重启iPhone解决了问题。

额外提示::如果您正在使用CoreSpotlight,请在进行重大更改后将您的iPhone存放在厨房。