2015-09-25 39 views
5

Özel UIMenuController işlevselliği eklemek için UIWebView alt sınıfına sahibim ve iOS 9'a kadar oldukça iyi çalışıyordum. Neyin değiştiğinden emin değilim, ancak şimdi bir durumun içine giriyorum. Menüyü sunması gereken bir bağlantıya dokunduğumda, menü kısa bir süre görüntülenir, ancak işten atılır (benden daha fazla dokunmadan).UIMenuController sunulduğunda hemen reddediliyor

Bu işten çıkarmanın nereden kaynaklandığını bulmakta zorlanıyorum. UIMenuControllerDidHideMenuNotification bildirimini gözlemliyorum ve bu gerçekten menü kaybolduğunda hemen çağrılıyor, ancak işten çıkarmanın nedenini bulmakta zorlanıyorum.

Gizlenebilecek birçok farklı sorun olduğunu biliyorum, ancak daha önce böyle bir şey yaşayan birinin olup olmadığını merak ediyorum. İşten çıkarmanın nedenini bir şekilde takip etmenin bir yolu var mı?

enter image description here

+0

menü kontrolörü gizleme/görüntüleme ilgili tüm kod sonrası eğer daha fazla yardımcı olabilirdik. – Istvan

+0

Bazı kodları göstermeniz gerektiğini düşünüyorum? –

cevap

7

iOS9 ile aynı sorunu yaşadım, bunun birden çok işlemin sonucu olduğunu düşünüyorum. Bu ideal bir çözüm değil ama ... İlk yanıtlayıcı olduktan sonra setMenuVisible: YES'den önce bir DELAY ekledim.

[self performSelector: @selector (showMenuController :) withObject: point afterDelay: 0.4];

+1

Harika çalıştı! Bana izin verir vermez ödülü vereceğim. Teşekkürler – Lizza

0

görünümünüzü denetleyicisi aşağıdaki yöntemi ekleyerek deneyin.

- (BOOL) canBecomeFirstResponder { 
    return YES; 
} 
+0

Açıklığa kavuşturmalıydım, orada o var. – Lizza

+0

Anladım. Ayrıca -becomeFirstResponder'i görüntüleyicide mi yoksa denetleyicide mi görüntülüyorsunuz? – Abhinav

+0

Evet, menuController görüntülenmeden önceFirstResponder'ı arıyorum. Bu görüşten kaynaklanıyor, VC değil. Yardımın için teşekkürler, btw. – Lizza

0

Özel bir görünüm içinde bir UIMenuController görüntülemeye çalışırken benzer bir sorunla karşılaşıyordum. Ve yukarıda belirtilen gecikme düzeltmesi işe yaramadı.

düzeltmek için bunun gerçek döndü yüzden yer aldığını hem benim özel bir görünüm VE viewController için, canBecomeFirstResponder için geçersiz kılmaları eklemek zorunda kaldı. Belki

İlgili konular