Estoy usando el teclado de Hacker y Swiftkey X en Gingerbread. La línea de sugerencias se muestra en la mayoría de las aplicaciones sobre el teclado. Pero cuando abro el teclado en Market o Droidedit (editor de resaltado de sintaxis), las sugerencias no se muestran para ningún teclado que yo use. ¿Qué determina este comportamiento? ¿Cómo puedo activar/forzar las palabras de sugerencia?
Respuesta
¿Demasiados anuncios?Lo más probable es que la aplicación haya elegido no mostrarlas para ese cuadro de entrada en particular. Desde una perspectiva técnica, esto se controla mediante banderas en el TextView
objeto que representa el control del área de texto (por ejemplo, el TYPE_TEXT_FLAG_NO_SUGGESTIONS
opción). No creo que haya ninguna manera de anular esta configuración si la aplicación elige desactivarla.
Probablemente también es importante señalar que es una calle de un solo sentido. Las sugerencias están habilitadas por defecto en todas las áreas de texto, pero obedecerán a la configuración global, por lo que una aplicación no puede forzar la habilitación de sugerencias de ninguna manera. Si tienes la configuración global desactivada, están desactivadas en todas partes.
La lógica que la documentación del desarrollador proporciona para permitir que las aplicaciones deshabiliten forzosamente las sugerencias es que en algunos casos simplemente no son muy útiles. La cita específica relevante sería (del enlace anterior):
... Esto es útil para las vistas de texto que no contienen palabras del idioma y no se benefician de ninguna terminación o corrección basada en el diccionario ...
Apostaría que el mercado los desactiva porque los nombres de las aplicaciones y demás no tienen la obligación de ser palabras del diccionario, por lo que los intentos de sugerencia a menudo resultarían bastante inútiles. También entendería que lo mismo ocurre con su segundo ejemplo, que suena como un editor de código fuente (asumo que eso es lo que quiere decir con "syntax highlighting"). Sería algo así como si Visual Studio subrayara las palabras mal escritas en el código fuente - no ofrece ningún beneficio ya que la mayor parte del texto no serán palabras del diccionario.