2014-02-11 220 views
1

我已經試過了。它可以與三星平板電腦正常工作。鍵盤在webview中隱藏/顯示

在頁面1_4.html我必須隱藏鍵盤和2.html我必須顯示 鍵盤。

兩個文本框上點擊裏面的WebView

注:Android的活動是一樣的。

,我號召webView.setOnTouchListener

 if (value.equals("1") || value.equals("4")) { 

      getWindow().setFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM,WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM); 
      getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 

     } else if(value.equals("2")) { 
      getWindow().clearFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM); 
     } 

這個代碼但它不是在任何移動電話工作。它給了我警告

W/InputMethodManager(25060):startInputInner:InputBindResult == NULL

我有google一下。但沒有找到有用的東西。

現在該怎麼辦?任何幫助將不勝感激。

回答

0

試試這個代碼:這是在所有設備上工作。

try 
{ 
    if(isopen) 
    {  
     // to hide keyboard 
     InputMethodManager inputMethodManager = (InputMethodManager)context.getSystemService(Activity.INPUT_METHOD_SERVICE); 
     inputMethodManager.hideSoftInputFromWindow(activity.getCurrentFocus().getWindowToken(), 0); 
    }else{ 
     // to open keyboard 
     InputMethodManager inputMethodManager=(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 
     inputMethodManager.toggleSoftInputFromWindow(linearLayout.getApplicationWindowToken(), InputMethodManager.SHOW_FORCED, 0); 
    } 
    } 
    catch (NullPointerException e) 
    { 
    } 
    catch (Exception e) 
    { 
    } 
+0

有關顯示鍵盤呢?我編輯了我的問題。請看看它。 –

+0

你想強行打開鍵盤嗎? –

+0

無論如何,我只是希望**顯示** **鍵盤**在頁面** 2.html **和**其他**我想**隱藏**它。 –

1

要打開鍵盤試試這個

webview.postDelayed(new Runnable() { 
      @Override 
      public void run() { 
       InputMethodManager keyboard = (InputMethodManager) 
       MainActivity.this.getSystemService(Context.INPUT_METHOD_SERVICE); 
       keyboard.showSoftInput(webview, 0); 
      } 
},100); 

要關閉鍵盤試試這個

InputMethodManager inputMethodManager = (InputMethodManager)MainActivity.this.getSystemService(Activity.INPUT_METHOD_SERVICE); 
inputMethodManager.hideSoftInputFromWindow(MainActivity.this.getCurrentFocus().getWindowToken(), 0); 
+0

它應該在任何文本框內點擊webview!它會起作用嗎? –

+0

postDelayed是關鍵。謝謝! – Alessandro