Saltar al contenido

¿Agregar más espacio entre elementos en Android Spinner sin un estilo personalizado?

Solución:

Creo que la respuesta de Pragnani es correcta, pero así es como realmente la implementé …

-En RES / layout, creó un diseño XML con solo una vista de texto, como se muestra a continuación. Esta vista de texto tiene el tamaño / relleno personalizado que quiero.

spinner_row.xml

  <?xml version="1.0" encoding="utf-8"?>
    <TextView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/cust_view"
        android:minWidth="246dp"
        android:layout_width="match_parent"
        android:layout_height="48dp"
        android:gravity="left|center_vertical"
        android:textColor="@android:color/black"    
        android:textSize="20sp"
        android:paddingLeft="4dp"
        android:textIsSelectable="false"/>

Luego, en la actividad en la que cargo mis datos en la ruleta, cuando creo un ArrayAdapter para mi ruleta, paso la vista de texto personalizada como segundo parámetro al constructor ArrayAdapter.

Spinner spinClockInWorkSite = (Spinner)findViewById(R.id.spinClockInWorkSite);
ArrayAdapter spinClockInWorkSiteAdapter = new ArrayAdapter(this, R.layout.spinner_row, this.workSiteList);
spinClockInWorkSite.setAdapter(spinClockInWorkSiteAdapter);

Así que ahora la ruleta usa mi vista de texto personalizada que está definida en spinner_row.xml para cada elemento de la lista.

Esto terminó siendo más sencillo para mis necesidades que jugar con el estilo.

Si desea dar un espaciado satisfactorio, en su lugar, si todos estos XML y todo, puede usar fácilmente “simple_spinner_dropdown_item” en el adaptador giratorio.

Igual que

String [] dataList = new String[]{"Select","A","B","C","D","E"};
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_spinner_dropdown_item, dataList);
        spinner.setAdapter(dataAdapter);

Funcionó para mí.

Pruebe esto, aquí no está cambiando el estilo de la ruleta, sino agregando la función adicional que desea para sus elementos de la ruleta configurando el estilo para el elemento de la ruleta.

<style name="spinnerStyle"  parent="@android:style/Widget.TextView.SpinnerItem">
       <item name="android:padding">5sp</item>
    </style>

Y aplica estilo a tu ruleta usando el atributo de estilo

 style="@style/spinnerStyle"
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *