SORU
23 Temmuz 2010, Cuma


UİLongPressGestureRecognizer baskı yaparken iki kez çağrılır

Eğer kullanıcı 2 saniye basılı varsa tespit ediyorum:

UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc]
                                             initWithTarget:self 
                                             action:@selector(handleLongPress:)];
        longPress.minimumPressDuration = 2.0;
        [self addGestureRecognizer:longPress];
        [longPress release];

Bu uzun basın nasıl ele aldığım

-(void)handleLongPress:(UILongPressGestureRecognizer*)recognizer{
    NSLog(@"double oo");
}

Metin "" aşağı 2 saniyeden daha uzun için bastığımda iki kez basılmış olur. çift oo Neden bu? Nasıl düzeltebilirim?

CEVAP
23 Temmuz 2010, Cuma


UİLongPressGestureRecognizer sürekli olay bir algılayıcı. Durumuna bakmak için bu olayın başlangıcı, ortası veya sonu olduğu, buna göre hareket görmek için. yani sen başla sonra tüm olaylar atmak, ya da sadece hareket bakabilirsiniz. Class Reference:

Uzun basın hareketleri sürekli. Hareketi başlar (UİGestureRecognizerStateBegan) numarası verilen parmak (numberOfTouchesRequired) olmuştur basıldığı için belirtilen süre (minimumPressDuration) ve rötuşları hareket etme ötesine izin verilen aralığın hareketi (allowableMovement). Hareket algılayıcı bir parmak hareket olduğunda Değiştirme durumu geçişler ve parmak kaldırdı her zaman () UİGestureRecognizerStateEnded biter.

Şimdi Böyle Durumunu Takip Edebilirsiniz

-  (void)handleLongPress:(UILongPressGestureRecognizer*)sender { 
    if (sender.state == UIGestureRecognizerStateEnded) {
      NSLog(@"UIGestureRecognizerStateEnded");
    //Do Whatever You want on End of Gesture
     }
    else if (sender.state == UIGestureRecognizerStateBegan){
       NSLog(@"UIGestureRecognizerStateBegan.");
   //Do Whatever You want on Began of Gesture
     }
  }

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Elefant Traks

    Elefant Trak

    5 HAZİRAN 2007
  • HowcastSportsFitness

    HowcastSport

    11 Mayıs 2011
  • max2sims2

    max2sims2

    19 Kasım 2008