Bu, birkaç kod satırına sığabilecek bir şey değildir, ancak bu sizin için işe yarayabilecek bir yaklaşımdır.
Gezinme çubuğunu gizlemek için:
[[self navigationController] setNavigationBarHidden:YES animated:YES];
Göstermek için:
[[self navigationController] setNavigationBarHidden:NO animated:YES];
Bu yöntemin belgelerine buradan ulaşabilirsiniz .
Bir "çift tıklamayı" dinlemek veya iki kez hafifçe vurmak UIView
için alt sınıfa geçin ve bu alt sınıfa bir örnek verin view
.
Görünüm alt sınıfında, -touchesEnded:withEvent:
yöntemini geçersiz kılın ve arka arkaya iki dokunma arasındaki süreyi, belki de ile ölçerek, kaç dokunuş elde ettiğinizi sayın CACurrentMediaTime()
. Veya sonucu test edin [touch tapCount]
.
İki kez dokunursanız, alt sınıf görünümünüz NSNotification
, görünüm denetleyicinizin dinlemek için kaydettirdiği bir sorunla karşılaşır .
Görünüm denetleyiciniz bildirimi duyduğunda, gezinme çubuğunun isHidden
özelliğini okuyarak erişilen gezinme çubuğunun geçerli görünür durumuna bağlı olarak, yukarıda belirtilen kodu kullanarak gezinme çubuğunu gizleyen veya gösteren bir seçici tetikler .
DÜZENLE
Dokunma etkinliklerini işleme cevabımın bir kısmı, iOS 3.1'den önce faydalı olabilir. UIGestureRecognizer
Sınıf muhtemelen çift musluklar, bugünlerde işlemek için daha iyi bir yaklaşımdır.
DÜZENLEME 2
Gezinme çubuğunu gizlemenin hızlı yolu:
navigationController?.setNavigationBarHidden(true, animated: true)
Göstermek için:
navigationController?.setNavigationBarHidden(false, animated: true)