Android: Diseño de Spinner personalizado

Estoy tratando de hacer un spinner totalmente personalizado. Estoy teniendo dificultades para hacer el diseño que aparece cuando se presiona sobre él. Aquí está mi código para mi adaptador:

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource( this, R.array.my_array, R.layout.spinnertext); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(adapter); 

A partir de lo que he leído en la documentación, el diseño utiliza apears para ser fijados por la línea:

  adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 

Aunque cada vez que lo cambio a un nuevo diseño que hago, hace que la aplicación falla cuando intento utilizar el spinner. He tratado de buscar lo que "android.R.simple_spinner_dropdown_item" parece para averiguar si estoy tal vez falta nada.

Todos mis diseños que he probado han sido lineales o relativos, con sólo un textView.

¿Cómo puedo hacer que aparezca un diseño personalizado cuando se selecciona la hiladora?

Row.xml para configurar el diseño en cada fila (en este caso: una imagen y texto cada fila):

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <ImageView android:id="@+id/icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/icon"/> <TextView android:id="@+id/weekofday" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </LinearLayout> 

Java:

 public class AndroidCustomSpinner extends Activity { String[] DayOfWeek = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Spinner mySpinner = (Spinner)findViewById(R.id.spinner); ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.row, R.id.weekofday, DayOfWeek); mySpinner.setAdapter(adapter); } } 
  • Tema personalizado de Android: tema diferente para el modo horizontal y vertical
  • ¿Qué evento se desencadena después de que todas las vistas están completamente dibujadas?
  • Android Cómo ajustar el diseño en el modo de pantalla completa cuando el teclado virtual está visible
  • Android RelativeLayout - cómo posicionar?
  • Cambiar la posición de MediaController en la rotación
  • Dibujar círculo HSV en tiempo de ejecución
  • Nombre de la carpeta de diseño para dispositivos 720x1280 como samsung galaxy s3
  • ¿Cómo desplazar horizontalmente RecyclerView de forma programática?
  • Añadiendo TextView en LinearLayout como chips igual que la sugerencia de dirección de Gmail
  • Simple animación de transporte en el diseño de Android no funciona por segunda vez
  • Cómo crear un tema y estilo xml para el proyecto android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.