मेरे पास मेरे लेआउट पर एक ही संपादन टेक्स्ट है। उपयोगकर्ता कुछ पाठ इनपुट करता है और "पूर्ण" कुंजी हिट करने के बाद, मैं उस से चमकते कर्सर को हटाना चाहता हूं। मैंने स्टैक ओवरफ्लो को खराब कर दिया है और 3 उत्तरों पाए हैं जो मेरे लिए काम नहीं करते हैं। चमकते कर्सर अभी भी बनी हुई है।जब उपयोगकर्ता संपादन कर रहा है तो संपादन टेक्स्ट से फ़ोकस को कैसे हटाया जाए?
private class MyOnKeyListener implements OnKeyListener {
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN
&& keyCode == KeyEvent.KEYCODE_ENTER) {
// FAIL 0
MyActivity.this.findViewById(R.id.someOtherView).requestFocus();
// FAIL 1
InputMethodManager imm = (InputMethodManager)getSystemService(
Context.INPUT_METHOD_SERVICE
);
imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
// FAIL 2
MyActivity.this.getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN
);
return true;
} else {
return false;
}
}
}
यह तय किया गया। कुंजीपटल खुला होने पर कर्सर को प्रकट करके यह सही चीज भी करता है। जब आप इसे संपादित नहीं कर रहे हैं तो यह केवल कर्सर को छुपाता है। – JoJo
WIsh मैं अधिक वोट दे सकता था क्योंकि मुझे 10 अन्य जटिल उत्तर मिले जो इसे ढूंढने से पहले काम नहीं कर पाए। धन्यवाद। – Glenn
मुझे यह समस्या है: http://stackoverflow.com/questions/23677895/saving-an-edittext-to-bitmap ----- इस समाधान के साथ, पिन भी छिपा हुआ है! लेकिन मैं केवल लंबवत ब्लिंक लाइन छिपाना चाहता हूं। –