- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在创建一个类似钢琴的应用程序,其中每个按钮都会弹奏一个音符。我的 UIButtons 在 Touch Down 事件中播放声音。当我将手指从一个按钮滑动到另一个按钮时(想象一下用手指在钢琴键上滑动以捕获其间的所有音符)时出现问题,它仍然“按住”第一个按钮而不触摸另一个按钮,除非我抬起手指。
如何在不抬起手指的情况下捕获多个 Touch Down 事件?
最佳答案
您可以像这样向按钮添加其他目标:
myButton addTarget:self
action:@selector(yourMethodHere:withEvent: )
forControlEvents:UIControlEventTouchDragInside];
这是您可以使用的事件类型的列表:
enum {
UIControlEventTouchDown = 1 << 0,
UIControlEventTouchDownRepeat = 1 << 1,
UIControlEventTouchDragInside = 1 << 2,
UIControlEventTouchDragOutside = 1 << 3,
UIControlEventTouchDragEnter = 1 << 4,
UIControlEventTouchDragExit = 1 << 5,
UIControlEventTouchUpInside = 1 << 6,
UIControlEventTouchUpOutside = 1 << 7,
UIControlEventTouchCancel = 1 << 8,
UIControlEventValueChanged = 1 << 12,
UIControlEventEditingDidBegin = 1 << 16,
UIControlEventEditingChanged = 1 << 17,
UIControlEventEditingDidEnd = 1 << 18,
UIControlEventEditingDidEndOnExit = 1 << 19,
UIControlEventAllTouchEvents = 0x00000FFF,
UIControlEventAllEditingEvents = 0x000F0000,
UIControlEventApplicationReserved = 0x0F000000,
UIControlEventSystemReserved = 0xF0000000,
UIControlEventAllEvents = 0xFFFFFFFF
};
那么你可以有这样一个函数:
-(void) yourMethodHere:(UIControl *) button withEvent:(UIEvent *)event {
//do whatever
}
关于ios - 通过滑动手指按下按钮(用于钢琴效果),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16995862/
关于如何以数学方式存储乐谱或钢琴乐谱而不是图像或 PDF,是否有任何公认的标准? 其中的一切都以数字方式表示,例如 XML 或其他形式,因此当需要时,他或她可以轻松地操纵音乐本身,而不仅仅是编辑 Po
我正在听 steve yegge 播客(#29,大约 21:29),其中一部分内容是他们在谈论“如何判断与你交谈的人是否聪明”,他们说一种方法是谈论“聪明人的事情”(我正在解释),例如“钢琴数字”和“
我不想用 C(1999) 构建自己的钢琴,但(声音)输出存在一些问题。 该程序检测预置键以及按下它们的时间...如果按下某个键,它会启动一个新的线程(phthread),该线程应该播放指定的wav文件
谁能给我一些关于如何合成乐器声音(钢琴、鼓、吉他等...)的指导 我什至不确定要寻找什么。 谢谢 最佳答案 不确定情况是否仍然如此,但 Android 似乎存在延迟问题,无法进行真正的声音合成。在我看
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 2年前关闭。 Improve thi
我在 SpriteKit 游戏中有一个函数,每 5 分钟为用户添加一次“生命” startTimer = NSTimer.scheduledTimerWithTimeInterval(300, tar
我是一名优秀的程序员,十分优秀!