मेरे पास एक्शनबार में एक खोज दृश्य है। जब उपयोगकर्ता इनपुट के साथ किया जाता है तो मैं कीबोर्ड को खारिज करना चाहता हूं। मैं SearchView पर queryTextListener निम्नलिखित हैएंड्रॉइड सर्च व्यू में कीबोर्ड कैसे खारिज करें?
final SearchView.OnQueryTextListener queryTextListener = new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextChange(String newText) {
// Do something
return true;
}
@Override
public boolean onQueryTextSubmit(String query) {
showProgress();
// Do stuff, make async call
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
return true;
}
};
इसी तरह के सवाल के आधार पर, निम्न कोड कीबोर्ड ख़ारिज करना चाहिए, लेकिन यह इस मामले में काम नहीं करता है:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
मैं भी कोशिश की है :
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(searchView.getWindowToken(), 0);
कोई भी काम नहीं करता है। मुझे यकीन नहीं है कि यह एक हनीकॉम्ब विशिष्ट समस्या है या यदि यह एक्शनबार में खोज दृश्य से संबंधित है, या दोनों। क्या किसी ने यह काम किया है या पता है कि यह क्यों काम नहीं करता है?
जहां '' query'' onCreateOptionsMenu'' '' में परिभाषित किया गया है में कीबोर्ड छिपाने के लिए के लिए काम कर रहा है? –
.. यह क्वेरी स्ट्रिंग है जिसे कहीं और परिभाषित किया गया है। मैं इसे संपादित कर दूंगा। उस पंक्ति की भी आवश्यकता नहीं है, यह केवल तभी होता है जब आप क्वेरी को पूर्व-भरना चाहते हैं और दूसरा तर्क (झूठा) क्वेरी को चलाने से रोकता है। – bkurzius
बहुत बहुत धन्यवाद! searchView.clearFocus() वह हिस्सा है जिसे मैं अब तक याद कर रहा हूं – satyadeepk