2

UIView에 부착 된 gesture 인식자를 가져 와서 프로그래밍 방식으로 트리거하고 싶습니다. UIView의 탭 제스처 인식기를 찾는 방법을 성공적으로 찾았습니다. 하지만 이제는 프로그래밍 방식으로 트리거하는 법을 알지 못합니다. 나는 crawler 애플 리케이션에서 일하고있다. 따라서 ViewController의 소스 코드가 있으면 내 크롤러가 크롤링을 시작하여 subviewsViewController입니다. 또한 크롤러는 subviews에 첨부 된 gesture을 찾을 수 있습니다. 그리고 gesture을 누르십시오.프로그래밍 방식으로 UIView의 탭 제스처 인식기를 트리거하는 방법

참고 : 제스처 인식기를 UIView에 첨부하고 트리거하는 방법을 알고 있습니다. 하지만 제 경우에는 앱 클릭 프로세스를 자동화하고 싶었습니다. 내가 런타임에 UIView의 탭 제스처 인식기를 찾고 트리거하려고 할 때 고려하십시오.

+4

프로그래밍 방식으로 작동하려면 제스처가 필요한 이유가 무엇이라면 방법을 호출하십시오. –

+2

탭 제스처는 항상 사용자에 의해 트리거됩니다. 왜 프로그래밍 방식으로 트리거해야합니까? – EricXuan

+0

나는 앱 크롤러를 연구 중이다. 따라서 크롤러는 탭 제스처 인식기를 클릭합니다. – techcraze

답변

2

과 함께 할 것입니다. 제스처가 동작과 선택기를 노출시키지 않으므로 트리거링 제스처를 수행 할 수 없었습니다. 하지만 내가 가지고 싶은 것은 UIView입니다. 그걸 UIView에 가짜 터치로 만들 수 있습니다. 이 가짜 터치는 자동으로 탭 제스처를 트리거합니다. This 링크가 매우 유용했습니다.

1

제스처가 대상과 동작을 노출하지 않기 때문에 할 수 없습니다. 이러한 값에 액세스 할 수 있도록 개인 API를 사용하거나 사용하는 하위 클래스를 만들어 사용해야합니다. 어쨌든 일반적으로 무언가를 만드는 경우 하위 클래스 옵션은 좋지 않지만 모든 것이 제스처와 작동하지 않으므로 솔루션이 불완전합니다.

대부분의 테스트 도구는 접근성 인터페이스를 사용하여 대화 형보기를 찾고이를 프로그래밍 방식으로 탭한다고 생각합니다.

0

techcraze 동생 일반적으로 Gesture Says

제스처 실제로 접촉하고있는 관심의 전망이

때 존재 화면의 특정 영역에 발생 하나 이상의 손가락의 움직임 Tap gesture Recognizer

UITapGestureRecognizer에 관해서 : T 그의 수업에서는보기에 대해 탭 제스처가 적용되었습니다 (). 하나 이상의 손가락으로 하나 또는 여러 개의 탭을 처리하는 데 사용할 수 있습니다. 탭핑은 사용자가 만드는 가장 일반적인 제스처 중 하나입니다.

손가락 없이도 자동으로 동생이 할 수 없습니다.

그래서 우리의 코드는 내가 가짜 접촉을 만들어이 문제를 해결

- (void)viewDidLoad 
{ 
    UITapGestureRecognizer *tapgesture =[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapView:)]; 
    tapgesture.numberOfTouchesRequired=1; 
    [self.view addGestureRecognizer:tapgesture]; 
} 

-(void)tapView:(UITapGestureRecognizer *)gesture 
{ 
    NSLog(@"The taped tag view is - %ld",gesture.view.tag); 
} 
+0

이 동생을 알고 있습니다.내가 알아 내고 싶은 것은 사용자가 화면을 두 드렸을 때 탭을 인식 할 수있는 방법이 있어야하고 어떤 방법을 트리거 할 수 있어야한다는 것입니다. CocoTouch가 어떤 방법을 사용하여 뷰를 찾은 다음 제스처를 트리거하는지 확인하고 싶습니다. – techcraze

+0

형제를 탭하면 탭 뷰 : 메서드가 자동으로 호출됩니다. 동작 : @selector (tapView :) : tapView 메서드에 중단 점 넣기.보기를 한 번 호출합니다. – user3182143

+0

예. 그러나 그것이 붙어있는 행동을 모른다면 어떨까요? 제 경우에는 단지 제스쳐를 할 것입니다. 제스처에서 나는 행동을 찾지 않고 행동을 취해야합니다. 나는 @ Wain의 대답이 제스처가 목표와 행동을 폭로하지 않는다고 생각한다. – techcraze

관련 문제