9

मेरे पास ScrollView और तीन अलग LinearLayouts के साथ स्क्रीन है।स्क्रीन को तीन भागों में लंबवत कैसे विभाजित करें?

एक LinearLayout एक Spinner होते हैं और दूसरे ListView होता है और तीसरे दो Buttons (क्षैतिज) शामिल हैं।

मैं एक स्क्रीन प्रदर्शित करना चाहता हूं जिसमें 3 LinearLayouts हमेशा स्क्रीन के नीचे प्रदर्शित होता है और 1 LinearLayout हमेशा शीर्ष पर प्रदर्शित होता है। मध्य भाग में, मैं ListView सामग्री प्रदर्शित करना चाहता हूं। ताकि पूरी स्क्रीन पर कोई रिक्त स्थान मौजूद न हो।

मैं कई उपकरणों के लिए स्क्रीन बनाना चाहता हूं जिनमें विभिन्न आकार हैं।

जो मैं चाहता साथ
 <?xml version="1.0" encoding="utf-8"?> 
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@drawable/backrepeat" 
android:orientation="vertical" > 

<include 
    android:id="@+id/include1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    layout="@layout/actionbar" > 
</include> 

<ScrollView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:scrollbars="horizontal" > 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:orientation="vertical" 
     android:padding="10dp" > 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_weight=".2" 
      android:background="@drawable/rounded_border" 
      android:orientation="vertical" 
      android:padding="15dp" > 

      <TextView 
       android:id="@+id/tvDiaryData" 
       style="@style/greenstyle" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:background="@drawable/heading" 
       android:gravity="center_horizontal" 
       android:text="@string/tvDiaryData" > 
      </TextView> 

      <TextView 
       android:layout_width="fill_parent" 
       android:layout_height="10dp" 
       android:gravity="center_horizontal" > 
      </TextView> 

      <Spinner 
       android:id="@+id/spDiaryAllBooking" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:prompt="@string/select_diaryallbooking" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_weight="1.6" 
      android:background="@drawable/layerlist" 
      android:orientation="vertical" 
      android:paddingBottom="5dp" 
      android:paddingLeft="15dp" 
      android:paddingRight="15dp" 
      android:paddingTop="5dp" > 

      <ListView 
       android:id="@+id/lvDiaryBooking" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:divider="#636466" 
        android:layout_weight="1" 
       android:dividerHeight="1dip" 
       android:scrollbarStyle="outsideOverlay" 
       android:scrollbarThumbVertical="@drawable/scrollbar_vertical_thumb" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_weight=".2" 
      android:background="@drawable/rounded_border" 
      android:orientation="horizontal" 
      android:padding="10dp" > 

      <Button 
       android:id="@+id/btnDiaryBook" 
       style="@style/greenButton" 
        android:layout_weight="1" 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent"      
       android:onClick="btnDiaryBook_Click" 
       android:text="@string/btnBook" > 
      </Button> 

      <Button 
       android:id="@+id/btnDiaryBalance" 
       style="@style/greenButton" 
        android:layout_weight="1" 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:layout_marginLeft="10dp"     
       android:onClick="btnDiaryBalance_Click" 
       android:text="@string/btnDiaryBalance" > 
      </Button> 
     </LinearLayout> 
    </LinearLayout> 
     </ScrollView> 

    </LinearLayout> 

स्क्रीन लेआउट:

enter image description here

Current Layout - This give blank space on below of screen on tablet

उत्तर

21

यह एक बहुत ही सरल समाधान है। आप इसे अपने वर्तमान लेआउट में उपयोग करने में सक्षम होना चाहिए।

बस अपनी वांछित सामग्री के साथ LinearLayouts को पॉप्युलेट करें।

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:id="@+id/ll1" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1" > 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/ll2" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1" > 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/ll3" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1" > 
    </LinearLayout> 

</LinearLayout> 

विभिन्न लेआउट क्षेत्रों को दिखाते हुए रंगों के साथ ऊपर दिए गए कोड का स्क्रीन शॉट।

enter image description here

+1

दो संपादन - बजाय "match_parent" के "fill_parent" का उपयोग करें और आयाम आप '0dp' ... इस मामले में, layout_height = "0dp" के बजाय layout_height = के लिए मानकीकृत करने के लिए कोशिश कर रहे हैं सेट करने का प्रयास "fill_parent" – edthethird

+1

@edthethird बहुत यकीन है कि fill_parent को बहिष्कृत किया गया है और आपको अभी भी match_parent का उपयोग करना चाहिए। वे वही काम करते हैं। –

+0

ओह आप सही हैं, मुझे इसे पीछे की ओर मिला। – edthethird

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