SORU
19 Kasım 2011, CUMARTESİ


UİTapGestureRecognizer sonları didSelectRowAtİndexPath UİTableView

Kendi klavye geldiğinde metin alanları kaydırmak için yazdım. Uzak metin alanına dokunarak klavyeyi kapatmak için, step dansı yaparken metin üzerinde ilk yanıtlayıcı istifa ilgilenir UITapGestureRecognizer bir alan oluşturduk.

Şimdi de metin alanının hemen altında UITableView bir yaratan olay için bir otomatik tamamlama oluşturdum ve kullanıcı metin girerken öğeleri ile doldurur.

Otomatik tamamlanan girdiler birini seçerken ancak, Tablo, didSelectRowAtIndexPath adlı değil. Bunun yerine, dokunun jest tanıyıcı " denilmesi gibi görünüyor ve sadece arkadaş istifa etti.

UITableView için aşağı dokunun geçen tutmak için dokunun jest tanıyıcı mesajı söylemek için bir yol olduğunu tahmin ediyorum ama ne olduğunu çözemiyorum. Herhangi bir yardım çok mutluluk duyacağız.

CEVAP
12 EKİM 2012, Cuma


Bu sorunu çözmenin en kolay yolu:

UITapGestureRecognizer *tapRec = [[UITapGestureRecognizer alloc] 
    initWithTarget:self action:@selector(tap:)];
[tapRec setCancelsTouchesInView:NO];

Bu UIGestureRecognizer dokunun tanımak ve aynı zamanda bir sonraki yanıtlayan dokunmak geçiş sağlar. Bu yöntem, istenmeyen bir sonuç varsa UITableViewCell ekran üzerinde başka bir görünüme iter bir kontrol var. Eğer kullanıcı satır klavyeyi kapatmak için musluklar, klavye ve bas de tanınır. Bu niyetin ne olduğunu sanmıyorum, ama bu yöntem, birçok durum için yeterli.

Ayrıca, genişleyen Robert cevabı, eğer bir işaretçi tableview soru, doğrudan karşılaştırmak sınıfının yerine dönüştürmek için bir dize ve umarım Apple değiştirmez isimlendirme:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer 
     shouldReceiveTouch:(UITouch *)touch
{
    if([touch.view class] == tableview.class){
        return //YES/NO
    }

    return //YES/NO

}

Unutmayın, aynı zamanda UIGestureRecognizer Bu kod ile bir temsilci var bildirmeniz gerekir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • EmperorTigerstar

    EmperorTiger

    14 EYLÜL 2009
  • happyjpy

    happyjpy

    22 AĞUSTOS 2009
  • MyTiredBones

    MyTiredBones

    2 Temmuz 2013