Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios ';NSInvalidArgumentException';,原因:'-[UIView isAnimating]:发送到实例的选择器无法识别_Ios - Fatal编程技术网

Ios ';NSInvalidArgumentException';,原因:'-[UIView isAnimating]:发送到实例的选择器无法识别

Ios ';NSInvalidArgumentException';,原因:'-[UIView isAnimating]:发送到实例的选择器无法识别,ios,Ios,新手到xcode和objective-c。所以请原谅我的新手错误,但我已经有一天多的时间出现了这个错误“'NSInvalidArgumentException',原因:'-[UIView isAnimating]:未识别的选择器发送到实例”,并且已经做了大量搜索,但没有成功。当我清理/构建应用程序时没有错误,但当我单击按钮加载“UIIMagePickerController”时,应用程序终止并抛出错误。请帮忙。thx - (void)showImagePickerForSourceType:(U

新手到xcode和objective-c。所以请原谅我的新手错误,但我已经有一天多的时间出现了这个错误“'NSInvalidArgumentException',原因:'-[UIView isAnimating]:未识别的选择器发送到实例”,并且已经做了大量搜索,但没有成功。当我清理/构建应用程序时没有错误,但当我单击按钮加载“UIIMagePickerController”时,应用程序终止并抛出错误。请帮忙。thx

- (void)showImagePickerForSourceType:(UIImagePickerControllerSourceType)sourceType
{
    if (self.imageView.isAnimating)
    {
        [self.imageView stopAnimating];
    }

    if (self.capturedImages.count > 0)
    {
        [self.capturedImages removeAllObjects];
    }

    UIImagePickerController *imagePickerController = [[UIImagePickerController alloc] init];
    imagePickerController.modalPresentationStyle = UIModalPresentationCurrentContext;
    imagePickerController.sourceType = sourceType;
    imagePickerController.delegate = self;

    if (sourceType == UIImagePickerControllerSourceTypeCamera)
    {
        imagePickerController.showsCameraControls = NO;

        [[NSBundle mainBundle] loadNibNamed:@"OverlayView" owner:self options:nil];
        self.overlayView.frame = imagePickerController.cameraOverlayView.frame;
        imagePickerController.cameraOverlayView = self.overlayView;
        self.overlayView = nil;
    }

    self.imagePickerController = imagePickerController;
   [self presentViewController:self.imagePickerController animated:YES completion:nil];

}

编译器正在将您的代码
self.imageView.isAnimating
转换为[类似的内容]:

[[self imageView] isAnimating]
根据错误消息,
[self imageView]
正在返回一个
UIView
对象。在
UIView
类上没有方法
isAnimating
,因此会出现异常


找出
[self-imageView]
的设置位置,也许它在那里做错了什么?另外,您是否打开了ARC?这可能是内存管理错误。

尝试更改您的线路:

if (self.imageView.isAnimating)


并确保<代码>爪哇。IVIEVIEW 确实是“<代码> UIVIEVIEW < /P> > P>错误消息意味着您试图发送一个消息(大致相当于调用C++、或大多数其他语言中的函数)给一个不实现它的对象。这使得Objective C与许多其他流行语言不同。我建议大家读一读,特别是

在运行时,当程序执行时,系统确定给定对象是否响应特定消息,如果响应,则执行哪个方法


另外,正如其他人所指出的,错误消息指出您的
imageView
对象是
UIView
而不是
UIImageView
。找出原因应该可以解决您当前的问题。

显示您的代码。您在哪里呼叫isAnimating?您如何保留图像选择器?您是否检查了
imageView
实际上是一个图像视图。什么时候开始制作动画?这两行虽然在语法上不同,但实际上是等价的。但是,关于确保self.imageView是UIImageView的部分是正确的。是的!就这样!太简单了!Wain和Abhi的回答都有助于解决问题。我一定是无意中从控制器中删除了UIImageView。我一周前才开始编程,非常感谢你们的帮助!你在这方面帮了我的忙,我有什么办法可以表扬你吗?我还不能投票,因为我太新了。但非常感谢你们,程序员是我见过的最友好的人@JaredGross,你可以把答案标记为正确。另外,欢迎来到代码世界:-)@JaredGross除了接受别人的答案外,还要确保对任何有帮助的答案或评论投赞成票。您还可以因接受答案而获得奖励。是的,错误出现在imageView中,现在实际上是UIImageView。我一定是无意中删除了原始UIImageView或链接到viewController的imageView。不管怎样,我都要走了!
if ([self.imageView isAnimating])