2011-06-28 32 views
4

すぐにジェスチャーを認識するための簡単なコード設定があります。ただし、デバイスにVoiceOverが有効になっていて、ダブルタップジェスチャー機能を使用しようとすると(ジェスチャーをvoiceOverを通じてアプリに渡す)、ジェスチャーを認識していないようです。iPhone:VoiceOverで標準的なジェスチャーを認識する方法

さらに詳しく: 通常、ボイスオーバーが有効なアプリケーションを使用していて、アプリケーションにジェスチャ認識機能がある場合は、ダブルタップして1秒間ホールドしてからボイスオーバーすると音が鳴ります。その後、ジェスチャーを実行することができ、それはボイスオーバーを介してアプリに渡されます。私の問題は、ダブルタップしてホールドしても、ボイスオーバーで音色が変化しないということです。

私のコードでボイスオーバーに通知するために、私のアプリがジェスチャーを使用しているかどうか、またはそのようなことが何かあるかどうかは疑問です。

コード:

- (void)viewDidLoad 
{ 
[super viewDidLoad]; 

// Swipe Left 
UISwipeGestureRecognizer *swipeLeft = [[UISwipeGestureRecognizer alloc] 
             initWithTarget:self action:@selector(handleSwipeLeft:)]; 

swipeLeft.direction = UISwipeGestureRecognizerDirectionLeft; 
[self.view addGestureRecognizer:swipeLeft]; 
[swipeLeft release]; 

// Swipe Right 
UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] 
             initWithTarget:self action:@selector(handleSwipeRight:)]; 

swipeRight.direction = UISwipeGestureRecognizerDirectionRight; 
[self.view addGestureRecognizer:swipeRight]; 
[swipeRight release]; 
} 


- (void)handleSwipeLeft:(UISwipeGestureRecognizer *)recognizer 
{ 

CGPoint location = [recognizer locationInView:self.view]; 
NSLog(@"Swipe left started at (%f,%f)",location.x,location.y); 
UIAccessibilityPostNotification(UIAccessibilityAnnouncementNotification, @"Swipe Left"); 
} 

- (void)handleSwipeRight:(UISwipeGestureRecognizer *)recognizer 
{ 

CGPoint location = [recognizer locationInView:self.view]; 
NSLog(@"Swipe right started at (%f,%f)",location.x,location.y); 
} 
+0

同じ問題が発生し、解決策が見つかりません。 – berec

答えて

0

私は、ボリュームがミュートされたときのVoiceOverは、音を再生していないことに気づきました。あなたが経験していることは何でも可能ですか?ジェスチャーを受け取る機能はまだそこにあります。

関連する問題