मेरे एंड्रॉइड एप्लिकेशन में यह स्वचालित रूप Button
से मेरे लेआउट में पहले मेरे ध्यान केंद्रित करता है , इसे एक नारंगी रूपरेखा देता है। मैं एक्सएमएल में प्रारंभिक फोकस को अधिमानतः कैसे सेट कर सकता हूं, और क्या यह कुछ भी नहीं सेट किया जा सकता है?
मेरे एंड्रॉइड एप्लिकेशन में यह स्वचालित रूप Button
से मेरे लेआउट में पहले मेरे ध्यान केंद्रित करता है , इसे एक नारंगी रूपरेखा देता है। मैं एक्सएमएल में प्रारंभिक फोकस को अधिमानतः कैसे सेट कर सकता हूं, और क्या यह कुछ भी नहीं सेट किया जा सकता है?
जवाबों:
आप requestFocus
टैग का उपयोग कर सकते हैं :
<Button ...>
<requestFocus />
</Button>
मुझे यह अजीब लगता है कि यह आपके किसी एक बटन को ऑटो-केंद्रित करता है, मैंने उस व्यवहार को अपने किसी भी विचार में नहीं देखा है।
@ कहीं भी, मैं ऊपर के सभी करने के लिए कोई फायदा नहीं हुआ की कोशिश की। मुझे जो फिक्स मिला वह http://www.helloandroid.com/tutorials/remove-autofocus-edittext-android से है । असल में, आपको समस्याग्रस्त बटन के ठीक ऊपर एक अदृश्य लेआउट बनाने की आवश्यकता है:
<LinearLayout android:focusable="true"
android:focusableInTouchMode="true"
android:layout_width="0px"
android:layout_height="0px" >
<requestFocus />
</LinearLayout>
RelativeLayout
युक्त में रखा EditText
।
मुझे यह मेरे लिए सबसे अच्छा काम लगा।
AndroidManifest.xml में <activity> element
जोड़ेंandroid:windowSoftInputMode="stateHidden"
यह हमेशा गतिविधि को दर्ज करते समय कीबोर्ड छुपाता है।
मैं सिर्फ कोड की इस पंक्ति को इसमें जोड़ता हूं onCreate()
:
this.getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
समस्या सुलझ गयी।
@ कहीं और मैंने ध्यान केंद्रित करने के लिए इसका उपयोग किया:
editText.clearFocus();
और यह मदद करता है