Objective c 我得到一个uu NSCFNumber isEqualToString:]错误
首先,对不起,我的英语不是我的母语:) 我要撞车了 “由于未捕获异常而终止应用程序 “NSInvalidArgumentException”,原因:'-[\uu NSCFNumber isEqualToString::发送到实例0x68b9d00'的选择器无法识别 我在这里看到了很多类似的错误和问题,但原因与我的大不相同 我有一个Objective c 我得到一个uu NSCFNumber isEqualToString:]错误,objective-c,ios,Objective C,Ios,首先,对不起,我的英语不是我的母语:) 我要撞车了 “由于未捕获异常而终止应用程序 “NSInvalidArgumentException”,原因:'-[\uu NSCFNumber isEqualToString::发送到实例0x68b9d00'的选择器无法识别 我在这里看到了很多类似的错误和问题,但原因与我的大不相同 我有一个NSObject,我试图通过一个名为prepareforsgue的事件传递它。 事件由3NSString组成,下面是我的事件。h: @interface
NSObject
,我试图通过一个名为prepareforsgue
的事件传递它。
事件由3NSString
组成,下面是我的事件。h:
@interface Event : NSObject
{
NSString* idEvent;
NSString* lat;
NSString* lng;
}
@property NSString* idEvent;
@property NSString* lat;
@property NSString* lng;
@end
当我在另一端获取事件对象时,我可以输出事件的内容get(NSLog(@“%@”,eventGet.lat);)
,它工作正常。
但是当我尝试将eventGet.lat“
放入UILabel
时,我得到了错误
以下是发生错误的代码:
DetailEvent是获取事件的视图
DetailEvent.h:
@interface DetailEvent : UIViewController
@property (weak, nonatomic) IBOutlet UILabel *latEvent;
@property (weak, nonatomic) IBOutlet UILabel *lngEvent;
@property (strong, nonatomic) Event* eventGet;
@end
和DetailEvent.m:
@implementation DetailEvent
@synthesize latEvent = _latEvent;
@synthesize lngEvent = _lngEvent;
@synthesize eventToDisplay = _eventToDisplay;
- (void)viewDidLoad
{
[super viewDidLoad];
// works fine
NSLog(@"Event lat : %@", _eventToDisplay.lat);
// here is the crash
_latEvent.text = _eventToDisplay.lat;
}
这让我很困惑,我将非常感激
谢谢 这大概是因为设置的变量是NSNumber,而不是NSString(声明的)。您可以实现此变量的setter,并在设置为查找违规者时测试类型是否为NSString。请在创建
事件
对象的位置发布代码。似乎lat
被设置为NSNumber
的实例,而不是NSString
噢,多亏了你,我才发现了我的错误。我用(我认为是NSString的东西)设置NSString,但实际上是NSInteger。你说得对:)