Aztec: editor nativo de HTML para AndroidAZTEC (que extiende EditText) es un componente de editor de texto rico para escribir documentos HTML en Android.
Puede verificar la versión mínima de Android admitida observando la configuración de minSdkVersion dentro de Build.gradle.


Declare los componentes principales en su diseño:
Editor visual
< org .wordpress.aztec.AztecText
android : id = " @+id/visual "
android : layout_width = " match_parent "
android : layout_height = " match_parent "
android : scrollbars = " vertical "
android : imeOptions = " flagNoExtractUi "
aztec : historyEnable = " false " />Editor de fuentes
< org .wordpress.aztec.source.SourceViewEditText
android : id = " @+id/source "
android : layout_width = " match_parent "
android : layout_height = " match_parent "
android : inputType = " textNoSuggestions|textMultiLine "
android : scrollbars = " vertical "
android : imeOptions = " flagNoExtractUi "
aztec : codeBackgroundColor = " @android:color/transparent "
aztec : codeTextColor = " @android:color/white " />Barra de herramientas
< org .wordpress.aztec.toolbar.AztecToolbar
android : id = " @+id/formatting_toolbar "
android : layout_width = " match_parent "
android : layout_height = " @dimen/format_bar_height "
android : layout_alignParentBottom = " true " />Inflar las vistas:
val visualEditor = findViewById< AztecText >( R .id.visual)
val sourceEditor = findViewById< SourceViewEditText >( R .id.source)
val toolbar = findViewById< AztecToolbar >( R .id.formatting_toolbar)Configurar aztec con una imagen y cargadores de video proporcionados:
Aztec . with (visualEditor, sourceEditor, toolbar, context)
.setImageGetter( GlideImageLoader (context))
.setVideoThumbnailGetter( GlideVideoThumbnailLoader (context))Para obtener más opciones, como el historial de edición, los oyentes y los complementos, consulte la implementación de la aplicación de demostración.
Construya la biblioteca, construya el proyecto de ejemplo y ejecute pruebas unitarias:
$ ./gradlew buildEjecutar solo pruebas unitarias:
$ ./gradlew testESPRESSO aconseja deshabilitar las animaciones del sistema en los dispositivos utilizados para las pruebas:
En su dispositivo, en Configuración-> Opciones de desarrollador Deshabilita las siguientes 3 configuraciones:
- Escala de animación de ventana
- Escala de animación de transición
- Escala de duración del animador
También se requiere un paso de configuración adicional para manejar un problema de café expreso con clics (consulte las advertencias a continuación):
En su dispositivo, en Configuración -> Accesibilidad -> Toque y retrase el retraso, establezca el retraso en Long .
Ejecute las pruebas de instrumentación:
$ ./gradlew cAT repositories {
maven { url " https://a8c-libs.s3.amazonaws.com/android " }
} dependencies {
api " org.wordpress:aztec:v1.6.2 "
}Los desarrolladores valientes pueden usar el proyecto como distribución de fuente o divertirse con la última instantánea bajo su propio riesgo:
dependencies {
api " org.wordpress:aztec:trunk-{commit_sha1} "
// As an example, for '3f004c8c8cd4b53ab9748f42f373cf00a30e9d86' commit sha1, this would look like:
// api "org.wordpress:aztec:trunk-3f004c8c8cd4b53ab9748f42f373cf00a30e9d86"
}Puede usar la API para modificar el comportamiento aztec.
Si desea limitar la funcionalidad que proporciona la biblioteca AZTEC, puede cambiarla llamando al método de setToolbarItems en AztecToolbar . El siguiente ejemplo habilitará solo bold , plugins y elementos list en el orden dado.
aztecToolbar.setToolbarItems( ToolbarItems . BasicLayout ( ToolbarAction . BOLD , ToolbarItems . PLUGINS , ToolbarAction . LIST )) Puede establecer nuevos elementos que no están habilitados de forma predeterminada. ToolbarAction.CODE and ToolbarAction.PRE .
CODE representa el código HTML en líneaPRE representa un bloque preformado (incluido el bloque de código) Hay un tipo de lista opcional que puede habilitar en el editor. Además de las listas ordenadas y desordenadas, puede usar task list . Una lista de tareas es una lista desordenada que muestra y guarda las casillas de verificación en lugar de las balas. Habilitarlo llamando al siguiente método.
aztecToolbar.enableTaskList()Por defecto, AZTEC permite bloques anidados. En ciertos casos, este no tiene que ser el comportamiento preferido. Hay una opción para deshabilitar los bloques anidados. Cuando se cambia, este editor siempre agregará medios y regla horizontal después del bloque seleccionado actualmente, no en el medio.
aztecText.addMediaAfterBlocks() AZTEC ahora admite a los marcadores de posición para dibujar vistas que no son compatibles de forma nativa por EditText y API spannable. La funcionalidad crea un tramo en el editor visual y dibuja una vista de Android sobre ella. La vista se mueve cuando el usuario cambia cualquier cosa en el editor y le permite dibujar cosas como un video que se pueden reproducir en línea en el editor. Para utilizar la API, debe crear una instancia de PlaceholderManager e inicializarla en su llamada onCreate como esta:
private lateinit var placeholderManager : PlaceholderManager
override fun onCreate ( savedInstanceState : Bundle ? ) {
placeholderManager = PlaceholderManager (visualEditor, findViewById( R .id.container_frame_layout))
aztec.addPlugin(placeholderManager)
aztec.addOnMediaDeletedListener(placeholderManager)
}
override fun onDestroy () {
placeholderManager.onDestroy()
} Puede crear un PlaceholderAdapter personalizado para preparar y dibujar su vista. Puede verificar la ImageWithCaptionAdapter que dibuja una vista de Android simple con una imagen y un título. Sin embargo, puede implementar cosas como la vista YouTube o la vista Video con controles de reproducción. No olvides registrar tu PlaceholderAdapter así:
placeholderManager.registerAdapter( ImageWithCaptionAdapter ())Una vez que haya inicializado tanto el administrador como el adaptador, puede usar los métodos del administrador para insertar o eliminar a los marcadores de posición.
placeholderManager.insertItem(adapterType, attributes)
placeholderManager.removeItem(predicate) Usamos Ktlint para Linting Kotlin. Puede ejecutar ktlint usando ./gradlew ktlint , y también puede ejecutar ./gradlew ktlintFormat para auto formateo. No hay un complemento de idea (como el de checkstyle) en este momento.
AZTEC es un proyecto de código abierto cubierto por la Licencia Pública de Mozilla Versión 2.0.