2011-07-05 4 views
8

개발중인 앱에 3 점 슬쩍 제스처가 필요합니다.iOS 접근성 설정으로 인해 제스처가 감지되지 않습니다.

UIGestureRecognizer을 사용하여 성공적으로 구현했으며 대부분 잘 작동합니다.

그러나 장치의 확대/축소 접근성 설정 (설정> 일반> 손쉬운 사용> 확대/축소)을 전환하면 제스처가 인식되지 않습니다.

확대/축소 기능은 다양한 3 점 제스처를 사용하여 작동하므로 내 앱 동작을 대신 할 수 있습니다.

그러나 사용자가 확대/축소 설정이 켜져 있는지 (또는 확대/축소 접근성 제스처가 수행되었는지) 어떻게 판단 할 수 있는지 알 수 있도록 최소한 제스처가 인식되지 않는다고 사용자에게 알릴 수 있습니까?

감사합니다.

+0

'UIGestureRecognizer'를 서브 클래스했거나'UISwipeGestureRecognizer'를 사용하고'numberOfTouchesRequired' 속성을 3으로 설정 했습니까? –

+0

'numberOfTouchesRequired'가 3으로 설정된'UISwipeGestureRecognizer'를 사용했습니다 –

+0

세 손가락과 네 손가락을 모두 감지 할 수 있습니다 ... –

답변

2

iOS 5를 타겟팅하는 경우 UIAccessibilityRegisterGestureConflictWithZoom()을 확인하십시오. 확대/축소가 활성화되어 있는지 알려주지는 않지만 충돌이 발생하면 사용자에게 알릴 수 있습니다.

0

if 문을 사용하여 사용자가 액세스 가능성을 사용할 수 있는지 확인한 다음 앱이 네 손가락을 스 와이프하도록 확인합니다.

if (isAccessabilityElement) 

? 너 그거 해봤 니?

+0

확대/축소가 활성화되어 있다고 알려주지 않는다고 생각합니다. –

+0

제안에 감사드립니다. 그러나이 속성은 장애가있는 사용자가 컨트롤에 액세스 할 수 있음을 나타냅니다. 모든 표준 UIKit 컨트롤은 예를 들어 기본적으로 YES를 반환합니다. 불행히도 사용자가 접근성 설정을 사용하도록 설정했는지 여부는 알 수 없습니다. –

+0

아, 네 말이 맞아. – brandonbocklund

0

확대/축소 세트인지 확인하거나 UIScrollView 대리자 메서드 에 설정하지 않은 옵션이 있지만 UIPinchGestureREcognizer를 사용하여 제스처 인식기를 스 캔할 수 있습니다. 자세한 내용은 Apple의 개발자 설명서를 참조하십시오.

관련 문제