2011-06-02 117 views
0

我試圖將子視圖添加到UITableView中的一個部分,它看起來像代碼是正確的,它不顯示任何內容,只是空白部分。下面是我使用的代碼:將子視圖添加到UITable

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

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
    if (cell == nil) { 
     cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; 
    } 

    if(indexPath.section==0){ 
     cell.textLabel.text [email protected]"<>"; 
    }else if(indexPath.section==1){ 
     if(indexPath.row==1){ 
      cell.frame =CGRectMake(0,0, 100, 100); 
      [cell.contentView addSubview:page.view]; 
     } 
    } else if(indexPath.section==2){ 

    } 


    // Configure the cell. 
    return cell; 
} 

感謝名單提前..

+1

什麼是'page'? 'page.view.frame'的價值是什麼? – 2011-06-02 08:36:32

+0

它是一個類,其中有一個page.xib類..我試圖將xib的視圖添加到表部分.. – 2011-06-02 08:42:06

回答

1

其中的一個問題是,你正在試圖改變細胞的高度。如果您想這樣做,除了更改其框架外,還必須實施tableView:heightForRowAtIndexPath:併爲每行返回適當的值。如果頁面正確加載(假設它是一個視圖控制器),則可以將該視圖添加爲子視圖。確保其框架落入單元格的邊界內。

附加視圖

由於dPage是一個視圖控制器,你將不得不宣佈pagedPage類的ivar,然後在viewDidAppear:爲此,

page = [[dPage alloc] initWithNibName:"page" bundle:nil]; 

tableView:cellForRowAtIndexPath:保持不變。

+0

我不認爲這是問題,因爲我嘗試了它的方式,會議仍然是空白..我懷疑.xib在調用該部分時是空的..任何方式來確認這一點? – 2011-06-02 08:59:25

+0

我確實說過,如果頁面正確加載。你是如何加載它的,你能更新代碼嗎? – 2011-06-02 09:08:19

+0

U是指page.xib還是mainpage.xib? – 2011-06-02 09:14:21