ios可拖动按钮

  • Post author:
  • Post category:其他


最近产品抽风,想做许鲜网的那个小客服按钮,虽然没啥难度,但是我懒啊,哈哈,上度娘搞了一个,但是点击事件和拖动重复了,擦。干脆写一个吧,仅供参考。


转载请注明出处哈。

话不多说,上代码:

- (UIButton *)panButton {
    if (!_panButton) {
        UIPanGestureRecognizer *panGesture = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(panAction:)];
        _panButton = [[UIButton alloc] init];
        _panButton.backgroundColor = [UIColor blueColor];
        _panButton.layer.borderWidth = 1.f;
        _panButton.layer.borderColor = [UIColor greenColor].CGColor;
        [_panButton setTitle:@"清除缓存" forState:UIControlStateNormal];
        _panButton.titleLabel.font = [UIFont systemFontOfSize:9];
        [_panButton addTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];
        [_panButton addGestureRecognizer:panGesture];
    }
    return _panButton;
}

- (void)panAction:(UIPanGestureRecognizer *)recognizer {
    CGPoint translationPoint = [recognizer translationInView:self.view];
    CGPoint center = recognizer.view.center;
    recognizer.view.center = CGPointMake(center.x + translationPoint.x, center.y + translationPoint.y);
    [recognizer setTranslation:CGPointZero inView:self.view];
}

-(void)buttonAction:(UIButton *)sender
{
    NSLog(@"烦人,点我干啥~");
}



版权声明:本文为cjh965063777原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。