Cómo importar el recurso de forma (xml) al código?

He estado intentando importar xml de la forma a la visión modificada para requisitos particulares. Me gusta esto,

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="#f0600000"/> <stroke android:width="10dp" android:color="#00FF00"/> <corners android:radius="15dp" /> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /> 

y en mi código de vista personalizado, trato de llamar desde mis recursos externos

  private void initTestView(){ Resources res = this.getResources(); mDrawable = (ShapeDrawable)res.getDrawable(R.drawable.recshape); } 

pero si este ruuning en el emulador, llamó error porque mDrawable debe ser "GradidentDrawable". pero lo que no tiene sentido es que el código xml superior es sólo para "ShapeDrawable". No entiendo por qué sucede, ¿alguien sabe por qué sucede?

Curiosamente, los recursos XML <shape> asignan a GradientDrawable , mientras que los objetos ShapeDrawable están ahí para la creación de programas. En general, te recomiendo que sólo Drawable a Drawable , a menos que necesites hacer modificaciones en tiempo de ejecución a los parámetros de forma.

Tenga en cuenta que puede ser más eficiente usar Nine Patch drawables en su lugar, porque en general, raster tiene un mejor rendimiento que vector.

  • Android onClick en XML vs. OnClickListener
  • Ejemplo de cómo descargar JSON desde el servidor?
  • "ArrayAdapter requiere que el identificador de recurso sea un TextView" xml problems
  • Android Studio 1.2.1.1 problemas de vista previa de diseño
  • ¿Cómo puedo aplicar operaciones matemáticas a las dimensiones de Android?
  • Cómo almacenar datos desde un archivo XML a una base de datos SQLite en android
  • Esquinas redondeadas redondeadas de Android XML con etiqueta de mapa de bits
  • ¿Cómo crear el retraso de 1 segundo antes de establecer el alfa de Ver?
  • Cómo agregar RecyclerView en xml en android Lollipop
  • Cómo poner tres botones de imagen en la misma línea en Android
  • Lollipop AppBarLayout / Barra de herramientas que falta la animación de overscroll
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.