Swift:创建任何对象的字典数组

标签 swift dictionary

我正在尝试创建一个数组,其中元素是字典,键是字符串,值是 AnyObject。这是我的代码:

var informationOfRows: Array<Dictionary<String, AnyObject>> = [
        ["title": "Mis Promos", "icon": FontAwesome.Money, "segue": "myPromoSegue"],
        ["title": "Mis Marcas", "icon": FontAwesome.Briefcase, "segue": "myBrandSegue"],
        ["title": "Editar Perfil", "icon": FontAwesome.Edit, "segue": "editUserProfileSegue"],
        ["title": "Invitar Amigo", "icon": FontAwesome.EnvelopeO, "segue": "inviteFriendSegue"],
        ["title": "Quejas y Sugerencias", "icon": FontAwesome.LightbulbO, "segue": "suggestionSegue"]
    ]

但是,我收到一条错误消息,指出:如果没有更多上下文,表达式类型不明确。

如何解决这个问题?

提前致谢

P.S.:Fontawesome 是一个包含大量图标的库。

最佳答案

您的FontAwesomeString 类型的枚举:

public enum FontAwesome: String { ... }

String是值类型,而不是对象类型,因此它不符合AnyObject 。 Swift 1.2 在这方面给出了比 2.0 更好的错误消息。将您的字典更改为<String, Any>相反:

var informationOfRows: Array<Dictionary<String, Any>> = ...

关于Swift:创建任何对象的字典数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32463439/

相关文章:

swift 4 : Cannot assign value of type '(Void) -> Void' to type '(() -> Void)?'

python - 使用正则表达式进行哈希表/字典/ map 查找

java - 如何使用 JPA 和 Hibernate 返回一个 Map,其中键是实体属性,值是实体

python - 如何将字典变成字符串?

python - 根据编号键对字典进行排序

ios - Swift:如何知道谷歌地图的右上角和左下角坐标

ios - UILabel 上的 clipsToBounds 不起作用

ios - 如何获取设备的宽度和高度?

swift - windowShouldClose 报告未解析的标识符

python - 将值追加到Python中具有现有或不存在键的字典中的列表