2013-12-08 92 views
0

我已經閱讀了許多關於類似問題的文章,但似乎沒有任何工作,我顯然做錯了什麼。我有一個在StoryBoard(XCode 5)中的TableViewController。對於PrototypeCell,我將類型設置爲自定義,並將標識符設置爲「pbvcell」。我加了一些標籤,改變背景等。下面是設置單元格的原型Cell沒有被tableview使用

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


// Configure the cell... 

PBVlead *lead = [self.leads objectAtIndex:indexPath.row]; 
NSLog(@"Cell class %@", [cell class]); 

UILabel *leadNameLabel = (UILabel *)[cell viewWithTag:1]; 
leadNameLabel.text = lead.leadName; 
return cell; 
} 

我的tableview委託方法現在應用程序啓動,但即使我添加對象的實現代碼如下數據源陣列,並做了重裝數據,單元格是空白的,就像沒有使用自定義單元格一樣。看起來這應該很容易,而這就是我需要做的。我究竟在想什麼?

+0

我還沒有使用Storyboa rds,但通常您需要檢查從[[tableView dequeueReusableCellWithIdentifier:]'返回的對象是否爲'nil',如果是,則使用'[[subclass alloc] initWithStyle:reuseIdentifier:]''實例化一個新單元格。 – Graham

+1

@Graham,如果單元格是在故事板中定義的,則不需要這樣做。 – rdelmar

+1

@Graham:如果單元格被註冊爲故事板中的原型單元格,則不需要。如有必要,單元格將自動實例化。 –

回答

0

我把它留在上面的評論中,但只是爲了保持整潔,我會在這裏發佈它作爲答案。這很愚蠢,但是要注意,你必須操作原型單元格的contextView而不是tableview單元格本身,以便讓你的視覺變化產生效果......

「因爲我擁抱自己的愚蠢我會告訴大家這裏發生了什麼,我已經將TableCell背景設置爲藍色,並添加了一些UILabels,並將那些顏色設置爲白色,以顯示在藍色背景下運行應用程序,沒有標籤....我終於實現了是,我沒有將內容視圖背景設置爲藍色,所以......發生了什麼是標籤實際上顯示在視圖層次結構的內容視圖中白色背景上的白色標籤等於,看不見......: - )我把內容視圖背景設置爲藍色和烏拉,有一切!:-)兄弟..?