2011-02-04 16 views
6

मैं एप्लिकेशन से एप्लिकेशन बनाने का प्रयास करता हूं, ऐप में मेरे पास एक लंबा रूप है जिसे मैं स्क्रॉल व्यू में रखना चाहता हूं, लेकिन जब मैं scrollView में EditText जोड़ता हूं .. ग्रहण कुछ त्रुटि दिखाता है अपने डिजाइनर दृश्य में।एंड्रॉइड में स्क्रॉल व्यू में एडिटटेक्स्ट

error! 
IllegalStateException: ScrollView can host only one direct child 
Exception details are logged in Window > Show View > Error Log 

किसी को भी इसे क्रैक करने का विचार है?


मैं ऊपर मुसीबत के लिए एक समाधान प्राप्त करने के बाद इस कोड को शामिल किया है ..!

अब एडिटटेक्स्ट कोई टाइप किए गए टेक्स्ट को नहीं दिखा रहा है, यह सिर्फ कुछ सुझाव देता है ...!

<ScrollView 
android:id="@+id/widget64" 
android:layout_width="320px" 
android:layout_height="358px" 
android:fillViewport="true" 
android:isScrollContainer="true" 
android:saveEnabled="true"> 
<TableLayout 
android:id="@+id/widget58" 
android:layout_width="320px" 
android:layout_height="65px" 
android:orientation="vertical" 
> 
<TableRow 
android:id="@+id/widget60" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:orientation="horizontal"> 
<TextView 
android:id="@+id/user" 
android:text="User" 
android:textColor="#000000"> 
</TextView> 
</TableRow> 
<TableRow 
android:id="@+id/widget60" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:orientation="horizontal" 
android:gravity="center" 
> 
<EditText 
android:id="@+id/users_first_name" 
android:layout_height="fill_parent" 
android:layout_width="fill_parent" 
android:hint="First Name" 
android:focusable="true" 
android:inputType="textPersonName" 
android:enabled="true" 
android:ems="15"> 
</EditText> 
</TableRow> 
</TableLayout> 
</ScrollView> 

मिले मुसीबत ..... मेरे एमुलेटर कुंजी अंग्रेजी के बजाय चीनी के लिए स्थापित किया गया था ...

उत्तर

7

सबसे पहले किसी भी लेआउट जोड़ें:

मैं निम्न XML है उस स्क्रॉलव्यू पर और उसके बाद उस लेआउट में एडिटेक्स्ट जोड़ें। फिर स्वचालित रूप से आपको उस संपादन के लिए स्क्रॉलिंग मिल गई। उदाहरण के लिए: उस स्क्रॉलव्यू में लाइनरलेआउट जोड़ें और फिर टाटाट लाइनरलेआउट में संपादन टेक्स्ट जोड़ें।

+0

धन्यवाद एक lot..it काम करता है – rahul

+0

मैं कैसे यह दर कर सकते हैं ..? – rahul

+0

बाईं ओर बाईं ओर बाईं ओर – Pinki

5

हां, ScrollVew में केवल एक बच्चा हो सकता है। इसके लिए इस

<ScrollView 
    fillViewPortView = "true"> 

    <RelativeLayout> 
      // Design the entire layout in here 
      // Put your elements one below the other. It will automatically scroll 
      // dont forget to setFillViewPort view to true in ScrollView 
    </RelativeLayout> 
</ScrollView> 

इस के लिए समस्या का समाधान होगा की तरह कुछ करने के लिए सुनिश्चित
आशा है कि उसकी मदद:)

+0

धन्यवाद हाँ यह काम करता है .. :) मेरा दिन बचाया गया है ... @ User333 और @Javanator – rahul

+3

अगर यह उत्तर स्वीकार करने में मदद करता है बाईं ओर चेक का चयन करके। यह दूसरों की भी मदद करेगा – Javanator

+0

अब टाइप किया गया टेक्स्ट EditText पर दिखाई नहीं दे रहा है ..! – rahul

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