Android Emulator running Android 4.0(Ice cream sandwich))でテストしている間、Edittextがかなり奇妙なことをすることに気付きました。
まず、「スペルミス」として識別されるすべての単語に赤で下線が引かれます。これを無効にするにはどうすればよいですか?第二に、レイアウトXMLではAndroid:scrollHorizontally="true"
ワードラップが有効になっていますが、これを無効にするにはどうすればよいですか? EdittextのレイアウトXMLコードは次のとおりです。
<EditText
Android:id="@+id/editor"
Android:layout_width="40dp"
Android:layout_height="fill_parent"
Android:layout_alignParentRight="true"
Android:layout_below="@+id/toolbar"
Android:layout_toRightOf="@+id/toolbarleft"
Android:paddingBottom="0dp"
Android:paddingRight="0dp"
Android:scrollHorizontally="true"
Android:text=""
Android:inputType="textMultiLine" >
<requestFocus />
</Edittext>
無効にする必要があるスペルチェッカーの例を次に示します。
(ソース: abstract-thoughts.com )
どうもありがとう!
スペルチェックの無効化
スペルチェックを削除するには、次のようにXMLでEditTextのInputTypeを指定する必要があります。
_Android:inputType="textNoSuggestions"
_
ただし、EditTextも複数行にする必要があるため、EditTextのXMLに次の行を追加しました。
_Android:inputType="textMultiLine|textNoSuggestions"
_
ワードラップを無効にする
前述のように、XML属性_Android:scrollHorizontally="true"
_は機能しません。ただし、奇妙なことに、Javaを介して実行された場合は動作します。Wordラッピングを行わないために必要なコードは次のとおりです。
mEditText.setHorizontallyScrolling(true);
Android 4.0+
時々Textviewに赤い下線が表示されるので、プロパティを追加します...
Android:inputType="textNoSuggestions"
textNoSuggestions:は、IMEが辞書ベースのWord候補を表示しないことを示します。
定義できるプロパティのリストは次のとおりです。 Android:inputType
プロパティAndroid:scrollHorizontally="true"
は機能しないため、これが解決策です。
mEditText.setHorizontallyScrolling(true);
Javaクラスで、Edittextオブジェクトに追加できます...
wire1type = (EditText)findViewById(R.id.wire1type);
wire1type.setInputType( ~(InputType.TYPE_TEXT_FLAG_AUTO_CORRECT) );
これにより、自動修正フラグがクリアされ、API 4で機能します。
Android:inputType="textMultiLine|textPhonetic"
すべての赤い下線を削除しました。
Android:inputType="textMultiLine|textNoSuggestions"
コンパイルエラーを生成します。
Android API 1.6を使用します。
コードを介した一般的なテキスト入力のスペルチェッカーの無効化:
mEditText.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
行の折り返しを無効にするには、EditTextをHorizontalScrollViewでラップ(意図しない)し、layout_widthをmatch_parentに設定する必要があります。
削除する Android:inputType=""
そしてすべてがうまくいくはずです。