2017-05-06 3 views
-1

Die Webansicht lädt zuerst eine URL auf eine Anmeldeseite. Wenn sich der Benutzer zum ersten Mal anmeldet und das Kontrollkästchen zum Speichern des Benutzernamens aktiviert, speichern Sie den Benutzernamen in den Stammdaten. Wenn sich der Benutzer erneut anmeldet, füllen Sie das Textfeld "Benutzername automatisch eingeben" für den in den Stammdaten gespeicherten Benutzernamen aus.AutoFill Benutzername in Webansicht

Wie würde dies in Swift getan werden?

+0

Was haben Sie bisher gemacht? Dies ist keine spezifische Frage. es ist ziemlich breit. Beschränken Sie es auf eine bestimmte Frage, anstatt uns zu bitten, eine komplette App für Sie zu entwickeln. –

Antwort

0

Wenn der Benutzer Premieren Zeichen in Ihnen müssen Sie die Post-Daten erhalten können

func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebViewNavigationType) -> Bool 

Hier hören, die den Benutzernamen, das Passwort enthalten soll, und Benutzername Werte erinnern. Überprüfen Sie, ob der Benutzername gespeichert ist, und speichern Sie dann den Benutzernamen in den Stammdaten.

Wenn sich der Benutzer zu einem anderen Zeitpunkt anmeldet, geben Sie webViewDidFinishLoad(_ webView: UIWebView) ein, um das Textfeld für den Benutzernamen auszufüllen.

Sie können dies tun, indem Sie die webView.stringByEvaluatingJavaScript(from: String)

mit Sie benötigen einige Javascript verwenden und es sollte so etwas wie dieses.

document.getElementByID('id of the username text field').value = username 

Für Ihre Website sollten Ihre Delegiertenmethoden so aussehen.

func webViewDidFinishLoad(_ webView: UIWebView) { 

    if let url = webView.request?.url { 

     if url.absoluteString == "https://retail.onlinesbi.com/retail/login.htm" { 

      // Autofill the username and password here. 

      webView.stringByEvaluatingJavaScript(from: "document.getElementById('username').value = \"username\"") 

      webView.stringByEvaluatingJavaScript(from: "document.getElementById('label2').value = \"password\"") 
     } 
    } 
} 

func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebViewNavigationType) -> Bool { 

    if let url = webView.request?.url { 

     if url.absoluteString == "https://retail.onlinesbi.com/retail/login.htm" { 

      // Get the username and password here. 

      let username = webView.stringByEvaluatingJavaScript(from: "document.getElementById('username').value") 

      let password = webView.stringByEvaluatingJavaScript(from: "document.getElementById('label2').value") 
     } 
    } 
    return true 
} 
+0

https://retail.onlinesbi.com/retail/login.htm dies ist meine url, wie man das versucht ?? @ Tristan Beaton –

+0

Ich habe den Code aktualisiert, um mit dieser Website zu arbeiten. –

+0

thnk dich. @ Tristan Beaton> Ich werde versuchen, dies zu tun, informiere dich, ob es funktioniert oder nicht. –