我正在开发一个小型项目,我正在播放可嵌入到我的应用程序中的可用MP3列表 - 一个教育应用程序。Swift 3 - 存储值,元组,数组,其他的正确方法?
我试过最难找到答案,但我似乎无法找到适合的东西,所以我平时的事情 - 如果这是一个重复我已经搜索我最难找到的东西第一。
MP3的名称与每个30章的5个单元重合。
我试图找到一种方法来存储和检索纠章,类似于:
学习单元###章MP3
我想知道什么是最好的方式来存储和/或呼叫正确的单位和章节。
我目前使用两个表视图来选择Unit#和Chapter/Lesson#。
该数据被传递到播放所需MP3的视图,所以我传递了两个变量,都是Int。
我在这里尝试了,我知道的是完全错误的,应说明什么我想(希望)做:
import Foundation
class LessonPlan {
var lessonMatrix = [(unit:Int,chapter:Int,filename:String)];
init() {
for unitNo in 1 ... 5 {
for chapterNo in 1 ... 30 {
chapterWithLeadingZeros = String(format: "%02d", chapterNo)
lessonMatrix.append(unit:unitNo, chapter:chapterNo, filename:"Learning Unit \(unitNo) Chapter \(chapterWithLeadingZeros).mp3")
}
}
}
}
我知道上面没有编制,但其我的思维过程。
感谢您提供任何方向。
Swift3/Xcode 8.3.1,试图定位iOS9。
我建议你做一个新的结构类型,而不是使用元组。 – Alexander
你的主要问题是'[(unit:Int,chapter:Int,filename:String)]'是* type *(等于'Array <(unit:Int,chapter:Int,filename:String)>') 。你想要做的是创建一个新类型的实例,比如'Array <(unit:Int,chapter:Int,filename:String)> .init()'。这可以简写为'Array <(unit:Int,chapter:Int,filename:String)>()',甚至是'[(unit:Int,chapter:Int,filename:String)]()' – Alexander