2012-10-25 54 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; 

以及返回类型后删除*。