簡體   English   中英

班級插座的實例未分配

[英]Instance of class's outlets are unallocated

我有一個名為HistoriqueCellUITableCell子類。 此類有插座(4個標簽)。 我有一個具有UITableViewUIViewControllerHistoriqueViewController )。 該表具有一個以HistoriqueCell子類化的原型單元。 該原型單元的四個標簽鏈接到HistoriqueCell.h的出口。 但是,我所有這些單元的實例始終都有未分配的出口。 我的同事的版本運行正常,並且代碼完全相同(我們繞過了git,我只是從他的usb棒中加載了他復制的項目,只是為了100%確保它不是git,即使git保證我們已經沒有區別了) 。

這使我懷疑問題不在於代碼,而在於xcode配置。 我記得我曾經有過類似的問題,這是由於本地情節提要所致。 簡而言之,法語版本已加載,並且沒有連接插座,這與我放置插座的英語版本相反。 使用法語情節提要時,像我現在遇到的問題一樣,未分配出口,但情節提要板未本地化。

這是顯示我未分配的出口的調試

這是情節提要,我在.m中也有@synthesize

電池使用示例:

我真的對這個問題感到沮喪,我似乎找不到問題。 拜托,如果任何人有任何線索,我都聽不見!

這是預期的,因為筆尖文件不會自動加載。

您應該通過調用[[NSBundle mainBundle] loadNibNamed:@"HistoriqueCell" owner:self options:nil]手動加載nib文件。

或者最好在表視圖中注冊筆尖對象,如下所示:

UINib *cellNib = [UINib nibWithNibName:@"HistoriqueCell" bundle:nil];
[self.tableView registerNib:cellNib forCellReuseIdentifier:@"HistoriqueCell"];

現在,當您調用dequeueReusableCellWithIdentifier:表視圖將返回可重用的單元格,或創建該單元格的新實例並為您加載筆尖。 並且不再需要此檢查:

if (cell == nil) {
    ...
}

也許您在代碼中將“單元格”設置為類似於標識ID,但在Interface Builder中未設置單元格

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM