[英]NSInvalidArgumentException || Unrecognized selector sent to instance
[英]'NSInvalidArgumentException' / '-[AppDelegate fieldChanged:]: unrecognized selector sent to instance
當我使用以下代碼時,該應用程序以NSInvalidArgumentException終止,但我不知道為什么:
在我的FieldViewController.m
我有:
-(IBAction)fieldEntered:(NSString*)sender {
[self.temp resignFirstResponder];
NSString *setFieldEntered;
setFieldEntered = temp.text;
fieldTemp = setFieldEntered;
[(EditViewController *)[[UIApplication sharedApplication] delegate] fieldChanged:(id)sender];
[self dismissModalViewControllerAnimated:YES];
}
它終止於[(EditViewController *)[[UIApplication sharedApplication] delegate] fieldChanged:(id)sender];
線。
在我的EditViewController.h中,我有-(void)fieldChanged:(id)sender; 在我的EditViewController.m文件中,我有:
-(void)fieldChanged:(id)sender {
[fieldArray insertObject:[FieldViewController fieldEntered] atIndex:[fieldArray count]+1];
}
請幫我弄清楚這一點。 謝謝。
從錯誤中可以看出,UIApplication的委托似乎設置為名為AppDelegate的類的實例,而您將其視為另一個名為EditViewController的類。
那沒有道理。 可能是您忘記了參考控制器。 應該是這樣的:
[[[UIApplication sharedApplication] delegate].editViewController fieldChanged:sender];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.