引用不使用变量名称的Struct

时间:2017-06-30 06:11:49

标签: arrays swift struct type-conversion

您好我有一个swift文件,其中包含我使用我的应用程序引用的元组数组。例如,我的结构如下:

struct workoutDict {
   static var bicepWorkouts = [("Barbell Curl","Bicep",0,"3x10"), ("x","x",3,"x")]
}

我有一个名为eqID的全局变量。例如,eqID = "bicepWorkouts"

我的部分代码中我试图调用此字典。通常情况下我会使用:workoutDict.bicepWorkouts并且这很好用,但我在我的字典中有其他训练,例如barbellWorkouts,所以我让用户根据用户输入选择“bicepWorkouts”,“barbellWorkouts”等,需要使用它来引用我的结构。

现在我有

//Call the global variable to get what workout to look for
code = eqID
let ourWorkouts = workoutDict.code 
当我们的ourWorkouts = workoutDict.bicepWorkouts被设置为时,

应设置eqID,但是当我使用该引用时,它会不断给出一个exerciseDict不包含代码的错误。

我尝试研究引用结构的替代方法,但我找不到任何东西。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

您应该创建另一个字典来存储名称:

struct workoutDict {

    static var dicts = [ "bicepWorkouts": bicepWorkouts, "barbellWorkouts": barbellWorkouts ]

}

然后您可以通过以下方式访问子词典:

workoutDict.dicts[eqlID]