2010-02-12 100 views
2

我是iphone開發新手。我解析一個xml文件,在表格的每一行顯示標題,日期,視圖和摘要。summar的內容很大,所以只有前三個單詞顯示在單元格中。我怎樣才能增加行的高度方面的內容的長度。所有的內容應該適合在單元格內,並且應該顯示全部內容。請幫助我。謝謝。如何在iphone中增加tableview中單元格的高度?

回答

13

您可以在tableView.delegate /數據源做到這一點:

- (CGFloat)tableView:(UITableView *)aTableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { 
    switch (indexPath.row){ 
     case 0: 
     if(indexPath.section==0) 
      return 123.0; // first row is 123pt high 
     default: 
     return 40.0; // all other rows are 40pt high 
    } 
} 

但這不過減慢滾動性能。理想情況下,您應該使用tableview.rowHeight將所有行的行高設置爲相同。

+0

我想增加顯示摘要的單個行的高度 – Warrior 2010-02-12 15:23:45

+0

根據NSIndexPath返回不同的數字。 – FelixLam 2010-02-12 15:26:34

+0

你能否詳細說明你的答案嗎?因爲我是iphone新手,我無法理解它。 – Warrior 2010-02-12 15:29:16

0

一種方法做到這一點是手動設置單元格的大小。只需用適當的東西替換ROW_HEIGHT即可。

cell.frame = CGRectMake(0.0, 0.0, 320.0, ROW_HEIGHT); 
+0

我想改變只有一行而不是所有行的高度。 – Warrior 2010-02-12 15:19:33

+0

您只能爲此單元格執行此操作... – willcodejavaforfood 2010-02-12 15:27:46

2
(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    NSString *text = @"write your dynamic text here"; 
    UIFont *cellFont = [UIFont fontWithName:@"Helvetica" size:14.0]; 
    CGSize constraintSize = CGSizeMake(320.0f, 999); // Make changes in width as per your label requirement. 

    CGSize textSize = [text sizeWithFont:cellFont constrainedToSize:constraintSize lineBreakMode:UILineBreakModeWordWrap]; 

    return textSize.height; 
} 
1

,如果你有在一個視圖中控制器的多條的tableview,可以爲每個不同的表視圖,作爲以下方法做。

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ 

    if (tableView == self.tableViewCampaigns) { 

     return 45; 
    }else if(tableView == self.tableViewAgenda) 
     return 32; 
    else 
     return 29; 
} 
0

嘗試使用此代理根據單元格內容自動管理。

func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat { 
      return 100 
     } 

     func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { 
      return UITableViewAutomaticDimension 
     } 
相關問題