我試圖創建一個非常簡單的應用程序,它顯示了UITableView中的歌曲列表。用戶可以選擇一首歌曲並開始播放歌曲。我還沒有實現AVAudioPlayer。我不想處理那件事。現在我只使用測試NSLog語句來測試tableView:didSelectRowAtIndexPath:方法。這是我的代碼。單個UITableViewCell的標識符?
- (void) tableView: (UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section == 0) {
switch (indexPath.row) {
case 0:
NSLog(@"Play Stay");
break;
case 1:
NSLog(@"Play She Was Young");
break;
case 2:
NSLog(@"Play Zombie Song");
default:
break;
}
} else {
//Uh oh I did not create this section.}
}
注意這些單元格是以編程方式創建的。我在界面生成器中有一個原型單元,這三個是以編程方式構建的。這些不是靜態單元格。他們是動態細胞。
事情是我敢肯定,這樣做一定有更好的方法。如果我改變任何這些單元格的順序,那麼NSLog語句將與單元格右邊的UILabel不匹配?什麼是更好的方式來編碼?也許爲每個單元格創建一個字符串ID。但是,我應該在哪裏存儲字符串ID?我應該將它存儲爲TableViewCell.h的@property嗎? 你如何爲每個細胞做一個標識符?
我看到一個非常好的解決方案here但我不能使用它,因爲我沒有一個靜態單元來創建一個IBOutlet。