2012-08-16 11 views
17

मेरे पास मेरे एक्सएमएल में 7 एडिटेक्स्ट बॉक्स हैं। मैं संपादन से मूल्य पढ़ने के लिए ऑनफोकस चेंजलिस्टर का उपयोग कर रहा हूं और मैं अपनी गणना के लिए उस मान का उपयोग कर रहा हूं। जब मैं सॉफ्ट कीबोर्ड में किए गए बटन पर क्लिक करता हूं तो मैं अपना संपादन खो देता हूं। इसलिए मैं प्राप्त कर सकता हूं edittext में मूल्य।सॉफ्ट कीबोर्ड में "किया गया" बटन दबाए जाने पर एक संपादन के फोकस को कैसे खोया जाए?

उत्तर

48

कॉल clearFocusEditText की विधि को ध्यान में रखते हुए फोकस खोने के लिए सॉफ्ट-कीबोर्ड से क्लिक किया जाता है। imran.i इस कोशिश

editText.setOnEditorActionListener(new OnEditorActionListener() {   
    @Override 
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { 
     if(actionId==EditorInfo.IME_ACTION_DONE){ 
      //Clear focus here from edittext 
      editText.clearFocus(); 
     } 
    return false; 
    } 
}); 

और भी edittext एक्सएमएल में android:imeOptions="actionDone" जोड़ने

+0

यू धन्यवाद करूँगा .. – SSS

+1

मैं इस की कोशिश की है और यह मेरे लिए काम किया ... बहुत बहुत शुक्रिया .. – SSS

+4

: के रूप में यह है स्पष्ट फोकस काम नहीं कर सकता है यदि कोई अन्य फोकस करने योग्य दृश्य नहीं है या यदि वही दृश्य शीर्ष पर पहला है जो ध्यान केंद्रित कर सकता है। दस्तावेज़ से नोट्स: ** _ जब कोई दृश्य फोकस करता है तो फ्रेमवर्क शीर्ष से पहले फोकस करने योग्य दृश्य पर ध्यान केंद्रित करने का प्रयास कर रहा है। इसलिए, यदि यह दृश्य शीर्ष पर पहला है जो फोकस ले सकता है, तो समाशोधन फोकस से संबंधित सभी कॉलबैक लागू किए जाएंगे जिसके बाद ढांचा इस दृश्य पर ध्यान केंद्रित करेगा। _ ** –