有没有办法在按UIButton时获取用户触摸的位置?

时间:2012-08-11 04:21:08

标签: iphone ios uiimageview uibutton

当我的用户在按住UIButton的同时拖动他的手指时,我可以在该点获得手指的触摸位置吗?如果我不能这样做,我似乎可以创建一个UIImageView并给它按钮质量。在此之后,我将实现触摸开始,移动,结束方法。

这些方法;但是,触摸UIButton时不要运行。

我需要这个的原因是因为我想找出移动之外的触摸拖动的方向,以及其他各种原因,但如果这是不可能的,我将不得不创建UIImageViews。

另外,我没有UIButton的子类,我太开始接受苹果群了。

1 个答案:

答案 0 :(得分:16)

你应该遵循这个:

[myButton addTarget:self action:@selector(dragHandler:withEvent:) forControlEvents:UIControlEventTouchDragInside];
[myButton addTarget:self action:@selector(dragHandler:withEvent:) forControlEvents:UIControlEventTouchDragOutside];

-(void)dragHandler:(UIButton *)sender withEvent:(UIEvent *)event
{
    UITouch *touch = [[event allTouches] anyObject];

    NSLog(@"touchInfo:%@", NSStringFromCGPoint([touch locationInView:self.view]);
}