iOS 小组件 widget 编辑小组件

返回小组件专栏:iOS 小组件 widget

1.编辑小组件

  • 如下图,编辑小组件,需要在GirlWidget.intentdefinition中配置

  • 点击右下角的加号,新建一个枚举类型
    请添加图片描述

  • 枚举类型改名MyEnum,并添加三个值
    请添加图片描述

  • 点击Configuration,Parameter下面的加号,添加一个参数,选择参数的类型
    请添加图片描述

  • 参数类型选择为我们刚刚添加的枚举类型
    请添加图片描述

  • 重新跑一下,长按就会出现Edit Widget的按钮

请添加图片描述

  • 点击按钮,会出现编辑界面
    请添加图片描述
  • 点击Choose,可以选择三个枚举值中的一个
    请添加图片描述

2.intentHandler

  • 有时候provide 代理方法不出来,需要把图1中所示的都勾上,clean xcode或者重启xcode
    func provideHeroOptionsCollection(for intent: DynamicCharacterSelectionIntent,
                                      with completion: @escaping (INObjectCollection<Hero>?, Error?) -> Void) {
    
    
        let characters: [Hero] = CharacterDetail.availableCharacters.map {
    
     character in
            let hero = Hero(identifier: character.name, display: character.name)
            
            return hero
        }
        
        let remoteCharacters: [Hero] = CharacterDetail.remoteCharacters.map {
    
     character in
            let hero = Hero(identifier: character.name, display: character.name)
            
            return hero
        }
        
        let collection = INObjectCollection(items: characters + remoteCharacters)
        
        completion(collection, nil)
    }

图1
请添加图片描述
图2
请添加图片描述

猜你喜欢

转载自blog.csdn.net/baidu_40537062/article/details/126634514