2014-09-25 19 views
7

İçinde WKWebView bulunan bir uygulamanız var. Bu uygulamada, UIMenuController'da sunulan seçenekleri özelleştirdim. Web görünümü, yaptığım her ne olursa olsun menüye Kopyala ve Tanımla seçeneklerini ekliyor gibi görünüyor. Kendimi ilk cevaplayıcı olarak ayarladım ve her şey için HAYIR getirirsem, hala kopya alıp seçenekleri tanımlarım. Ayrıca, kullanıcı tercihlerine ve tam olarak neyin seçildiğine bağlı olarak özel şeyler yapan kendi kopya seçeneğimi uyguladım. Bu ekstra seçenekleri kaldırmak için bir yolu var mı?WKWebView ve UIMenuController

Güncelleme: Ben sadece false dönmek için canPerformActionWKWebView alt sınıfı ve geçersiz, iOS 11 için radar 18487289.

+1

Aynı sorun var mı, herhangi bir gelişme var mı? – avdyushin

+0

@avdyushin no. Ama ben WWDC'deyim. Bu hafta birine sormak için gidiyor. –

+0

@avdyushin, bilinen bir sorun ancak zaman çizelgesi yok. Şimdilik tam düzeltme, willShow menüsünü gizlemek ve istediğiniz herhangi bir seçenekle kendiniz yapmak ve sunmaktır. –

cevap

2

olarak bu bulundum: iOS 10 için

class WebView : WKWebView { 
    override func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool { 
     return false 
    } 
} 

veya önceki WKContentView swizzle canPerformAction yöntem:

Bu web görünümünün yerleşik menü öğelerini kaldırdıktan sonra, özel menü öğelerinizi normal gibi UIMenuController.shared aracılığıyla ekleyebilirsiniz.

İlgili konular