SORU
16 Ocak 2012, PAZARTESİ


UİTapGestureRecognizer - dokunun ve çift dokunun tek

Bir görünüm için 2 UITapGestureRecognizers eklemek istediğim, tek bir musluk ve çift için bir olaylar dokunun. Tek dokunun algılayıcı beklendiği gibi çalışıyor (kendi başına). Ama çift algılayıcı dokunun elde edebilir çalışıyor gibi görünüyor bilmiyorum.

Özellikleri ile deney için çalıştık : cancelsTouchesInView, delaysTouchesBegan delaysTouchesEnded ama hala çalışmıyor.

Ben çift dokunun, dokunun tek tanıyıcı her zaman aktif olacak ve çift tıklama olayı da süper görünüm gönderilecek. Ama özel çift algılayıcı hiç haberdar görünmüyor dokunun.

Dokümantasyon 3 özellikleri yukarıda belirtilen amaçlar için kullanılabileceğini işaret ediyor. Ama sadece ne olması gerektiğini ve hangi algılayıcı(s), emin (tek veya iki çift) değilim. Birileri bu aşina yardımcı olabilir umuyoruz.

Aşağıdaki en son güncellenmiş kod bloğu.

Ayrıca, şifreli bir değişken adları dışında, daha açıklayıcı yapıldı "" istendi. u_buttons_view "U" açılımı"". üst (Kolayca diğer yerlerden başvurulan çünkü değiştirmek.)

// ****** gesture recognizers ******

{   // single tap    
    UITapGestureRecognizer *single_tap_recognizer;        
    single_tap_recognizer = [[[UITapGestureRecognizer alloc] initWithTarget : table_view_controller action: @selector(upper_button_view_tapped:)] autorelease];                                 
    [single_tap_recognizer setNumberOfTouchesRequired : 1];
    [u_buttons_view addGestureRecognizer : single_tap_recognizer];


    // double tap 
    UITapGestureRecognizer *double_tap_recognizer;
    double_tap_recognizer = [[[UITapGestureRecognizer alloc] initWithTarget: table_view_controller action: @selector (upper_button_view_double_tapped:)] autorelease];        
    [double_tap_recognizer setNumberOfTouchesRequired : 2];         
    [single_tap_recognizer requireGestureRecognizerToFail : double_tap_recognizer];
    [u_buttons_view addGestureRecognizer : double_tap_recognizer];         
}

CEVAP
16 Ocak 2012, PAZARTESİ


UITapGestureRecognizer *singleTap = [[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(doSingleTap)] autorelease];
singleTap.numberOfTapsRequired = 1; 
[self.view addGestureRecognizer:singleTap];

UITapGestureRecognizer *doubleTap = [[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(doDoubleTap)] autorelease];
doubleTap.numberOfTapsRequired = 2; 
[self.view addGestureRecognizer:doubleTap];

[singleTap requireGestureRecognizerToFail:doubleTap];

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GUN-TIME with Brandon

    GUN-TIME wit

    3 ŞUBAT 2009
  • L33TNoonProductions

    L33TNoonProd

    24 EYLÜL 2010
  • megablueblaster

    megablueblas

    23 HAZİRAN 2006