Ios 获取swift中UIButton按下的位置

Ios 获取swift中UIButton按下的位置,ios,xcode,swift,uibutton,Ios,Xcode,Swift,Uibutton,我在视图上设置了几个DrumPad,它们都连接到drumPadPlay iAction方法。我想确定用户按下发送器按钮内的y轴位置,以调整鼓垫将播放的音量。我用的是斯威夫特 在这被标记为重复问题之前,我已经引用了这个问题,解决方案在当前版本的swift中不起作用,或者我不知道在回答“buttonView”的地方放什么。 这是我的代码-错误是“使用未解析的标识符'buttonView'” 我不知道buttonView用什么。我试过sender.superview!并搜索了发件人的属性/函数列表,

我在视图上设置了几个DrumPad,它们都连接到drumPadPlay iAction方法。我想确定用户按下发送器按钮内的y轴位置,以调整鼓垫将播放的音量。我用的是斯威夫特

在这被标记为重复问题之前,我已经引用了这个问题,解决方案在当前版本的swift中不起作用,或者我不知道在回答“buttonView”的地方放什么。

这是我的代码-错误是“使用未解析的标识符'buttonView'”
我不知道buttonView用什么。我试过sender.superview!并搜索了发件人的属性/函数列表,但找不到任何有帮助的内容

sender
是一个
BNDrumPad
,它(大概)是UIView的一个子类,因此在本例中,您只需使用
sender
。在您链接到的答案中,
sender
参数被定义为
AnyObject
,因此他们必须首先将其强制转换为
UIView

@IBAction func drumPadPressed(sender: BNDrumPad, event: UIEvent) {

    //...code for function here

    // get any touch on the buttonView
    if let touch = event.touchesForView(sender)?.anyObject() as? UITouch {
        // print the touch location on the button
        println(touch.locationInView(buttonView))
    }

    //...more code for function here
}

您链接到的答案是正确的。也许您可以编辑您的问题,以显示您尝试的代码和您遇到的错误/问题。我编辑问题以包含代码示例。我有一种感觉,这是一个如此简单的答案,另一个答案假设它将被知道用什么来取代buttonView,但我不明白。
@IBAction func drumPadPressed(sender: BNDrumPad, event: UIEvent) {

    //...code for function here

    // get any touch on the buttonView
    if let touch = event.touchesForView(sender)?.anyObject() as? UITouch {
        // print the touch location on the button
        println(touch.locationInView(buttonView))
    }

    //...more code for function here
}