** 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“应用程序试图在目标上呈现一个 nil 模态视图控制器

Posted

技术标签:

【中文标题】** 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“应用程序试图在目标上呈现一个 nil 模态视图控制器【英文标题】:** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Application tried to present a nil modal view controller on target 【发布时间】:2014-10-14 13:45:48 【问题描述】:

尝试制作相机功能来拍照或选择令人兴奋的照片。当我按“Infoga bild”时(选择一张令人兴奋的照片它会崩溃,但当我拍摄一张新照片时它可以工作。但图像不会显示在图像视图中。

得到错误**由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“应用程序试图在目标上呈现一个 nil 模态视图控制器 *** 首先抛出调用栈:

我从 tableview 单元格打开控制器视图。

相机功能代码:

#import "FMEImageview.h"
@implementation FMEImageview

- (IBAction)Tabild 
picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
[picker setSourceType:UIImagePickerControllerSourceTypeCamera];
[self presentViewController:picker animated:YES completion:nil];




- (IBAction)Infogabild
picker2 = [[UIImagePickerController alloc] init];
picker2.delegate = self;
[picker2 setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
[self presentViewController:picker animated:YES completion:nil];




- (void) imagePickerControllerDidCancel:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary*)info

image = [info objectForKey:UIImagePickerControllerOriginalImage];
[ImageView setImage: image];
[self dismissViewControllerAnimated:YES completion:nil];


- (void) imagePickerControllerDidCancel:(UIImagePickerController *)picker 
[self dismissViewControllerAnimated:YES completion:nil];


-(void) viewDidLoad 

[super viewDidLoad];



-(void) didReceiveMemoryWarning

[super didReceiveMemoryWarning];


@end

.h 代码:

@interface FMEImageview : UIViewController <UINavigationControllerDelegate, UIImagePickerControllerDelegate> 
UIImagePickerController *picker;
UIImagePickerController *picker2;
UIImage *image;

IBOutlet UIImageView *ImageView;



- (IBAction)Tabild;
- (IBAction)Infogabild;

@end

提前谢谢,我希望我的代码或问题不会太糟糕。我是 Objective-c 的新手

【问题讨论】:

【参考方案1】:

当您在 Infogabild 中创建的控制器名为 picker2 时,您似乎正尝试在 Infogabild 中显示选择器。

【讨论】:

是的,你可能应该建议他转储他不需要的实例变量。 和一个带有条件的 IBAction 可能避免了错字。 你成功了!非常感谢您的帮助!有时你对代码视而不见。 :)

以上是关于** 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“应用程序试图在目标上呈现一个 nil 模态视图控制器的主要内容,如果未能解决你的问题,请参考以下文章

由于未捕获的异常而终止应用程序 [UIImageView _isResizable]

由于未捕获的异常而终止应用程序,同时加载视图

由于未捕获的异常“NSInternalInconsistencyException”错误而终止应用程序

“由于未捕获的异常而终止应用程序”在推送视图控制器时崩溃

由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,

由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序