UIButton이 있습니다. 사용자가 상기 버튼을 가볍게 두드리면 손가락의 x 좌표를 어떻게 얻을 수 있습니까? 나는 그것이 touchesBegan을 포함 할 것이라고 생각하고있다. 그러나 "touchesBegan"이 버튼에서 발생했다면 어떻게 값을 얻을 수 있을까? 그리고 버튼의 x, y, 너비 및 높이를 모니터링하고 내 터치가 해당 영역에 있는지 확인하는 것 외에는 코드가 처리 할 수 있도록 버튼의 사용자 상호 작용을 비활성화해야합니다. xib 재료로 지어진다. 감사!iOS UIButton을 두드리는 손가락 x 좌표
1
A
답변
9
"탭"은 일반적으로 버튼 내부의 터치 다운이며 버튼 내부의 터치 업으로 간주됩니다. 터치 다운 인사이드 이벤트 또는 터치 업 인사이드 이벤트 (또는 둘 다)를 원하는지 알아야합니다.
터치 다운 내부 이벤트가 필요하다고 가정 해 보겠습니다. (
당신이 펜촉의 버튼을 만드는 경우- (IBAction)buttonWasTouched:(UIButton *)button forEvent:(UIEvent *)event {
NSSet *touches = [event touchesForView:button];
NSLog(@"button:%@ touches:%@", button, touches);
}
, 뷰 컨트롤러의 buttonWasTouched:forEvent:
행동의 "터치 다운"출구 버튼을 컨트롤 버튼으로 클릭하고 연결 :보기 컨트롤러에서이 같은 방법을 쓰기 아마도 File 's Owner입니다).
코드에서 단추를 만드는 경우 을 단추에 보내 UIControlEventTouchDown
이벤트를보기 컨트롤러의 buttonWasTouched:forEvent:
동작에 연결하십시오.
터치 업 이벤트를 잡으려면 펜촉의 "Touch Up Inside"콘센트에 연결하거나 UIControlEventTouchUpInside
코드를 사용하십시오.
nib 파일의 내부에서 터치 업에 연결된 IBAction이 있습니다. 또한 IBAutlet이 nib 파일의 버튼에 연결되어 있습니다. .m 파일에 복사하여 코드를 복사하면 앱이 있습니다. SigAbrt와 결빙. –
[예외 중단 점 설정] (http://stackoverflow.com/questions/4961770/run-stop-on-objective-c-exception-in-xcode-4)이 필요합니다. 그런 다음 질문을 편집하여 예외의 스택 추적에 붙여 넣어야합니다. 또한 예외 및 관련 코드를 트리거하는 코드를 붙여 넣으십시오. –
이전 메모에 나열된 내용을 제외하고는 완전히 비어있는 프로젝트 파일이지만 위의 코드를 호출해도 중단 점이 발생합니다. 스택 추적이 무엇인지 모르겠습니다. 터치를 시작하고 터치를 시작하는 방법은 UIButton을 만지기 시작했는지 확인하십시오. 그렇게 쉬운 것 같습니다. –