У меня есть три счетчика во фрагменте.Они заполняются из 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>