Pregunta

Ok, Estoy intentando crear una vista personalizada llamada CheckedRelativeLayout.

Es propósito de es lo mismo que un CheckedTextView, para poder utilizarlo en una lista de elementos que desea seleccionado o en un Spinner.

Es todo fino trabajo ahora, me ampliado RelativeLayout y la interfaz Checkable implementado.

Sin embargo, estoy atascado en un problema bastante simple: ¿Dónde puedo encontrar el Drawable que CheckedTextView y RadioButton uso

Me miraba el código fuente de ambos, y parece que usar com.android.internal.R. Bueno ... eso es algo interno. Así que no puedo acceder a él.

Cualquier forma de obtener estos dibujables o resolver el problema de alguna manera?

¿Fue útil?

Solución

mirada debajo de la carpeta SDK /platforms/android-2.0/data/res/ se puede acceder a ellos mediante una android.R.drawable (si es pública) o necesidad de copiarlos como dibujable a su proyecto

Otros consejos

En aras de la exhaustividad:

A continuación, algunas piezas de código que muestran cómo lo tengo trabajando con respuesta aceptada anteriormente.

 //Image Setup (Once when creating this view)
 ImageView indicator = (ImageView) findViewById(R.id.RadioStatusImage);
 indicator.setImageDrawable(getResources().getDrawable(android.R.drawable.btn_radio));

 //State Change (In some other method)
  android.R.attr.state_checked
  if (isChecked)
  {
     indicator.setImageState(android.R.attr.state_checked, false);
  }
  else
  {
     indicator.setImageState(View.ENABLED_STATE_SET, false);
  }
  invalidate();

Para utilizar el nuevo valor predeterminado animada botón de radio estirable, la respuesta correcta es en el comentario de @sidon:

?android:attr/listChoiceIndicatorSingle

El uso de este en la posición personalizada en relación con el texto:

<RadioButton
    ...
    android:gravity="center_horizontal|bottom"
    android:drawableTop="?android:attr/listChoiceIndicatorSingle"
    android:button="@null"
    />
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top