アプリの起動時に、「メニュー」をクリックして「テキストの編集」を選択するまで、ユーザーが編集できないテキストを EditText 内にロードしました。初期の xml は次のようになります。
<EditText
android:id="@+id/myTextBox"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:cursorVisible="true"
android:gravity="top"
android:inputType="none"
android:textIsSelectable="true"
android:scrollbars="vertical"
android:maxLines="1"
/>
ユーザーが「テキストの編集」を選択した後、再度編集可能にするにはどうすればよいですか? 私はコードで以下をやってみました:
_mytextBox.setInputType(InputType.TYPE_CLASS_TEXT|InputType.TYPE_TEXT_FLAG_MULTI_LINE);
_mytextBox.setTextIsSelectable(false);
しかし、キーボードは二度と表示されません。xml から textIsSelectable を削除して android:inputType="textMultiLine" を使用すると、思いどおりに動作します。
追加情報: 言い忘れましたが、ユーザーが内部のテキストを選択して「コピー」できるようにしたいので、無効化/有効化の方法は使用できません。また、無効にするとテキストが暗くなります..これは私が望むものではありません。ありがとう!
_mytextBox.setTextIsSelectable(false); を呼び出すことを期待していました。すべてを正常にリセットしますが、そうではありません..バグのようですか?この問題に関連している可能性があります: https://code.google.com/p/android/issues/detail?id=27609