2015-09-29 29 views
0

代碼The string1 outlet from the OptionalListViewController to the UILabel is invalid. Outlets can not be connected to repeating contentnill分配數據標籤(意外地發現零而展開的可選值)

import UIKit 

class ListsTableViewCell: UITableViewCell { 

    override func awakeFromNib() { 
     super.awakeFromNib() 
     // Initialization code 
    } 

    override func setSelected(selected: Bool, animated: Bool) { 
     super.setSelected(selected, animated: animated) 
     // Configure the view for the selected state 
    } 

    @IBOutlet weak var string1: UILabel! 

    @IBOutlet weak var string2: UILabel! 

    @IBOutlet weak var string3: UILabel! 

    @IBOutlet weak var string4: UILabel! 

    @IBOutlet weak var string5: UILabel! 

} 

var cellyItem = ListsTableViewCell() 

override func tableView(tableView: UITableView, 
    cellForRowAtIndexPath indexPath: 
    NSIndexPath) -> ListsTableViewCell { 


     let cell:ListsTableViewCell = tableView.dequeueReusableCellWithIdentifier("Celly", forIndexPath: indexPath) as! ListsTableViewCell 


     let dic:NSDictionary = _items.objectAtIndex(indexPath.row) as! NSDictionary 
     print(" Plist:\(dic)") 

     let str0:NSString = dic["0"]! as! NSString 
     let str1:NSString = dic["1"]! as! NSString 
     let str2:NSString = dic["2"]! as! NSString 
     let str3:NSString = dic["3"]! as! NSString 
     let str4:NSString = dic["4"]! as! NSString 
     let str5:NSString = dic["5"]! as! NSString 
     let str6:NSString = dic["6"]! as! NSString 
     let str7:NSString = dic["7"]! as! NSString 
     let str8:NSString = dic["8"]! as! NSString 

     cellyItem.string1.text = (str0 as String) + (str1 as String) 
     cellyItem.string2.text = (str2 as String) + (str3 as String) 
     cellyItem.string3.text = (str4 as String) + (str5 as String) 
     cellyItem.string4.text = (str6 as String) + (str7 as String) 
     cellyItem.string5.text = (str4 as String) + (str8 as String) 

     return cell 
} 

cellyItem.string1,2,3,4,5的第一部分時 - 收到珍妮

爲什麼會發生這種情況?像所有的權利!這個「str0,1,2,3,4,5,6,7,8」接收數據。也許我需要初始化子類?

+0

第一件事:將每個強制解包值(' !')與安全解包('如果let'),和'else'分支來處理錯誤。 – Moritz

+1

另外:[編輯]你的問題,以便它有正確的代碼佈局(縮進4個空格),並刪除頂部的無用文本。 –

+0

爲什麼你轉換爲NSString,然後轉換爲字符串?你可以直接轉換爲字符串。 – kelin

回答

1

對不起,我還沒有評論,但我注意到很奇怪:你爲什麼使用cellyItem?你應該在任何地方使用你的dequed cell。像:

cell.string1.text = STR0 + STR1,等等

+0

張貼完全是:該如何工作?即使它沒有崩潰,你也會將字符串存儲到任何人都不使用的單元格中。但它崩潰,因爲構造函數沒有設置IBOutlets;當單元格從故事板加載時完成。 – gnasher729

1

非常感謝您的幫助 - 答案是很簡單的。 Nill獲得,因爲它沒有創建tableview。解決方法是創建一條線 「tableView.registerNib(UINib(nibName:」ListsTableViewCell「,bundle:nil),forCellReuseIdentifier:」Celly「)」

相關問題