问题存储坐标
问题描述:
我做以下的位置的经度和纬度存储在自定义(NSManagedObject)收藏对象:问题存储坐标
CLLocationCoordinate2D coordinate = [location coordinate];
// Set bookmark variables.
[bookmark setLatitude:[NSNumber numberWithDouble:coordinate.latitude]];
[bookmark setLongitude:[NSNumber numberWithDouble:coordinate.longitude]];
可是,我一路上去不对劲,并打印出值坐标和书签产生此:
2011-03-09 12:56:30.793 XXXXXX[562:307] 55.615258, 12.985627 <- coordinate
2011-03-09 12:56:30.798 XXXXXX[562:307] 0.000000, 12.985626 <- bookmark
我的书签发生了什么?
Bookmark.h
@interface Bookmark : NSManagedObject
{
}
@property (nonatomic, retain) NSDate * dateCreated;
@property (nonatomic, retain) NSString * longText;
@property (nonatomic, retain) NSString * shortText;
@property (nonatomic, retain) NSNumber * longitude;
@property (nonatomic, retain) NSNumber * latitude;
@end
Bookmark.m
#import "Bookmark.h"
@implementation Bookmark
@dynamic dateCreated;
@dynamic longText;
@dynamic shortText;
@dynamic longitude;
@dynamic latitude;
@end
答
因为一切似乎是从代码,我建议你看一看托管对象模型的罚款。可能是错误数据类型的实体?也可能是您的NSLog
(或其他日志记录语句)格式错误的占位符(如%f
而不是%@
,因为属性为NSNumber
对象)。
+0
谢谢!问题确实是我使用%f而不是%@。 – jlowgren 2011-03-09 12:27:02
你的书签对象是怎样的? – Eimantas 2011-03-09 12:08:50
我们可以看到setLongtitude方法吗? :-) – Jensen2k 2011-03-09 12:09:00
我确信'setLongitude:'方法有问题.. – Eonil 2011-03-09 12:13:05