Pregunta

Tengo 4 pestañas.Cada ficha está representado por un botón.Estos botones se utilizan para seleccionar la pestaña actual.Cada botón tiene un icono y un texto.

Me gustaría destacar la ficha seleccionada actualmente por el cambio de color de fondo y texto de la etiqueta del color del botón correspondiente.Me gustaría hacerlo con el Tema y el Editor de Recursos.

He creado el tema y especificado no está seleccionada, selecciona y pulsa estilos para UIID "Ficha".Mis pestañas lucen muy bien en Sol WTK!Bien!Pero me pareció que en un teléfono real, las pestañas siempre parecen no seleccionados.He probado en el Nokia 5800 XPressMusic y C7.¿Por qué la diferencia?

Después de algunos experimentos he encontrado la razón - los botones puede ser sólo en 2 estados:seleccionado y prensado.Que nunca en el estado seleccionado.En el emulador cuando me mudo a un botón mediante la navi claves, se convierte seleccionado.

Así que, ¿qué debo hacer para marcar la pestaña actual?

¿Fue útil?

Solución 2

He implementado lo que yo necesitaba.Gracias a Shai y su ejemplo.

Yo no uso el tema de las propiedades y de hecho todas las personalizaciones en el código.Lo hice así porque no entendía cómo la configuración de único UIID me puede ayudar, ya que el problema no está en la identificación de la UIID para que los apoyos han de ser cambiadas, pero en la identificación del botón de estilo para ser cambiado.

A continuación algunas notas importantes de mi solución.

  1. Llame addActionListener para los botones DESPUÉS de se han añadido a las pestañas.
  2. Cuando la ficha se pulsa el botón, la actualización de No seleccionada los estilos de los botones de la ficha.También puede cambiar sus iconos.
  3. La llamada del formulario repaint() después del paso 2.

Otros consejos

Puede utilizar algunos enfoques diferentes, especialmente en 1.5.

LWUIT 1.5 tiene un componente de pestañas que prácticamente hace todo por usted y es notablemente flexible.

Utiliza botones de radio en los que se invoca el método setToggleButton(true).Los botones de alternancia actúan como botones de radio, por lo que cuando presiona un botón en el grupo, permanece presionado y se procesa usando el estilo ToggleButton (puede establecer el UIID en lo que desee).Vea una muestra del uso de botones de alternancia en la parte de demostración de fuentes de la demostración de LWUIT.

Una opción que funcionará para versiones anteriores de LWUIT es simplemente establecer el UIID del botón en un valor diferente cuando se presiona (y restaurar el UIID del botón previamente seleccionado al valor original).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top