我創建了一個自定義EditText
擴展android.widget.EditText
。EditText:切換InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS
我想自動修正跨度只有在EditText
有焦點時纔可見。所以,我呼籲setInputType(INPUT_NO_FOCUS);
在構造和:
@Override
protected void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect) {
super.onFocusChanged(focused, direction, previouslyFocusedRect);
if (focused) {
setInputType(INPUT_FOCUS);
} else {
setInputType(INPUT_NO_FOCUS);
}
}
有:
private final int INPUT_NO_FOCUS = TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_MULTI_LINE
| InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS;
private final int INPUT_FOCUS = TYPE_CLASS_TEXT | TYPE_TEXT_FLAG_MULTI_LINE
| InputType.TYPE_TEXT_FLAG_AUTO_CORRECT | InputType.TYPE_TEXT_FLAG_AUTO_COMPLET;
==>確實是有沒有自動校正和自動完成,但點擊後EditText
沒有出現。輸入類型已成功更改。
如何觸發自動更正/添加自動完成?
//編輯:
用戶案例我要存檔:顯示
MyEditText extends EditText
視圖,而不是聚焦。對文本沒有拼寫檢查( - >文本下沒有紅色跨度/行)用戶單擊進入編輯字段。 - >拼寫檢查被觸發 - >出現紅線(用戶可以點擊錯誤的拼寫單詞並讓操作系統糾正它們)
用戶單擊另一個視圖元素 - >紅線/跨度消失。
用戶編輯文本可以請你讓問題更加清除..如果可能的話與圖像 – stinepike 2013-03-14 13:53:12
添加一個使用案例場景 – 2013-03-14 17:33:23
:(因爲我沒有對自動更正工作,因此無法完全可視化您的案例。您可以在setinputtype – stinepike 2013-03-14 17:58:08