Ios UIPangestureRecognitor UIView insertSubview位于子视图下方

Ios UIPangestureRecognitor UIView insertSubview位于子视图下方,ios,objective-c,uibutton,uipangesturerecognizer,Ios,Objective C,Uibutton,Uipangesturerecognizer,我为UIButton添加了PangestureRecognitor, 我不明白以下几点: - (IBAction)handlePan:(UIPanGestureRecognizer *)recognizer { switch([recognizer state]){ case UIGestureRecognizerStateBegan: { UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRe

我为UIButton添加了PangestureRecognitor,
我不明白以下几点:

- (IBAction)handlePan:(UIPanGestureRecognizer *)recognizer {
switch([recognizer state]){
    case  UIGestureRecognizerStateBegan: {
        UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
        [button setFrame:recognizer.view.frame];
        [button setBackgroundColor: [UIColor redColor]];

//      [self.view insertSubview:button belowSubview:recognizer.view];
        _tempButton = button;

    }break;
    case  UIGestureRecognizerStateChanged: {

        CGPoint translation = [recognizer translationInView:self.view];
        recognizer.view.center = CGPointMake(recognizer.view.center.x + translation.x, recognizer.view.center.y + translation.y);
        [recognizer setTranslation:CGPointMake(0, 0) inView:self.view];

    }break;
}
}
在上面这个例子中,一切进展顺利。开始停止从上一个位置拖动

但是如果我取消注释这些行

//      [self.view insertSubview:button belowSubview:recognizer.view];
奇怪的事情发生了。
1) 开始拖动按钮。红色按钮被添加到视图中。NORMAL
2) 停止拖动按钮。这是正常的
3) 当我从上一个位置(上一步)再次开始拖动UIButton时,红色按钮下方会创建一个新按钮,该按钮开始作为原点按钮移动。第二步后我留下的按钮消失了奇怪


为什么?

您可以在添加
uipangestrue
的地方添加代码吗?使用ib或不使用ib
uipangestruerecognizer*pangestrue=[[uipangestruerecognizer alloc]initWithTarget:self action:@selector(handlePan:)];[\u userBtn addgesture识别器:panGesture]我认为这是一个参考问题,在某个地方,按钮的参考被互换了。