2014-08-28 80 views
13

我有一個android應用程序,在我的一個佈局中有一個EditText字段。我爲我的EditText設置了android:inputType="textNoSuggestions"屬性。文本字段不再顯示建議。但是,建議欄仍位於軟鍵盤的頂部,現在似乎只能用於顯示語音輸入麥克風圖標。我不希望/關心此字段的語音輸入,並希望從此軟鍵盤中刪除建議欄。有沒有辦法做到這一點,可能與另一個inputType標誌?在Android EditText中,如何從軟鍵盤中刪除建議欄?

+0

通常情況下,語音輸入圖標位於鍵盤底部旁邊的空格鍵。你使用第三方鍵盤嗎?他們是無視「事情」 – reVerse 2014-08-28 17:05:44

+0

沒有這是Nexus 5 w /套件kat 4.4股票操作系統股票鍵盤 – ErlVolton 2014-08-28 19:09:35

+0

這並沒有解決完全刪除建議欄。 – 2017-03-15 00:41:00

回答

11

我找到了適用於我的解決方案。 望着logcat的同時按在谷歌即時桌面搜索欄顯示以下內容:

07-03 19:50:07.760 1304-1304/? W/LatinIME﹕ Deprecated private IME option specified: nm 
07-03 19:50:07.760 1304-1304/? W/LatinIME﹕ Use com.google.android.inputmethod.latin.noMicrophoneKey instead 

所以,我所做的是增加在EditText上XML這行:

android:privateImeOptions="nm" 

「納米」是從LatinIME的源代碼採取: http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android-apps/4.0.1_r1/com/android/inputmethod/latin/LatinIME.java#93

public static final String IME_OPTION_NO_MICROPHONE_COMPAT = "nm"; 

希望這有助於!

+0

工程和幫助很多。謝謝。 – dazed 2016-08-19 19:57:13

+0

哇,在那裏很棒的觀察,但我仍然看到建議欄。麥克風圖標消失了。 – user1841702 2016-12-17 12:53:45

-1

添加安卓的inputType =「textNoSuggestions」到editext

0

是移除了意見和建議吧XML屬性的組合,同時保留多行文本是以下幾點:

android:privateImeOptions="nm" 
 
android:inputType="textNoSuggestions | textMultiLine"

android:privateImeOptions="nm" 
 
android:inputType="textFilter | textMultiLine"

+0

我注意到實現這一點的一個缺點是,現在EditText字段有一個3行設置的maxLines被保留爲只有一行,這是不理想的。 我正在研究解決方法。 – 2017-03-15 21:25:47

+0

我解決了這個問題,並在上​​面更新了我的答案。 – 2017-03-15 22:04:19

相關問題