我正在执行以下操作以将位置的经度和纬度存储在自定义(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
答案 0 :(得分:1)
由于代码中的所有内容似乎都很好,我建议您查看托管对象模型。可能是数据类型错误的实体?也可能是您的NSLog
(或其他日志记录语句)格式错误占位符(例如%f
而不是%@
,因为属性为NSNumber
对象)。