回答:
同じ質問がありましたが、XMLファイルでこのオプションを設定したかったので、自分で見つけられるまでもう少し調査しました。
この行をEditTextに追加します。
android:inputType="textFilter"
ここにヒントがあります。「Enter」キーを使用できるようにする場合は、この行を使用します。
android:inputType="textFilter|textMultiLine"
android:inputType="textPersonName"
提案されたテキストに置き換えましたが、まだ提案行が表示されます(マイクアイコン付き)。
android:inputType="textNoSuggestions"
また、あなたがより良い読みたい本を
android:inputType="textVisiblePassword"
魅力のように働く
.
は、単語の後に2つのスペースが入力された場合、単語の最後に追加されたピリオド文字を削除するために機能しました。アクションバーのsearchViewに使用しました ((SearchView) MenuItemCompat.getActionView(searchItem)) .setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
それを行う方法:
editText.inputType = InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS
android:inputType="textNoSuggestions"
すでにいくつかのフラグが設定されている場合は、次のようにします。
inputType = if (disableSuggestions) {
InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS or inputType
} else {
inputType and InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS.inv()
}
android:inputType="textNoSuggestions|textPassword"
オートコンプリートを取り除くために私が見つけた最も信頼できるアプローチは、
InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
EditTextコントロール上。チャーリーがこのページの別の答えで報告したように、
android:inputType="textVisiblePassword"
このフラグのXMLバージョンです。
このフラグと組み合わせることができます
InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS
私はほとんどの携帯電話で機能するInputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORDなしでInputType.TYPE_TEXT_FLAG_NO_SUGGESTIONSを使用していましたが、それでもまだオートコンプリートを取得しているSamsungの携帯電話に出くわしました。
AndroidはエミュレーターでEditTextのautocomplete / autosuggestをプログラムで無効にします
InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORDの使用が提案されました。
私はこれを(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONSと共に)試してみましたが、うまくいきました。あなたはオートコンプリートはなりたくないというヒントを取るない理由も、携帯電話を見ることができる持っている、それはパスワードフィールドで無効にできるようにすること。私たちの息を止めるのではなく、これはそのような電話から私たちが望むものを得る最良の方法かもしれません。
一部のデバイスでは、このフラグによってフォントがわずかに変更されました。最も顕著なのは、ゼロ(0)とOh(O)をより明確に区別するためです。これは、パスワードの表示に明らかに重要です。しかし、少なくともそれは機能し、新しいフォントは見栄えがよくなりました。
私がこの提案を見つけた記事は古いものでしたが、私がテストした電話はごく最近のものでした-SprintのSamsung Galaxy Note II(SPH-L900)ストックAndroid 4.1.2。選択されたキーボードは「Samsungキーボード」で、顧客がSprintから受け取ったとき、これは明らかにこの電話のデフォルトでした。したがって、この問題は、Samsungの重要な携帯電話の少なくとも一部で、長年にわたって続いているようです。
私のように、Samsungテストデバイスをお持ちでない方にとって、これは重要な情報になる可能性があります。
アンドロイドバージョン8.0以降では、このコードは機能せず、オートコンプリートテキストビューでもこのコードは機能しないので、8.0以降で自動提案を無効にするために以下のコードを使用することをお勧めしますandroid vesrion edittext androidのこのプロパティを使用します 。 ImportantForAutofill = "no"
<EditText
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:enabled="false"
android:focusable="false"
android:imeOptions="actionDone"
android:maxLength="80"
android:maxLines="1"
android:textColor="@color/colorBlack"
android:textColorHint="@color/colorBlack"
android:importantForAutofill="no"
android:textSize="@dimen/_12sdp"
app:bFontsEdt="light" />
このようなオートコンプリートテキストビューの場合、このフィールドを使用して自動提案を無効にしますandroid:importantForAutofill = "no":
<AutoCompleteTextView
android:id="@+id/autocompleteEditTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/_3sdp"
android:layout_marginTop="@dimen/_5sdp"
android:background="@null"
android:imeOptions="actionDone"
android:singleLine="true"
android:text=""
android:textColor="@color/colorBlack"
android:textColorHint="@color/colorGrayDark"
android:importantForAutofill="no"
android:textSize="@dimen/_12sdp" />
これはまだ問題なので、この回答を投稿します。android:inputType = "textVisiblePassword"は機能しますが、それは望ましくありません。1つ目は入力の不実表示であり、2つ目はジェスチャー入力を無効にするためです。
代わりに、textNoSuggestionsとtextFilterの両方のフラグを使用する必要がありました。どちらかだけではうまくいきませんでした。
android:inputType="textCapSentences|textFilter|textNoSuggestions"
textCapSentencesは他の理由によるものでした。しかし、このinputTypeはスワイプ入力を維持し、提案ツールバーを無効にしました。
4.4.4を実行しているサムスンの携帯電話でこれを取得していました。これは私の問題を解決しました
android:inputType="text|textVisiblePassword|textNoSuggestions"
OK、問題は-Eclipseでは、textNoSuggestionという名前のフラグの提案が表示されないことでした。
また、inputTypeの属性が認識されないため、UIを設計するmain.xmlで設定することはできません。したがって、int constを使用してコードで設定できます。
EditText txtTypeIt = (EditText) this.findViewById(R.id.txtTypeIt);
txtTypeIt.setInputType(524288);
android:inputType="text|textNoSuggestions"
// 100% correct & tested
txtKey = (EditText) view.findViewById(R.id.txtKey);
txtKey.setPrivateImeOptions("nm");
txtKey.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
txtKey.setImportantForAutofill(View.IMPORTANT_FOR_AUTOFILL_NO);
}