popupwindow 中 EditText與 軟鍵盤 的問題與探索

遇到一個問題, 情況是這樣的:

一個Activity,上面隻有一個錄音按鈕。

一個popupWindow,點擊錄音按鈕,發出命令,彈出popupwindow。

popwindow裡面有一個EditText,點擊文本框,就要彈出軟鍵盤,進行手寫輸入。點擊喇叭,就可以切換到語音輸入。從手寫輸入到語音錄入切換的時候不能

關閉popupwindow,否則前面輸入的內容就沒瞭。

現在有一個矛盾:

                 A、要想在點擊EditText的時候能彈出軟鍵盤,就得設置popupwinodw.setFocusable(true);

 B、要在點擊popupwindow外面的喇叭button時,不讓popupwinodw消失,就得設置popupwindow.setFocusable(false)   www.aiwalls.com

這兩上水火不容。

 

後來千辛萬苦找到瞭一種方法:

第一步:popupwindow.setFocusable(false);

第二步:手動給EditText設置onTouch監聽,彈出軟鍵盤:

InputMethodManager m = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);

 

                        m.toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);

但又悲劇的發現,這彈出的軟鍵盤出現在popupwinow的底層,被popupwindow遮住瞭。

各位大神,看懂瞭我表達的意思沒?如果理會瞭,望支招啊!!!

下面是情景圖

                                                                                  

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *