Ios 程序运行到超级删除行时是否会引发异常?

Ios 程序运行到超级删除行时是否会引发异常?,ios,objective-c,animation,uiview,Ios,Objective C,Animation,Uiview,removeFromSuperview是UIView的选择器。UIView的超类是UIResponder,因此如果程序运行到代码[super removeFromSuperview],则UIResponder不会识别选择器removeFromSuperview。所以我的问题是:它会抛出无法识别的异常吗 - (void)removeFromSuperview { [UIView animateWithDuration:0.35f delay:0.0 options:UIViewAni

removeFromSuperview
UIView
的选择器。UIView的超类是
UIResponder
,因此如果程序运行到代码
[super removeFromSuperview]
,则
UIResponder
不会识别选择器
removeFromSuperview
。所以我的问题是:它会抛出无法识别的异常吗

   - (void)removeFromSuperview
{
    [UIView animateWithDuration:0.35f delay:0.0 options:UIViewAnimationOptionCurveEaseOut animations:^{
        self.frame = afterFrame;
        if (self.leftLeave) {
            self.transform = CGAffineTransformMakeRotation(-M_1_PI / 1.5);
        }else {
            self.transform = CGAffineTransformMakeRotation(M_1_PI / 1.5);
        }
    } completion:^(BOOL finished) {
        [super removeFromSuperview];
    }];
}

我假设您是在
UIView
的子类中编写此代码的,因为这似乎是最可能的情况。您可能已经注意到,它不会抛出异常,因为
super
UIView
,而不是
UIResponder


类层次结构是
UIResponder->UIView->MyView

,这可能不是您想要的正确方法。您可能会看到以下内容: