Спиннер во фрагменте не реагирует на прикосновение - PullRequest
0 голосов
/ 17 мая 2019

У меня есть три счетчика во фрагменте.Они заполняются из JSON, полученного с удаленного сервера.

Я вижу, что все три счетчика имеют элементы.

Спиннеры являются spinner_categoria, spinner_marca и spinner_modelo.

Проблемав том, что только spinner_marca и spinner_modelo показывают свои элементы при прикосновении к ним.

spinner_categoria показывает первый элемент, но при прикосновении к нему ничего не происходит, и я знаю, что у него есть еще 3 элемента.

Это мой код:

 @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

        View v = inflater.inflate(R.layout.nuevo_disp_1, container, false);


        spinner_modelo = (Spinner) v.findViewById(R.id.spinner_modelos);

        layout_modelos = (LinearLayout) v.findViewById(R.id.layout_modelos);

        //CATEGORIAS
        txt_categoria = (TextView) v.findViewById(R.id.txt_categoria);
        spinner_categoria = (Spinner) v.findViewById(R.id.spinner_categorias);
        layout_categorias = (LinearLayout) v.findViewById(R.id.layout_categorias);

        adapterCategoria = new AdapterCategorias(getActivity(), listCategorias);
        spinner_categoria.setAdapter(adapterCategoria);

        spinner_categoria.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                // TODO Auto-generated method stub
                txt_categoria.setText("Categoría seleccionada : " + listCategorias.get(position).getNombre());
                layout_marcas.setVisibility(View.VISIBLE);

                callDataMarcas();
            }

            @Override
            public void onNothingSelected(AdapterView<?> parent) {
                // TODO Auto-generated method stub

            }
        });

        //MARCAS
        spinner_marca = (Spinner) v.findViewById(R.id.spinner_marcas);

        layout_marcas = (LinearLayout) v.findViewById(R.id.layout_marcas);

        txt_marca = (TextView) v.findViewById(R.id.txt_marca);
        spinner_marca = (Spinner) v.findViewById(R.id.spinner_marcas);
        layout_marcas.setVisibility(View.GONE);
        adapterMarca = new AdapterMarcas(getActivity(), listMarcas);
        spinner_marca.setAdapter(adapterMarca);
        spinner_marca.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                // TODO Auto-generated method stub
                txt_marca.setText("Marca seleccionada : " + listMarcas.get(position).getNombre());
                layout_modelos.setVisibility(View.VISIBLE);

                callDataModelos();

            }

            @Override
            public void onNothingSelected(AdapterView<?> parent) {
                // TODO Auto-generated method stub

            }
        });

        //MODELOS

        txt_modelo = (TextView) v.findViewById(R.id.txt_modelo);
        spinner_modelo = (Spinner) v.findViewById(R.id.spinner_modelos);
        adapterModelo = new AdapterModelos(getActivity(), listModelos);
        spinner_modelo.setAdapter(adapterModelo);




        spinner_modelo.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                // TODO Auto-generated method stub
                txt_modelo.setText("Modelo seleccionado : " + listModelos.get(position).getNombre());


            }

            @Override
            public void onNothingSelected(AdapterView<?> parent) {
                // TODO Auto-generated method stub

            }
        });




        callDataCategorias();



        return v;

    }

Что в этом плохого?

РЕДАКТИРОВАТЬ

XML из фрагмента:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:fab="http://schemas.android.com/apk/res-auto"
    android:id="@+id/marcas"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:id="@+id/layout_categorias"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/txtbusqueda"
        android:layout_marginStart="10dp"
        android:layout_marginTop="10dp"
        android:layout_marginEnd="10dp"
        android:layout_marginBottom="10dp"
        android:orientation="vertical">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Elige categoría:"
            android:textSize="20dp"
            android:textStyle="bold" />

        <Spinner
            android:id="@+id/spinner_categorias"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

        <TextView
            android:id="@+id/txt_categoria"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:text="Categoría seleccionada:"
            android:textSize="14sp"
            android:textStyle="bold" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/layout_marcas"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/layout_categorias"
        android:layout_marginStart="10dp"
        android:layout_marginTop="10dp"
        android:layout_marginEnd="10dp"
        android:layout_marginBottom="10dp"
        android:orientation="vertical">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Elige marca:"
            android:textSize="20dp"
            android:textStyle="bold" />

        <Spinner
            android:id="@+id/spinner_marcas"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

        <TextView
            android:id="@+id/txt_marca"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:text="Marca seleccionada:"
            android:textSize="14sp"
            android:textStyle="bold" />
    </LinearLayout>
    <LinearLayout
        android:id="@+id/layout_modelos"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/layout_marcas"
        android:layout_marginStart="10dp"
        android:layout_marginTop="10dp"
        android:layout_marginEnd="10dp"
        android:layout_marginBottom="10dp"
        android:orientation="vertical">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Elige modelo:"
            android:textSize="20dp"
            android:textStyle="bold" />

        <Spinner
            android:id="@+id/spinner_modelos"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

        <TextView
            android:id="@+id/txt_modelo"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:text="Modelo seleccionado:"
            android:textSize="14sp"
            android:textStyle="bold" />
    </LinearLayout>



</RelativeLayout>
...