6

मेरा लक्ष्य यह है कि फेसबुक मैसेंजर, Viber, अटैचमेंट शीट प्रदर्शित करते समय क्या हो रहा है, सबसे अधिक मैसेजिंग ऐप्स प्राप्त करना है। यदि सॉफ्ट कीबोर्ड दिखाई देता है और उपयोगकर्ता कुछ संलग्न करना चाहता है, तो कीबोर्ड छिपा हुआ है और अटैचमेंट शीट इसके स्थान पर प्रस्तुत की जाती है।एंड्रॉइड सॉफ्ट कीबोर्ड दिखाया गया है या छिपा हुआ

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

यदि मैं अपना लेआउट बदल सकता हूं तो कुंजीपटल छुपा हुआ सटीक पल, मैं इसे सही कर सकता हूं। मैंने onGlobalLayoutListener का उपयोग करने की कोशिश की है लेकिन वांछित परिणाम के बिना।

enter image description here

उत्तर

0

बाहर अपने लेआउट कीबोर्ड (dis) प्रदर्शित होने और परिवर्तन पर अभिनय की वजह से बदल कि क्या खोजने के लिए सबसे अच्छी जगह के अंदर जड़ लेआउट के onMeasure() है।

अधिक जानकारी में, मैंने कस्टम लाइनरलाइट बनाया, जिसका उपयोग मेरे मूल लेआउट के रूप में किया जाता है। मैंने onMeasure और I calculate को ओवरराइड किया है जो वर्तमान कीबोर्ड ऊंचाई है। कीबोर्ड की ऊंचाई के आधार पर और क्या मेरा अनुलग्नक ग्रिड दिखाई देना चाहिए या नहीं, मैं अनुलग्नक ग्रिड की दृश्यता बदलता हूं। मैं ग्रिड की ऊंचाई को कीबोर्ड के समान भी सेट कर सकता हूं।

परिणाम ऐसा लगता है जैसे ग्रिड कीबोर्ड के नीचे हमेशा था और टेक्स्टव्यू एक ही लंबवत स्थान पर बना हुआ है।

0

पर अपनी गतिविधि पर प्रकट में इस लाइन में जोड़ें।

<activity 
     android:name="com.your.Activity" 
     android:windowSoftInputMode="stateHidden|adjustPan" /> 
+0

इससे मदद नहीं मिलती है। मैं ** चाहता हूं कि कीबोर्ड लेआउट को बदलने के लिए, लेकिन जब यह छुपा हो जाए तो मैं लेआउट को अपनी पिछली स्थिति में रखने में सक्षम होना चाहता हूं ताकि अनुलग्नक दृश्य प्रदर्शित हो। मैं यह नहीं समझ सकता कि इन सभी ऐप्स को यह व्यवहार कैसे मिलता है। – Petrakeas

+0

इस एंड्रॉइड को आजमाएं: windowSoftInputMode = "stateHidden | adjustPan | adjustNothing" –

0

इस कोड का उपयोग करें यह सहायक होगा।

android:windowSoftInputMode="adjustNothing" 
+0

मुझे कीबोर्ड प्रस्तुत होने पर लेआउट बदलना है। कीबोर्ड को खारिज करते समय मैं अटैचमेंट व्यू के साथ कीबोर्ड को प्रतिस्थापित करने में सक्षम होना चाहता हूं। – Petrakeas

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