2010-01-05 75 views

回答

9

float myFloat = [[myTextField text] floatValue];

編輯:技術上最正確的方式做這將是使用NSNumberFormatter,因爲這將返回nilNSNumber如果不能正確解析字符串,而floatValue將只返回0.0格式不正確的字符串。但floatValue通常適用於大多數目的。

+0

打我吧=) – 2010-01-05 21:01:43

4

如果是NSTextField,請致電floatValue實際的物體,而不是從text返回的物體。 NSTextField沒有text方法。

float myFloat = [myTextField floatValue];

+0

+1好點。你也可以這樣做:'float myFloat = [[myNSTextField stringValue] floatValue];'。我認爲(從語義上)從字符串中獲取floatValue更有意義,因爲我認爲在textField上調用'floatValue'沒有什麼意義。你是否將文本字段轉換爲浮點數,或者將文本字段的內容轉換爲浮點數?這只是我的迂腐意見,但我認爲它更有意義。 :) – 2010-01-05 21:30:52

+0

我的觀點是'NSTextField'不響應方法'文本'。 'stringValue' yes,'text' no;) – catsby 2010-01-05 21:50:24

+0

顯然這是一個iPhone SDK問題,而UITextField確實有一個'text'方法。我的錯 – catsby 2010-01-06 01:21:06