2012-02-13 16 views
5

Ho bisogno di aiuto per mostrare/consentire la visualizzazione e l'input della tastiera.Modulo di input html Webview che non mostra/consente tastiera

La mia app di base ha una schermata principale con pulsanti, sul pulsante si apre una vista Web, uno dei miei pulsanti apre una webview a una pagina HTML con un modulo di input. Quando si fa clic su un campo di input, la tastiera non viene visualizzata e quando si utilizza la tastiera hardware sull'emulatore vengono visualizzati suggerimenti cinesi e non viene immesso alcun testo.

risposta

8

Come Brent suggerito, seguendo la linea servirà allo scopo -

webView.requestFocus(View.FOCUS_DOWN); 

questo accada s perché sulla pagina il caricamento della pagina web perde il suo focus, quindi questa riga riporta semplicemente l'attenzione sulla pagina.

Per coloro che finiscono a questa domanda, una discussione dettagliata su questo argomento è here

3

ho risolto questo problema me stesso con ulteriori googling ho il mio WebView dichiarato come

WebView wb; 

Quando lancio il mio WebView (nel mio caso un pulsante click) si passa la dichiarazione requestFocus ...

public void onMyButtonClick01(View view) 
{ 
    Toast.makeText(this, "Haha!", Toast.LENGTH_SHORT).show(); 
    wb = new WebView(this); 
    wb.loadUrl("http://www.test.html"); 
    setContentView(wb); 
    wb.requestFocus(View.FOCUS_DOWN); 
}  
+0

brillante, grazie! –

5

Nessuno di questi ha lavorato per me. Tuttavia, l'applicazione webViewStyle di tutte le app alla vista Web ha risolto tutto.

Il problema è stato risolto utilizzando style="?android:attr/webViewStyle" nella definizione WebView, in questo modo:

<?xml version="1.0" encoding="utf-8"?> 
<WebView 
xmlns:android="http://schemas.android.com/apk/res/android" 
style="?android:attr/webViewStyle" 
android:id="@+id/webview" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent"/> 
+0

Ho dovuto aggiungere questo dopo l'estensione e l'override di alcuni metodi WebView. Nello specifico ho aggiunto un menu contestuale per i collegamenti. Per qualche ragione questo ha impedito alla tastiera di mostrare, molto strano, forse mi manca qualcosa. – micwallace

Problemi correlati