Technical Support
🟢 Online now
Hello 👋

How can we help you today?
Contact on WhatsApp
B4X Store
jdashboardUI / Entradas y controles / JEditText
Entradas y controles

JEditText

Entrada avanzada con hint, iconos, contraseña, multiline, contador y errores

Buscar en toda jdashboardUI
Fuente
jdashboardUI.b4xlib · Solo API pública
Idioma de la tienda: es
Imagen de referencia
Referencia visual orientativa. No es una captura exacta y no amplía las capacidades documentadas.
REFERENCE
JEditText reference

Qué es

JEditText es un Custom View de entrada de texto basado en XUI. El código real contiene soporte para B4J, B4A y B4i e incluye hint/título flotante, iconos, contraseña, indicador de fuerza, multiline, helper, contador, longitud máxima, campo obligatorio, read-only y estado de error.

La imagen superior es orientativa. No se usa para atribuir funciones que el código no tenga.

Eventos

Private Sub UserName_TextChanged(Old As String, New As String)
End Sub

Private Sub UserName_FocusChanged(HasFocus As Boolean)
End Sub

Private Sub UserName_EnterPressed
End Sub

Private Sub UserName_ClickedIcon(Open As Boolean)
End Sub

Designer Properties

Confirmadas en el código: ActiveColor, CornerRadius, IconBackgroundColor, BackgroundColor, TextColor, HintTextColor, IconDeleteColor, IconColor, HintText, TextSize, IconSize, BorderWidth, PaddingHorizontal, PaddingVertical, StaticMode, PasswordMode, PasswordStrength, UseIcon, UseDeleteIcon, mMultiline, HintAsTitle, RequiredField, RequiredFieldColor, HelperText, HelperTextColor, MaxLength, ShowCounter, InputType y ReadOnly.

InputType lista: Text|Number|Phone|Email|Decimal. MaxLength=0 significa sin límite.

Crear por código

Dim UserName As JEditText
UserName.Initialize(Me, "UserName")
UserName.AddToParent(Root, "username", "User name", _
    20dip, 20dip, 320dip, 64dip, _
    0xFF35B998, 0xFFF5F7FA, 0xFF12153D, _
    14, False, True, 1, xui.Color_White)

Texto, hint y título flotante

UserName.Text = "Fernando"
UserName.HintText = "User name"
UserName.HintAsTitle = True
UserName.HintTextColor = 0xFF909090

Con HintAsTitle=False, el hint actúa como placeholder según la lógica del componente.

Campo obligatorio, helper y contador

UserName.RequiredField = True
UserName.RequiredFieldColor = 0xFFDD5F60
UserName.HelperText = "Enter your account name"
UserName.MaxLength = 30
UserName.ShowCounter = True

Si MaxLength > 0, el manejador de cambio recorta texto que exceda el máximo. El contador muestra longitud actual/máxima.

Error

If UserName.Text.Trim = "" Then
    UserName.Error = "This field is required"
Else
    UserName.clearError
End If

Error cambia borde/hint al ErrorColor y muestra el mensaje. clearError restaura el estado. También existen IsError y ErrorText de lectura.

Password

Password.PasswordMode = True
Password.PasswordStrength = True
Password.PasswordIconColor = 0xFF35B998

El modo contraseña crea un icono para alternar visibilidad. El indicador de fuerza usa tres segmentos y se actualiza al cambiar el texto.

Multiline

Notes.Multiline = True

En B4J el componente recrea internamente el editor al cambiar este modo, conserva el texto y reaplica formato.

ReadOnly

UserName.ReadOnly = True

Deshabilita la edición del control nativo.

InputType: precisión importante

Email.InputType = "Email"

El setter existe en todas las plataformas, pero la configuración específica del teclado para Number/Phone/Email/Decimal está dentro de #If B4A. En B4J no debe presentarse como validación ni como cambio de teclado.

APIs confirmadas: ShowIcon, IconColor, Icon(Font, Icons), Icon2(Font, Icons, IconColor), SetLogo(FileDir, FileName, Size), SetIconSize(Size), ShowDeleteIcon, DeleteIconColor.

Apariencia

Propiedades confirmadas: ActiveColor, IconPanelBackgroundColor, IconBackgroundColor, BackgroundColor, TextColor, TextSize, HintColor, HintTextColor, IconColor, CornerRadius, Font, BorderWidth, PaddingHorizontal, PaddingVertical, PasswordIconColor, DeleteIconColor, ColorIcon.

Métodos públicos

Método Uso
Initialize Inicialización
DesignerCreateView Ciclo del Custom View
AddToParent Creación por código
Base_Resize Reorganiza el control
Activate Activa/desactiva visualmente
SetLogo Logo desde archivo
SetIconSize Tamaño de icono
visibleHintText Visibilidad del hint
GetNativeTextField Control nativo como Object
clearError Limpia error
Wait Espera expuesta
RefreshView Refresca estado visual

Límites confirmados

  • No existe una propiedad pública Success State; un aspecto verde es solo estilización.
  • InputType="Email" no valida emails.
  • No existe una propiedad llamada Placeholder; se obtiene con HintText + HintAsTitle=False.
  • Multiline sí es una capacidad real.
  • ReadOnly deshabilita la edición nativa y su implementación varía por plataforma.