如何在自定义UIButton上获取抽头坐标?

twb*_*bas 10 xcode storyboard uibutton ipad ios

我在iPad上使用XCode 4.4开发iOS 5,并在创建自定义按钮时使用Storyboard布局.

我有正确的触摸事件工作和记录,但现在我想在我的自定义按钮上获得点击的x/y坐标.

如果可能的话,我希望坐标相对于自定义按钮而不是相对于整个iPad屏幕.

这是我在.h文件中的代码:

- (IBAction)getButtonClick:(id)sender;
Run Code Online (Sandbox Code Playgroud)

和.m文件中的代码:

    - (IBAction)getButtonClick:(id)sender {

        NSLog(@"Image Clicked.");
    }
Run Code Online (Sandbox Code Playgroud)

就像我说的那样,当我点击图像时正确记录.

如何获得水龙头的坐标?

我从互联网上尝试了一些不同的例子,但是当它在日志框中显示一堆数字(可能是坐标)时它们总是会冻结.我是iOS开发的新手,所以请尽可能简单.谢谢!

Vla*_*mir 29

要获取触摸位置,您可以使用按钮操作方法的另一种变体:( myAction:forEvent:如果您从IB界面中创建它,请在参数字段中选择"发件人和事件"选项:在此输入图像描述)

然后在您的操作处理程序中,您可以从事件参数获取触摸位置,例如:

- (IBAction)myAction:(UIButton *)sender forEvent:(UIEvent *)event {
    NSSet *touches = [event touchesForView:sender];
    UITouch *touch = [touches anyObject];
    CGPoint touchPoint = [touch locationInView:sender];
    NSLog(@"%@", NSStringFromCGPoint(touchPoint));
}
Run Code Online (Sandbox Code Playgroud)