我有我的這個類中定義:範圍和方法傳遞
class TableViewController: UITableViewController {
let sections = ["Design", "Development", "Mobile"]
var blogPost1 = ["title" : "StackOverflow", "author" : "John Doe"]
var blogPost2 = ["Getting started" : "title", "John" : "author"]
var posts = [blogPost1, blogPost2]
override func viewDidLoad() {
super.viewDidLoad()
var blogPosts = [blogPost1, blogPost2]
}
}
我不明白爲什麼我能夠內viewDidLoad
創建的相關博客文章變量,但不blogPost2下的階級裏面?如果我嘗試,Xcode不會自動完成,並返回一個錯誤,說明ViewController沒有名爲「blogPost1」的成員。但是我可以在viewDidLoad()中創建它,但我不知道如何在其他函數中使用它。
第二期:
我有一個TableViewController。內的cellForRowAtIndexPath,我想發這條短信:
var posts = blogPosts.objectAtIndex(indexPath.row)
但objectAtIndex沒有在自動完成建議。我敢肯定,這是一個新人的錯誤,但我迷路了。任何想法?
謝謝!至於不一致的用法,我是故意這樣做的。我正在學習一個教程。 – user2747220