¿Cómo puedo solucionar problemas de visibilidad de html.fromHtml link focus (en ICS y Honeycomb)?
Para obtener un TextView
para mostrar (y actuar amistoso con) Html cadenas de mi código se ve algo así como:
// itemHtml is a String of HTML defined above TextView itemContent = (TextView) findViewById(R.id.itemContent); itemContent.setText(Html.fromHtml(itemHtml)); itemContent.setMovementMethod(LinkMovementMethod.getInstance());
Si la cadena Html tiene un vínculo, TextView
resulta en vínculos que se pueden hacer clic y se pueden enfocar. Cuando el usuario se centra en un enlace específico (por ejemplo, utilizando el d-pad), el texto del enlace cambia de manera significativa para mostrar que se obtuvo el enfoque.
- Desarrollo de set top de Android
- Identificador de recursos de Android para teléfonos de alta resolución y Google TV
- Android Studio / Win8 / ERR_NAME_NOT_RESOLVED
- Google TV - está diseñando para la eficiencia tan importante como lo es con los teléfonos / tabletas?
- ¿El emulador de Google TV no admite reproducción local y tarjeta SD?
El problema es que cuando pruebo este mismo patrón usando dispositivos con un pad de d-pad usando Honeycomb (por ejemplo, un Google TV) o Ice Cream Sandwich de Android, el enlace en el texto no muestra ninguna indicación notable de que el enlace tiene foco.
Sé que está consiguiendo el foco, porque cuando usted golpea entonces entra él hace la acción especificada. Incluso puede moverse entre varios enlaces en el texto; Usted acaba de dejar adivinar en qué enlace se encuentra actualmente, lo que resulta en una muy mala experiencia de usuario.
¿Hay algo que estoy haciendo mal? ¿Hay alguna manera de solucionar esto o evitar esto?
- Google Tv Emulator AVD Imagen del sistema
- Mecanismo para que las aplicaciones muestren su contenido de imagen en 4k nativo
- ¿Puedo mostrar el canal de TV actual en una aplicación de pantalla completa de googleTV?
- Google TV SDK para Android
- Implementar y diseñar aplicaciones de Android para TV
- Identificar GoogleTv desde la aplicación de Android
- Dispositivos Android: asura, águila y ka
- ¿Necesita Google TV cosas como WakeLocks?
Edit : Después de ir un poco loco, finalmente pensé que encontré una solución. Sin embargo, esta solución sólo funciona para Honeycomb . ICS todavía no se resuelve!
A partir de la API 11, Android tiene una nueva configuración en TextViews para definir si el texto es seleccionable.
Puede setTextIsSelectable(true)
con setTextIsSelectable(true)
en un TextView, o definirlo en el diseño XML android:textIsSelectable="true"
Probablemente es mejor definirlo en XML, de modo que mantener la aplicación hacia atrás-compatible es trivial. Sólo asegúrate de que estás dirigiendo la versión> = 11, o probablemente obtendrá un error.
La forma en que HTML.fromHTML opera es mediante la creación de "spans" con diversos efectos a lo largo de los diversos caracteres de la cadena. Una solución para esto sería utilizar ClickableSpan junto con otro de los CharacterStyles para colorear el texto como clicable. El span anterior le permitirá registrar una devolución de llamada, y esta devolución de llamada podría ser para difundir una intención de ver una url (que abriría un navegador).
Las listas de estado de color del texto para Honeycomb + pueden no establecer el estado enfocado en un color diferente o anular el color para que sea constante.
Compruebe los colores + estilos en your_android_sdk_directory / android-14 / data / res /
Configurar el texto en android: autoLink = "web" también podría ayudar?
La mejor manera de hacerlo es agregar estilo CSS a su html. Sé que soporta Android : selector de hover . Así que tal vez algo como esto:
String myLink = "<a href=\"http:\/\/google.com\">your link</a>" Html.fromHtml(myLink);
Y encontrar una manera de incluir los datos CSS a ella: (No estoy seguro de cómo, pero creo que es posible)
a :hover { color: red; }
ACTUALIZAR:
Creo que la respuesta de su pregunta está ahí .
- ¿Cómo puedo controlar cómo Android TTS reproduce audio?
- ¿Por qué se ignora el parámetro de consulta `sll` para una URL de Maps (tipo de)?