2015-05-30 73 views
0

我是新來的編碼iOS。我有一個TableViewCell它有一個布爾值(來檢查我的按鈕是否被按下)。針對特定單元格從TableViewController中的UITableViewCell訪問變量?

class ChinTwoTableViewCell: UITableViewCell { 

@IBOutlet var countLabel: UILabel! 
@IBOutlet var nameLabel: UILabel! 
@IBOutlet var bodyText: UITextView! 

var likeCheck:Bool = false 

// Other code 

@IBAction func likeTapped(sender: AnyObject) { 
    if((likeCheck) == false) { 
     sender.setTitleColor(UIColor.redColor(), forState: UIControlState.Normal) 
     likeCheck = true 
    } else { 
     sender.setTitleColor(UIColor.whiteColor(), forState: UIControlState.Normal) 
     likeCheck = false 
    } 
}  

}

我想訪問我的TableViewController這個布爾,然後檢查是否屬實,做的東西,如果假的,做的東西。

我該如何檢查它,以便它與其他類中的正確行有關?

回答

0

而不是直接在UITableViewCell中創建bool,我建議你創建一個模型類。

視圖控制器將保留一個模型類的數組。在cellForRow回調中,控制器可以將模型類傳遞給單元格,如果需要,單元格可以修改它。

+0

由於我是新編寫iOS的,模型類需要什麼,以及如何將tableViewController的時間線連接到這個新類?順便說一下,如果這樣做有所幫助,我就會使用解析。而且,你會建議完全刪除這個布爾值嗎?我應該如何跟蹤它是否被點擊過呢? –

+0

模型類只能包含UITableViewCell中的布爾值。所以你可以將bool從table view cell移動到model class。在表格視圖單元的.h文件中聲明新模型類的屬性。視圖控制器將爲表視圖的所有行創建模型類,並最初將所有模型類的布爾值設置爲NO。您可以將模型類從視圖控制器傳遞給UITableViewDataSource協議的cellForRow回調中的表視圖單元格。 – indrajit

相關問題