代码之家  ›  专栏  ›  技术社区  ›  lmiguelvargasf

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

  •  0
  • lmiguelvargasf  · 技术社区  · 9 年前

    我试图创建一个数组,其中元素是字典,键是字符串,值是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"]
        ]
    

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

    我如何解决这个问题?

    提前感谢

    注:Font真棒是一个包含大量图标的库。

    1 回复  |  直到 8 年前
        1
  •  1
  •   Code Different    9 年前

    你的 FontAwesome 是类型的枚举 String :

    public enum FontAwesome: String { ... }
    

    一串 是值类型,而不是对象类型,因此不符合 AnyObject .Swift 1.2给出了比2.0更好的错误消息。将词典更改为 <String, Any> 而是:

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