返回小组件专栏:iOS 小组件 widget
文章目录
- 1.编辑小组件
- 2.intentHandler
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 inlet hero = Hero(identifier: character.name, display: character.name)return hero}let remoteCharacters: [Hero] = CharacterDetail.remoteCharacters.map { character inlet hero = Hero(identifier: character.name, display: character.name)return hero}let collection = INObjectCollection(items: characters + remoteCharacters)completion(collection, nil)}
图1
图2