iOS 小组件 widget 编辑小组件

本文介绍了如何在iOS中编辑小组件,包括在GirlWidget.intentdefinition中配置枚举类型和参数,以及实现intentHandler以提供编辑选项。在编辑小组件时,需要为枚举添加值,并设置参数类型。同时,文章还提到当provide代理方法不工作时的解决办法。通过示例代码展示了如何提供Hero对象的集合。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

返回小组件专栏: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
请添加图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值