El Arsenal de Android – Widget

Un Android personalizado View implementar toda la interfaz de usuario necesaria para un flujo típico de “entrada de código PIN / SMS”. Se puede utilizar para verificar cualquier código basado en dígitos (verificación por SMS, verificación por PIN, etc.).

Paso 1. Agregue el repositorio de JitPack a su archivo de compilación. Agréguelo en su build.gradle raíz al final de los repositorios:

allprojects {
    repositories {
 ...
 maven { url 'https://jitpack.io' }
    }
}

Paso 2. Agrega la adicción

dependencies {
    implementation "com.github.fraggjkee:sms-confirmation-view:1.1"
}

insertar SmsConfirmationView a su diseño XML:

<com.fraggjkee.smsconfirmationview.SmsConfirmationView
    android:id="@+id/sms_code_view"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

… y luego escuche sus actualizaciones en su archivo Activity o Fragment:

val view: SmsConfirmationView = findViewById(R.id.sms_code_view)
view.onChangeListener = SmsConfirmationView.OnChangeListener { code, isComplete ->
   // TODO...           
}

También puede obtener / configurar el código usando el enteredCode propiedad.

Esta vista de prueba de SMS es compatible con el marco de enlace de datos de Android, incluida su versión bidireccional. La lista de adaptadores disponibles se puede encontrar aquí.

Aquí está la lista de atributos XML disponibles:

  • scv_codeLength: Longitud esperada del código de confirmación. Predeterminado = 4
  • scv_symbolsSpacing: Espacio entre las visualizaciones secundarias individuales de símbolos. Valor predeterminado = 8dp
  • scv_symbolWidth: ancho de cada celda del símbolo. Valor predeterminado = 42dp
  • scv_symbolHeight: altura de cada celda del símbolo. Valor predeterminado = 48 dp
  • scv_symbolTextColor: color de texto utilizado para dibujar texto en subvistas de símbolos. Predeterminado = ?attr/colorOnSurface o Color.BLACK si ese atributo no está definido en el tema de su aplicación.
  • scv_symbolTextSize: tamaño de texto utilizado en subvistas de símbolos. Predeterminado = 22sp
  • scv_symbolBackgroundColor– Color de relleno para pantallas de símbolos secundarios. Predeterminado = ?attr/colorSurface o Color.BLACK este atributo no está definido en el tema de su aplicación.
  • scv_symbolBorderColor: color a utilizar para el contorno del trazo de la pantalla secundaria de los símbolos. Predeterminado = ?attr/colorSurface o Color.BLACK si ese atributo no está definido en el tema de su aplicación.
  • scv_symbolBorderWidth: ancho de trazo utilizado para dibujar el borde de la subvista del símbolo. Valor predeterminado = 2dp
  • scv_symbolBorderCornerRadius: radio de la esquina del borde de la subvista del símbolo. Valor predeterminado = 2dp

Todos estos atributos también se pueden editar programáticamente (Sin embargo, la personalización XML es la forma preferida), consulte la lista de extensiones disponibles aquí.

Licencia

Apache 2.0

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *