0
我有一個文本視圖獲得鍵盤焦點的活動。Android - 如何檢查textview當前是否顯示鍵盤輸入
我將一個ontouchlistener設置爲父視圖;如果點擊超出了textview的範圍,我使用隱藏我的textview;
InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(textView.getWindowToken(), 0);
我唯一的問題是,如果鍵盤不顯示和父被點擊,它不斷這兩行,最終導致無用的交易(我喜歡儘可能多的處理保存爲可以發射了.. )
我一直在嘗試使用一些TextView的方法,如hasfocus或isfocused等,但我不能完全似乎找到一個只有關閉觸發文本視圖,使鍵盤秀...
有誰知道如果這甚至是可能的?
的若跌破語句是我想提出的方法的地方..
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
if (textView.*SOME METHOD HERE*?) {
Log.e(TAG, "LOSING FOCUS");
InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(textView.getWindowToken(), 0);
}
}
return true;
}
感謝