Saltar al contenido
CrossFly es 100% open sourceSíguenos en GitHub
CrossFlyCrossFly
Empezar

Esta página fue traducida automáticamente del portugués y puede contener errores. La versión en portugués es la canónica.

Cómo mostrar un Hint (toast)

Propósito. Mostrar un mensaje corto y temporal (estilo “toast”) que aparece sobre la pantalla, no bloquea la interacción y desaparece solo tras un tiempo. Úsalo para confirmaciones rápidas (“Guardado”, “Copiado”), avisos leves y estado. Sustituye al antiguo concepto de Toast.

APIs usadas

  • Hint.show(String message, int delay) — muestra el toast durante delay milisegundos, con fade. Método estático (no se instancia Hint).
  • Hint.show(message, delay, Window parentWindow) — lo mismo, anclado a una ventana específica (por defecto: la ventana en la cima de la pila).
  • Hint.show(message, delay, parentWindow, Relative at, Gap innerGap) — control total de la posición vertical y el padding interno.
  • Hint.show(null, delay) — pasar message == null oculta el toast actual inmediatamente.
  • Hint.INFINITE — constante Integer.MAX_VALUE: mantiene visible (con fade-in) hasta que lo ocultes manualmente.
  • Hint.INFINITE_NOANIM — constante Integer.MIN_VALUE: mantiene visible sin animación.

Configuración global (campos estáticos públicos): Hint.backColor, Hint.foreColor, Hint.position (por defecto Relative.ofScreen(0.85f), cerca del pie), Hint.fade, Hint.font. Cambiar estos campos afecta a todos los toasts siguientes.

Ejemplo completo (copiar, pegar y ejecutar)

package com.exemplo;

import dev.crossfly.ui.*;
import dev.crossfly.ui.layout.*;

/** Pantalla principal ejecutable. Apunta el launcher (classname) y corre: gradlew :lwjgl3:run */
public class MainWindow extends Window
{
   @Override
   public void onShow() throws Exception
   {
      super.onShow();
      setLayout(new VerticalLayout());

      // Un botón que dispara la toast al ser tocado
      Button btn = new Button("Salvar");
      btn.onAction(origin ->
      {
         // Toast simple: aparece por 2 segundos y desaparece con fade
         Hint.show("Registro salvo", 2000);
      });
      add(LAY_FILL, btn);
   }
}

El fragmento de abajo muestra solo el núcleo. Para ejecutarlo, colócalo en el esqueleto MainWindow de arriba.

Fragmento mínimo

// Toast simple: aparece por 2 segundos y desaparece con fade
Hint.show("Registro salvo", 2000);

// Toast infinita (permanece en pantalla hasta que la mandes desaparecer)
Hint.show("Sincronizando...", Hint.INFINITE);
// ...cuando termine:
Hint.show(null, 0);   // message == null oculta la toast actual

// Posición en la parte superior, con padding interno personalizado
Hint.show("No topo", 1500, null, Relative.START, Gap.ofFont(1f, 0.5f, 1f, 0.5f));

Nota de verificación (código 2026). La firma real en la fuente es Hint.show(String, int) y sobrecargas — no existe un método hide(); para ocultar, invoca Hint.show(null, ...). El toast es renderizado por una ToastWindow interna (subclase de Window) mostrada en la pila del EventsProcessor, así que aparece sobre la pantalla actual sin que gestiones nada.

Profundiza

¿Te resultó útil esta página?