내 응용 프로그램에 UIButton
이 있고 TouchDown UIButton
이 발생하면 트리거되는 동작이 있습니다.조치 iPhone에서 UIButton을 2 초 동안 누르고 있으면 트리거됩니다.
iPhone의 UIButton
에서 터치 앤 홀드를 감지 할 수 있습니까? 사용자가 2 초 이상 버튼을 길게 누르면 내 액션이 실행되기를 원합니다.
어떤 아이디어?
내 응용 프로그램에 UIButton
이 있고 TouchDown UIButton
이 발생하면 트리거되는 동작이 있습니다.조치 iPhone에서 UIButton을 2 초 동안 누르고 있으면 트리거됩니다.
iPhone의 UIButton
에서 터치 앤 홀드를 감지 할 수 있습니까? 사용자가 2 초 이상 버튼을 길게 누르면 내 액션이 실행되기를 원합니다.
어떤 아이디어?
UILongPressGestureRecognizer
이 필요합니다. 예를 들어,
UILongPressGestureRecognizer *longPress_gr = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(doAction:)];
[longPress_gr setMinimumPressDuration:2]; // triggers the action after 2 seconds of press
[yourButton addGestureRecognizer:longPress_gr];
액션을 수 있도록 한 번만 트리거 취득 (예. 2 초 지속 시간이 끝나면,), 당신이 당신의 doAction:
방법은 다음과 같이 보입니다 있는지 확인
- (void)doAction:(UILongPressGestureRecognizer *)recognizer {
if (recognizer.state == UIGestureRecognizerStateBegan) {
// Your code here
}
}
다른 방법으로 this NBTouchAndHoldButton을 사용할 수 있습니다. 이것은 정확히 당신이 원하는 것이며 구현하기가 매우 쉽습니다.
TouchAndHoldButton * pageDownButton = [TouchAndHoldButton buttonWithType:UIButtonTypeCustom];
[pageDownButton addTarget:self action:@selector(pageDownAction:) forTouchAndHoldControlEventWithTimeInterval:0.2];
행운을 빈다!
나는 당신의 코드를 시험해 보았다. 하지만 내 행동이 두 번 방아쇠를 당기는 데 문제가 하나 있습니다. 2 초 후 첫 번째 동작 트리거 및 끝낼 때 두 번째. – Siddiqui
@Arman : 오 .. 내 대답을 편집했습니다. 나는 그것이 작동해야한다고 생각한다. 확인 해봐. – EmptyStack
Simon에게 감사드립니다. 그것은 나를 위해 정말로 도움이된다. – Siddiqui