铸造浮子和UILabel

时间:2011-03-02 01:57:20

标签: iphone ios casting uilabel nsnumber

HI -

我在UILabel中有一个值,我希望将该数字传递给float类型的值。

rate = float
hourlyRate = label

以下是我的代码,我得到错误。我知道从对象到原始值的不良形式,但必须有办法。

任何帮助将不胜感激!

rate = NSNumber numberWithFloat:[hourlyRate.text rate];

2 个答案:

答案 0 :(得分:1)

NSString有一个方便的floatValue方法:

rate = [hourlyRate.text floatValue];

答案 1 :(得分:1)

rate = NSNumber numberWithFloat:[hourlyRate.text rate];

这是无效的,因为如果您尝试将消息numberWithFloat:发送到NSNumber,则必须将其括在括号中,如下所示:

rate = [NSNumber numberWithFloat:[hourlyRate.text rate]];

而且hourlyRate.text还会返回一个NSString。您不能向方法rate发送NSString,除非您将其子类化并添加了该方法。

这是获取UILabel的浮点值的正确方法,试试这个:

rate = [hourlyRate.text floatValue];

你的意思是:

float rate;
相关问题