我正在尝试自定义“基于页面的应用程序”模板,并且是Swift的新手(以及所有编程)。在我的ModelController.swift中,我创建了一个2D数组作为主数据源。
然而,当我去打印它或将它用作label.text时,它包括括号。我如何得到我要求的数组元素的字符串?
class ModelController: NSObject, UIPageViewControllerDataSource {
var pageData: NSArray = [[String]]()
override init() {
super.init()
// Create the data model.
pageData = [["right", "wrong"], ["left", "right"]]
println(pageData[1]) //For
}
我不确定此文件中的其他内容是否相关,但这是另一点。
func indexOfViewController(viewController: DataViewController) -> Int {
// Return the index of the given data view controller.
// For simplicity, this implementation uses a static array of model objects and the view controller stores the model object; you can therefore use the model object to identify the index.
if let dataObject: AnyObject = viewController.dataObject {
return self.pageData.indexOfObject(dataObject)
} else {
return NSNotFound
}
}
答案 0 :(得分:0)
如果你只想要左,右
println("\(pageData[1][0]), \(pageData[1][1])")
如果你真的想要"左,右"双引号包括它'
println("\"\(pageData[1][0]), \(pageData[1][1])\"")
你得到结果的原因是因为pageData [1]不是一个字符串,它是一个NSArray。由于NSArray符合Printable协议,因此在println中使用时会提供.description。