2012-10-25 36 views
0

我有一個視圖控制器與幾個表。我想要一張桌子比其他桌子有更大的單元格。現在,我有:我需要返回到tableView:heightForRowAtIndexPath?

- (CGFloat *)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    if (tableView != myBigTable) 
    { 
     return 44; 
    } 
    else 
    { 
     return 88; 
    } 
} 

我得到一個警告說

不兼容的整數指針轉換從結果類型「CGFloat的*」(又名「浮動*」一個 函數返回「詮釋」 )

當我運行它時,它崩潰。

我也試過:

  • return 44.0 - 誤差爲雙浮*轉換
  • return 44.0f - 錯誤浮浮*轉換
  • CGFloat *height; height = 44; return height; - 同樣的錯誤作爲剛剛返回值我直接需要

我找了一個像[CGFloat floatWithDouble:44.0];這樣的NSNumber,但我沒有找到nything。我應該用什麼?

回答

5

你的函數聲明是錯誤的。它必須是

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

返回類型爲CGFloat,而不是CGFloat *

+0

是的,就是這樣。謝謝。 – GeneralMike

1

您應該使用

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

以及返回類型後刪除*。