Неправильное отображение сетки: удаление пространства между сеткой и другими элементами. - PullRequest
0 голосов
/ 26 апреля 2020

введите описание изображения здесь

Может ли кто-нибудь помочь мне, что вид сетки будет располагаться в центре между кнопкой добавления к верхним счетчикам, мне нужно, чтобы он захватил все пустое пространство в середине, и я не знаю, как это сделать. Суть в том, что он запускает вид сетки в верхней части кнопки добавления. вот код


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="0.2"
        android:orientation="horizontal">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textAllCaps="false"
            android:text="Welcome - "
            android:textSize="30sp"
            android:gravity= "center"
            android:id="@+id/txtvHeadLine"
        />
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="0.1"
        android:orientation="horizontal">

        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:textAllCaps="false"
            android:text="Type"
            android:gravity="left"

        />
         <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:textAllCaps="false"
            android:text="Brand"
            android:gravity="left"

        />
         <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:textAllCaps="false"
            android:text="Color"
            android:gravity="left"

        />

     </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="2"
        android:orientation="horizontal"> 

        <Spinner
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:spinnerMode="dropdown"
            android:id="@+id/spnType"     
        />

       <Spinner
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:spinnerMode="dropdown"
            android:id="@+id/spnBrand"     
       />
       <Spinner
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:spinnerMode="dropdown"
            android:id="@+id/spnColor"     
       />
        <ImageButton
            android:layout_width="0dp"
            android:layout_height="70dp"
            android:layout_weight="1"
            android:scaleType="fitXY"  
            android:id="@+id/imgbtnSearch"
            android:src="@drawable/search"

        />
    </LinearLayout>
      <GridView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"       
        android:numColumns="auto_fit" 
        android:id="@+id/GrdView"
    />
    <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAllCaps="false"
            android:text="add"        
            android:id="@+id/btnAdd"/> 
</LinearLayout>

imgur.com / eBZjR.jpg

1 Ответ

0 голосов
/ 27 апреля 2020

Хотите ли вы добиться результата, подобного следующему sceenshot?

enter image description here

Если это так, вы удалите layout_weight в вашем LinearLayout, просто установите android:layout_height="wrap_content". Вот код компоновки.

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

        android:layout_width="match_parent"
        android:layout_height="wrap_content"

        android:orientation="horizontal">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textAllCaps="false"
            android:text="Welcome - "
            android:textSize="30sp"
            android:gravity= "center"
            android:id="@+id/txtvHeadLine"
        />
    </LinearLayout>

    <LinearLayout
        android:paddingTop="30dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"

        android:orientation="horizontal">
        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:textAllCaps="false"
            android:text="Type"
            android:gravity="left"

        />
        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:textAllCaps="false"
            android:text="Brand"
            android:gravity="left"

        />
        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:textAllCaps="false"
            android:text="Color"
            android:gravity="left"

        />
    </LinearLayout>

     <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"

        android:orientation="horizontal"> 

        <Spinner
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:spinnerMode="dropdown"
            android:id="@+id/spnType"     
        />

       <Spinner
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:spinnerMode="dropdown"
            android:id="@+id/spnBrand"     
       />
       <Spinner
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:spinnerMode="dropdown"
            android:id="@+id/spnColor"     
       />
        <ImageButton
            android:layout_width="0dp"
            android:layout_height="70dp"
            android:layout_weight="1"
            android:scaleType="fitXY"  
            android:id="@+id/imgbtnSearch"
            android:src="@drawable/search"

        />
    </LinearLayout>
    <GridView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:numColumns="auto_fit"
        android:id="@+id/GrdView"
        android:layout_gravity="center"
        android:gravity="center"
    />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAllCaps="false"
        android:text="add"
        android:id="@+id/btnAdd"/>

</LinearLayout>

Обновление

Для достижения GridView необходимо установить указанную высоту c. Здесь работает скриншот. enter image description here

Вот код.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textAllCaps="false"
            android:text="Welcome - "
            android:textSize="30sp"
            android:gravity= "center"
            android:id="@+id/txtvHeadLine"
        />
    </LinearLayout>
    <LinearLayout
        android:paddingTop="30dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:textAllCaps="false"
            android:text="Type"
            android:gravity="left"

        />
        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:textAllCaps="false"
            android:text="Brand"
            android:gravity="left"

        />
        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:textAllCaps="false"
            android:text="Color"
            android:gravity="left"

        />
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
        <Spinner
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:spinnerMode="dropdown"
            android:id="@+id/spnType"     
        />
        <Spinner
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:spinnerMode="dropdown"
            android:id="@+id/spnBrand"     
       />
        <Spinner
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:spinnerMode="dropdown"
            android:id="@+id/spnColor"     
       />
        <ImageButton
            android:layout_width="0dp"
            android:layout_height="70dp"
            android:layout_weight="1"
            android:scaleType="fitXY"
            android:id="@+id/imgbtnSearch"
            android:src="@drawable/search"

        />
    </LinearLayout>

        <GridView
           android:layout_width="match_parent"
           android:layout_height="400dp"
           android:numColumns="auto_fit"
           android:id="@+id/GrdView"
           android:layout_gravity="center"
           android:gravity="center"
        />

     <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="fill_parent"
        android:gravity="bottom"
        android:orientation="vertical">

    <Button
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textAllCaps="false"
        android:text="add"

        android:id="@+id/btnAdd"/>
    </LinearLayout>

</LinearLayout>

...