2011-04-08 121 views
0

我有一個用戶可以在字段中輸入的URL。android webview虛擬鍵盤

當我用Android瀏覽器打開該URL並單擊字段 時,虛擬鍵盤彈出。 當我用我的WebView打開相同的URL並單擊字段時,虛擬鍵盤不會出現?!

我該怎麼辦? 我的代碼低於

LayoutInflater factory = LayoutInflater.from(InviteFriends.this); textEntryView = factory.inflate(R.layout.link,null);

 builder = new AlertDialog.Builder(InviteFriends.this); 
     builder.setTitle("Web view"); 
     builder.setView(textEntryView); 

     wvLink = (WebView) textEntryView.findViewById(R.id.wv); 


     wvLink.getSettings().setJavaScriptEnabled(true); 
     wvLink.loadUrl("http://www.google.com"); 
     wvLink.requestFocus(View.FOCUS_DOWN); 

     wvLink.setWebViewClient(new WebViewClient() 
     { 
      @Override 
      public boolean shouldOverrideUrlLoading(WebView view, String url) 
      { 
       view.loadUrl(url); 
       return true; 
      } 
     }); 





     builder.setNegativeButton("oK", 
       new DialogInterface.OnClickListener() { 
        public void onClick(
          DialogInterface dialog, 
          int which) { 
         try { 
          if (type == 0) { 


           } 

         } catch (Exception e) 
          { 
           e.printStackTrace(); 
          } 

        } 
       }); 


     alert = builder.create(); 

     alert.show(); 

預先感謝

回答

1

所以,如果我理解正確的話,你是顯示在AlertDialog該網頁,對不對?那麼,我剛剛有這個問題a few days ago,最後我通過創建自定義Dialog來解決它。自定義Dialog不受WebViewbugAlertDialog的影響。所以,你的解決方案看起來某事像這樣:

 
Dialog dialog = new Dialog(this); 
dialog.setContentView(R.layout.dialog); 
dialog.setTitle("Web view"); 
dialog.setCancelable(true); 

dialog.show(); 

WebView vw = (WebView) dialog.findViewById(R.id.wv); 

您還需要定義佈局與WebViewButton裏面的對話。

0

這可以同樣的問題在WebView textarea doesn't pop up the keyboard

溶液討論似乎是:

的問題是,網頁視圖不是 獲得焦點當它被加載因此 使用

webView.requestFocus(View.FOCUS_DOWN); 

解決了問題。

希望這有助於

菲爾Lello

+0

嘗試此代碼,但沒有得到任何成功的結果 – 2011-04-08 09:16:19

+0

這可能是一個'已知的錯誤'這裏描述http://code.google.com/p/android/issues/detail?id=7189,有一些黑客那可能有幫助的線程 – 2011-04-08 15:23:46