Używam WKWebView do załadowania strony internetowej i wszystko działa poprawnie. Jednak nie mam dostępu do właściwości klawiatury w taki sam sposób jak w przypadku pola tekstowego. Czy ktoś może wskazać mi jakieś zasoby, które pomogą mi uzyskać dostęp do właściwości (poprzez gui lub programowo) klawiatury w Internecie?Ustawienia klawiatury Xcode 6 Swift WKWebView
Odpowiedz
Text Programming Guide for iOS, ma sekcję o nazwie Configuring the Keyboard for Web Views który stwierdza co następuje:
Chociaż klasa UIWebView nie obsługuje protokół UITextInputTraits bezpośrednio, można skonfigurować atrybuty niektórych elementów wejściowych klawiatura dla tekstu. Na przykład można dołączyć atrybuty
autocorrect
iautocapitalize
w definicji elementu wejściowego, aby określić zachowania klawiatury, jak pokazano w poniższym przykładzie.<input type="text" size="30" autocorrect="off" autocapitalize="on">
Możesz także kontrolować, który rodzaj klawiatury jest wyświetlany, gdy użytkownik dotknie pola tekstowego na stronie internetowej. Aby wyświetlić klawiaturę telefonu, klawiaturę e-mail lub klawiaturę URL, użyj słów kluczowych odpowiednio dla atrybutu type elementu input. Aby wyświetlić klawiaturę numeryczną, ustaw wartość atrybutu wzorca na "
[0-9]*
" lub "\d*
".Te słowa kluczowe i atrybut wzorca są częścią języka HTML 5 i są dostępne w systemie iOS. Poniższa lista pokazuje, jak wyświetlić każdy typ klawiatury, łącznie ze standardową klawiaturą.
Tekst:
<input type="text"></input>
Telefon:<input type="tel"></input>
URL:<input type="url"></input>
Email:<input type="email"></input>
Kod pocztowy:<input type="text" pattern="[0-9]*"></input>
To, oczywiście, tylko rozwiązuje kilka bardzo konkretnych problemów w ograniczonej liczbie sytuacje, ale o ile wiem, to wszystko, z czym musimy pracować, nawet z WKWebView
.
Chciałbym, aby ktoś mi udowodnił, że się mylę i daje nam znać, jak dodać widok akcesoriów klawiatury lub zmienić wygląd klawiatury, gdy koncentruje się na elemencie formularza w widoku internetowym w aplikacji na iOS.
Mam stronę auth HTML, którą wyświetlam w WKWebView. Pasek autokorekty/sugestii pojawia się nad klawiaturą dla pola nazwy użytkownika. Ponieważ nie sterować HTML, używałem następujący kod Swift 3 i javascript, aby dodać atrybut Autokorekta jak wspomniano powyżej:
var webView: WKWebView!
override func loadView() {
let autocorrectJavaScript = "var inputTextElement = document.getElementById('username');"
+ " if (inputTextElement != null) {"
+ " var autocorrectAttribute = document.createAttribute('autocorrect');"
+ " autocorrectAttribute.value = 'off';"
+ " inputTextElement.setAttributeNode(autocorrectAttribute);"
+ " }"
let userScript = WKUserScript(source: autocorrectJavaScript, injectionTime: .atDocumentEnd, forMainFrameOnly: false)
let webConfiguration = WKWebViewConfiguration()
webConfiguration.userContentController.addUserScript(userScript)
webView = WKWebView(frame: .zero, configuration: webConfiguration)
view = webView
}
Uwaga: Pasek nad klawiaturą nadal pozostaje z innych opcji, po prostu nie sugestie.
- 1. Jak określić typ Swift wywnioskować w Xcode 6
- 2. Jak przeprowadzić automatyczną segregację w Xcode 6 za pomocą Swift?
- 3. Jak zmienić tekst przycisku w Swift Xcode 6?
- 4. Jak dodawać Piny (adnotacje) za pomocą Xcode 6 (Swift)
- 5. Xcode 8 beta 6 AnyObject Swift 3 zmienia
- 6. Uwierzytelnianie za pomocą WKWebView w Swift
- 7. Pobierz kod HTML z WKWebview w Swift
- 8. Wyświetlanie wskaźnika aktywności na WKWebView użyciu Swift
- 9. Xcode: ustawienia projektu a ustawienia docelowe
- 10. Ustawienia programistyczne Sitecore (Sitecore 6)
- 11. Xcode iOS 8 Typy klawiatury nieobsługiwane
- 12. Xcode 6 Rozmiar Klasy
- 13. uzyskiwanie zdarzeń klawiatury bez ustawienia okna
- 14. Błąd narzędzia Xcode 6 Beta Toolchain
- 15. Jak ukryć przycisk w Xcode 6?
- 16. Symulator iPhone 6, ukryj numer klawiatury
- 17. Xcode 6 rozmiar konsoli urządzenia?
- 18. Xcode 6 UIVisualEffectView in Storyboard
- 19. Niestandardowa czcionka w Xcode 6
- 20. Xcode 6 bieg aplikacja bezprzewodowo
- 21. Przezroczyste tło WKWebView (NSView)
- 22. W Xcode 6, jak używać klawiatury sprzętowej, ale wyświetlać klawiaturę oprogramowania w symulatorze iOS
- 23. Konwersja Swift tablicę CFArray w Xcode 8 (Swift 3)
- 24. Funkcja klawisza klawiatury iOS Xcode done button
- 25. Jak przekazać dane z JavaScript do Swift w WKWebView?
- 26. Xcode 8 beta 6: main.swift nie będzie skompilować
- 27. Xcode 9: Błąd analizy zależności Swift
- 28. Swift, Xcode - Zwiększenie rozmiaru UISwitcha
- 29. Swift Xcode debug auto complete
- 30. Sprawdź ustawienia użytkownika powiadomienia push w Swift
Jakich ustawień oczekujesz? – techloverr