簡體   English   中英

用於Map Kit的Objective-C中的字符串要浮動

[英]String to Float in Objective-C for Map Kit

我正在嘗試將JSON文檔中的一些經/緯度值傳遞給iPhone的Map Kit,然后在地圖上繪制點。 這些值來自NSArray:

CGFloat goLat = [valfields objectForKey: @"geo_lat"];
CGFloat golong = [valfields objectForKey: @"geo_long"];


CLLocationCoordinate2D newCoord = {golat, golong}; etc...

但是我收到“不兼容的類型”錯誤。

我的猜測是我需要將數組中的字符串值轉換為CGFloat嗎? 但我敢肯定。

有什么想法嗎?

謝謝,

G

'Casting'不是您需要做的,但是如果您的數組(實際上從您的代碼看起來像一個字典)包含字符串,那么是的,您需要將它們轉換為數字格式。 試試看:

CGFloat goLat = [[valfields objectForKey: @"geo_lat"] floatValue];

NSString文檔

floatValue

float返回接收者文本的float

- (float)floatValue

返回值
接收者文本的浮點值,為float ,在字符串的開頭跳過空白。 溢出時返回HUGE_VAL–HUGE_VAL ,下溢時返回0.0 如果接收方不是以浮點數的有效文本表示形式開頭,則還返回0.0

此外, NSString具有-doubleValue方法。 還有一個NSNumber類,它可能比數據字符串更好的表示形式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM