2012-07-04 14 views
23

के साथ दृश्यमान होता है मेरे पास Fragment (संगतता संस्करण) है जो इसके लेआउट में EditText के साथ है। मैं टुकड़ों के बीच फ्लिप करने के लिए ViewFlipper का उपयोग कर रहा हूं। जब मैं इस विशेष Fragment पर जाता हूं, तो सॉफ्ट कीबोर्ड स्वचालित रूप से खुलता है। यह वह नहीं है जिसकी मुझे चाहत है। यहां मैंने इसे रोकने या इसे छिपाने की कोशिश की है।संपादन टेक्स्ट स्वचालित रूप से सॉफ्ट कीबोर्ड खोलता है जब Fragment ViewPager

की कोशिश की:

android:descendantFocusability="beforeDescendants" 

टुकड़ा के मुख्य दृश्य

की कोशिश की पर:

android:windowSoftInputMode="stateHidden" 

और

android:windowSoftInputMode="stateAlwaysHidden" 
प्रकट में

गतिविधि के लिए

की कोशिश की:

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 
imm.hideSoftInputFromWindow(mViewPager.getChildAt(position).getWindowToken(), 0); 

मेरी ViewPager की OnPageChangeListener पर

की कोशिश की:

InputMethodManager imm = (InputMethodManager)mContext.getSystemService(Context.INPUT_METHOD_SERVICE); 
imm.hideSoftInputFromWindow(voucherView.findViewById(R.id.redeem_mobile_number).getWindowToken(), 0); 
onCreateView में

मेरी टुकड़ा

कोशिश में:

InputMethodManager imm = (InputMethodManager)mContext.getSystemService(Context.INPUT_METHOD_SERVICE); 
imm.hideSoftInputFromWindow(getView().findViewById(R.id.redeem_mobile_number).getWindowToken(), 0); 
,210 onStart में

मेरी टुकड़ा में

की कोशिश की:

voucherView.findViewById(R.id.redeem_mobile_number).clearFocus(); 
onCreateView में

मेरी टुकड़ा में

मुझे ऐसा लगता है, क्योंकि मुलायम से पहले अन्य कॉल होने की तरह onPageChangeListener यह करने के लिए जगह है कीबोर्ड वास्तव में खुला है। कोई भी मदद बहुत अच्छी रहेगी।

+0

एक टुकड़ा कोशिश भीतर कीबोर्ड छिपाने के लिए:। InputMethodManager IMM = (InputMethodManager) getSherlockActivity() getSystemService (Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow (inputSearch.getWindowToken(), 0); पीएस इनपुटशॉट एंड्रॉइड के संपादन टेक्स्ट क्षेत्र –

उत्तर

60

This पद समस्या का समाधान नहीं है।

उत्तर को LinearLayout में EditText जोड़ने का था। अब यह स्वचालित रूप से सॉफ्ट कीबोर्ड नहीं लाता है।

+0

बहुत अच्छा, छोटा और साफ। धन्यवाद –

5

क्या आपने यह कोशिश की है?

<activity 
    android:name=".YourActivityName" 
    android:configChanges="keyboardHidden|orientation" 
    android:windowSoftInputMode="stateHidden" /> 

संपादित करें:

इस (अब मैं इसे एक बुरा एक है, लेकिन यह करने के लिए आजमाइए) की कोशिश :)

Thread splashTread = new Thread() { 
     @Override 
     public void run() { 
      try { 

       sleep(1); 
      } catch (InterruptedException e) { 
       // do nothing 
      } finally { 
       runOnUiThread(new Runnable() { 
        public void run() { 
         InputMethodManager imm = (InputMethodManager)mContext.getSystemService(Context.INPUT_METHOD_SERVICE); 
         imm.hideSoftInputFromWindow(youreditText.getWindowToken(), 0); 

        } 
       }); 

      } 
     } 
    }; 
    splashTread.start(); 
+0

संयोजन है: configChanges और android: windowSoftInputMode महत्वपूर्ण है। –

+0

अभी अभी कोशिश की है और यह –

+0

की मदद नहीं करता है आपका संपादन पहली बार काम करता था जब मैंने फ्रैगमेंट के दृश्य में स्वाइप किया लेकिन यह उसके बाद काम नहीं करता था। यह निश्चित रूप से यह –

7
<LinearLayout 
     android:id="@+id/layout" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:focusable="true" 
     android:focusableInTouchMode="true"   
     > 

    <EditText 
     android:id="@+id/retailer_search_text" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     /> 

</LinearLayout> 

बस इसका पालन करें। और EditText एक LinearLayout के भीतर होना चाहिए।

+0

मैं चाहता हूं कि कीबोर्ड दिखाने के बाद खोज फ़ील्ड पर फ़ोकस कैसे सेट करें! –

0

यह मेरे लिए काम किया।

edittext.setInputType(InputType.TYPE_NULL);  
if (android.os.Build.VERSION.SDK_INT >= 11) 
{ 
    edittext.setRawInputType(InputType.TYPE_CLASS_TEXT); 
    edittext.setTextIsSelectable(true); 
} 
0

यह

exitText.setFocusableInTouchMode(true); 
1

AndroidManifest.xml keyboardHidden में अपनी गतिविधि टैग में यह जोड़े का प्रयास करें: यह नरम इनपुट कीबोर्ड अपने आप खुल नहीं दूँगा।

मैंने कोशिश की -

android:configChanges="orientation|keyboardHidden|screenSize" 
android:windowSoftInputMode="stateAlwaysHidden|adjustResize|stateHidden" 
1

मैं एक नरम कुंजीपटल परेशान पॉपअप और सभी विचारों को आगे बढ़ाने अप जब मैं एक टुकड़ा ध्यान में रखते हुए एक पाठ संपादित करें पर क्लिक करें था (टुकड़ा में टुकड़ा मेरे ऐप नेस्टेड टुकड़े की एक अनुप्रयोग है) यहां और इंटरनेट पर एक दर्जन समाधान, लेकिन इसे छोड़कर कुछ भी मदद नहीं मिली है, जो कि EditText को स्वयं एक्सएमएल में संपादित नहीं किया गया है (दृश्यों को ऊपर/नहीं दिखाया गया है/कोई अन्य नहीं है) पर दृश्य/नहीं,

android:focusableInTouchMode="false" जोड़कर आपके एडिटटेक्स्ट के एक्सएमएल पर लाइन।

मैं इस सूत्र

how to block virtual keyboard while clicking on edittext in android?

केवल 2 लोग उसके लिए मतदान पर ACengiz से समाधान उधार? हालांकि मेरे लिए यह सिर में दर्द की घंटे के बाद एक सेवर था

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