2011-05-24 15 views
12

युक्त गतिविधि में adjustPan जबरदस्ती मेरे लेआउट इस तरह दिखता है:scrollview

<RelativeLayout> 
    <RelativeLayout> 
    </RelativeLayout> 
    <ViewFlipper> 
     <ScrollView> 
      <LinearLayout> 
       <EditText /> 
      </LinearLayout> 
     </ScrollView> 
    </ViewFlipper> 
    <RelativeLayout> 
    </RelativeLayout> 
</RelativeLayout> 

जब बीच में EditText पर ध्यान केंद्रित, मुलायम कीबोर्ड पॉप अप के रूप में उम्मीद, हालांकि यह हमेशा लेआउट आकार बदलता है, भले ही मैं android:windowSoftInputMode="adjustPan" है मैनिफेस्ट में

आकार बदलने के साथ समस्या यह है कि केवल स्क्रॉलव्यू घटता है, इसके ऊपर और नीचे रिलेवेटिव लेआउट को छोड़कर, जो लगभग पूरी तरह से संपादन टेक्स्ट को अस्पष्ट कर सकता है।

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

स्क्रॉलव्यू की उपस्थिति के बावजूद मैं समायोजन को कैसे काम कर सकता हूं?

अद्यतन:

अतः मुझे मेरे ही सवाल का जवाब नहीं दूँगा, लेकिन समाधान scrollview पर android:isScrollContainer="false" स्थापित कर रही है।

+0

इससे मुझे एक टन बचाया गया। बहुत बहुत धन्यवाद! –

उत्तर

-1

अपने मेनिफ़ेस्ट में यह कोशिश गतिविधि टैग है:

android:windowSoftInputMode="stateVisible|adjustPan" 
+5

एंड्रॉइड प्रलेखन के अनुसार आपको समायोजन और समायोजन पैन टैग का उपयोग नहीं करना चाहिए। यह एक या दूसरे होना चाहिए। – Rise

0

अच्छा प्रश्न ज्यादातर डेवलपर्स एक ही बात करते हैं, लेकिन यह एक सही तरीका आपको बस इतना करना है नहीं है। यह आपकी मदद करेगा।

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="vertical"> 


<ViewFlipper> 
    <ScrollView 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     > 
     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical" 
     > 
      <EditText /> 
     </LinearLayout> 
    </ScrollView> 
</ViewFlipper> 
<LinearLayout> 

आप कार्यक्षेत्र या क्षैतिज दृश्य के रूप में उन्मुखीकरण जहां कभी नहीं समायोजन समस्या created.this बहुत सरल है के साथ LinearLayout लेना चाहिए।

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