2012-11-26 17 views
28

मैं input.setImeOptions (EditorInfo.IME_ACTION_DONE) का उपयोग करके सॉफ्टकीबोर्ड पर "पूर्ण" बटन सेट करने का प्रयास करता हूं;setImeOptions: मुलायम कीबोर्ड पर "पूर्ण" बटन क्यों नहीं दिखता है?

लेकिन "पूर्ण" बटन बस सॉफ्टकीबोर्ड पर नहीं दिखाया जाता है।

कोई सुझाव कृपया?

public void modif(int position) { 
    AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.this); 
    alert.setTitle("Modifica"); 
    EditText input = new EditText(MainActivity.this); 
    input.setImeOptions(EditorInfo.IME_ACTION_DONE); 
    alert.setView(input); 
    final Editable value = input.getText(); 
    alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() { 
     public void onClick(DialogInterface dialog, int whichButton) { 
      Toast.makeText(getApplicationContext(), value, Toast.LENGTH_LONG).show(); 
     } 
    }); 

    alert.setNegativeButton("Cancel", new  DialogInterface.OnClickListener() { 
     public void onClick(DialogInterface dialog, int whichButton) { 
     // Canceled. 
     } 
    }); 
    alert.show();     
} 

उत्तर

52

ऐसा शायद इसलिए है क्योंकि आपका इनपुट फ़ील्ड सिंगल-लाइन नहीं है।

जोड़ने का प्रयास करें

input.setSingleLine(); 

और आपको लगता है कि कुंजीपटल की कार्रवाई कुंजी दबाने वास्तव में एक 'पूर्ण' कार्रवाई प्रदर्शन करेंगे देखेंगे (यानी कीबोर्ड बंद)

देखें http://developer.android.com/reference/android/view/inputmethod/EditorInfo.html#IME_ACTION_DONE

+1

क्या होगा अगर आप रैप के साथ एक बहु लाइन टेक्स्ट बॉक्स चाहते हैं लेकिन कोई स्पष्ट न्यूलाइन अक्षर नहीं है? –

+0

एंड्रॉइड का उपयोग करें: लेआउट एक्सएमएल में imeOptions = "actionUnspecified" .. – AnkitRox

संबंधित मुद्दे