2013-12-11 57 views
0

我想使用標籤名稱顯示單元格標籤文本。在默認單元格中的主要板子中,我添加了一個標籤,並將標籤名稱添加爲70.我正在嘗試使用以下方法加載該數據。沒有顯示。請幫幫我。ViewwithTag不獲取單元格標籤

[Crop Cropname] is not empty, cell.textLabel.text = [crop cropName] works fine.I am just trying to format things. 




- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
    { 
     static NSString *CellIdentifier = @"Cell"; 
     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 

     if (cell == nil) { 
      cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] ; 
      cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 
     } 
     // Configure the cell... 

     Crop * crop = [filteredItemist objectAtIndex:[indexPath row]]; 

     cell.detailTextLabel.text = [NSString stringWithFormat:@"%d",crop.cropId]; 

     UILabel *cropNameLabel = (UILabel *)[cell viewWithTag:70]; 
     cropNameLabel.text = [crop cropName]; 


     return cell; 

    } 
+0

如果您在StoryBord中創建了單元格,那麼只能使用該單元格。 –

+0

當我添加一個tableview控制器時,在故事板中創建了一個默認單元格。如果我使用cell.textLabel.text填充數據,單元格工作正常。 viewwithtag沒有做任何改變一些如何。 – user2569524

+0

你正在做錯的方式。如果你在xib中添加TableView,它將會沒有單元格。因此,最好單獨創建單元格,並添加UILabel,然後在'cellForRowAtIndexPath'中使用該單元格,不要再在'cellForRowAtIndexPath'中初始化任何單元格。 –

回答

1

您應該檢查您正在使用的故事板單元的小區標識爲使用「細胞」再利用標識使用的是出列的單元格。

什麼能發生的事情是,你實際上並沒有得到來自廈門國際銀行的細胞,因爲它並沒有與該標識符的細胞,但你通過創建一個新的細胞處理無細胞:

if (cell == nil) { 
     cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] ; 
     cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 
    } 

不幸的是,這個新的單元格沒有添加標籤,您添加到故事板中的標籤爲70 ...

+0

通過刪除此代碼並添加單元可重用標識符。我現在能夠獲得參賽作品。但是,將刪除此代碼會導致任何問題? – user2569524

+1

根據該文檔, 使用下面的方法: 的tableView dequeueReusableCellWithIdentifier:forRowAtIndexPath: 將始終從tableview中返回一個單元格,假設你已經在與該標識故事板設置的小區。如果你這樣做,那麼刪除該代碼不會導致任何問題。 – tjboneman

+0

非常感謝。我如何在不同的桌面視圖控制器上選擇一個單元格。我得到錯誤不平衡調用來開始/結束控制器的外觀轉換。在這種情況下, – user2569524