Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Creación / uso de XML de diseño generado en tiempo de ejecución en Android

Actualmente estoy trabajando en un proyecto que requiere que yo utilice un documento XML para procesar un formulario en un dispositivo Android. El formulario se debe buscar y mostrarse en tiempo de ejecución. Me pregunto si hay una manera de etiquetar el XML de formulario, transformarlo usando XSLT en un XML de diseño de Android, y luego hacer que el dispositivo lo procese.

  • Configuración del color del texto del botón con un estilo
  • ¿Es posible crear esta forma simple en Android XML?
  • Espacio entre editText y softkeyboard
  • Error de xml de la gaveta de la navegación
  • Android, envío de XML a través de HTTP POST (SOAP)
  • Recurso desplegable del atributo personalizado
  • ¿Por qué esta línea xmlns: android = "http://schemas.android.com/apk/res/android" debe ser la primera en el archivo xml de diseño?
  • Coloque los botones en la parte inferior de la pantalla con LinearLayout?
  • 3 Solutions collect form web for “Creación / uso de XML de diseño generado en tiempo de ejecución en Android”

    Desafortunadamente no puedes clonar LayoutInflater o usar otros trucos para hacerlo – la inflación de diseño depende enteramente de los constructores de vistas que toman un argumento AttributeSet, que dependen totalmente del método Context.obtainStyledAttributes, el cual depende por sí mismo de Tener un archivo XML binario pre-procesado para poder hacer una resolución de atributo razonablemente eficiente.

    Un enfoque alternativo que puede explorar es utilizar la herramienta aapt (o más probablemente una versión hackeada del mismo) en su servidor, para compilar los diseños que genere en los datos apropiados. Desafortunadamente, actualmente no tenemos una manera de construir un XmlPullParser desde una burbuja binaria en bruto (debe obtener esta burbuja del AssetManager), por lo que hay una cantidad considerable de trabajo que se debe realizar tanto en el cliente como en el servidor con este enfoque. Sospecho que uno puede llegar a algo bastante ordenado, pero será mucho trabajo.

    Android sólo contiene una forma integrada de "inflar" el diseño XML almacenado como un recurso de diseño en el archivo APK. Si desea "inflar" XML similar (o diferente) de otras fuentes, tendrá que implementarlo usted mismo, tal vez clonando alguna lógica de la clase LayoutInflater .

    El método LayoutInflater.inflate tomará un XmlPullParser como un argumento, así que todo lo que necesitas hacer es cargar tu XML creado dinámicamente en un PullParser y pasarlo al inflater.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.