2014-10-31 61 views
0

我有一個包含UITableView的UIViewController。在我的表格視圖中,我有一個原型單元格,我想放置自定義標籤。我無法讓我的任何自定義標籤在單元格中呈現。數據源和tableview代表連接並正常工作。對於我的第一次嘗試,我將一個UILabel控件拖到我的原型單元格上。我的標籤設置爲1000。這裏是我的代碼以填充細胞:UILabel不在原型單元格中渲染

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

    UILabel *customLbl = (UILabel*)[cell viewWithTag:1000]; 
    if(indexPath.section == 0){ 
     [cell.textLabel setText:[rData.currentHeightReadings objectForKey:[heightKeys objectAtIndex:indexPath.row]]]; 
     [customLbl setText:@"CFS"]; 
    } else { 
     [cell.textLabel setText:[rData.currentFlowReadings objectForKey:[flowKeys objectAtIndex:indexPath.row]]]; 
     [customLbl setText:@"Ft."]; 
    } 

    return cell; 
} 

每個單元的默認渲染爲textLabel,因爲它應該。但是,自定義標籤不會顯示。我驗證了原型單元格實際上是通過更改單元格內容視圖的背景顏色進行渲染的。在我的故事板中,我設置了原型單元的重用標識符以匹配我的代碼。樣式設置爲「自定義」。我還應該做什麼?謝謝!

+0

試試[customLbl setNeedsDisplay] – 2014-10-31 16:56:45

+0

是您'customLb'實際上得到適當的參考元素或者是'nil'? – sha 2014-10-31 17:00:23

+0

該標籤顯示一個有效的實例並設置爲正確的文本。它不會顯示在單元格上。 – Pheepster 2014-10-31 17:01:30

回答

1

驗證您的自動佈局約束是否正確,以便UILabel真正定位在您期望的位置。

0

我有同樣的問題一次,我已經通過不調用任何方法來解決它cell.textLabel屬性。不要以任何方式設置文本。

試一試並回報。

+0

不幸的是,這並沒有幫助我的情況。謝謝,雖然... – Pheepster 2014-10-31 16:59:10

0

試試這個:

UILabel *customLbl = (UILabel*)[cell.contentView viewWithTag:1000];