Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 12/06/13, 12:58:06
Array

[xs_avatar]
ericguti.90 ericguti.90 no está en línea
Miembro del foro
 
Fecha de registro: mar 2011
Mensajes: 173
Tu operador: Yoigo

Texto se me sale de la pantalla (Canvas)

Estoy haciendo un pequeño juego utilizando SurfaceView y quiero añadirle texto, he utilizado canvas (No se si hay alguna forma mejor de hacerlo) y haciendo pruebas he puesto esto:

canvas.drawText("puntos de todos los monstruos que voy matando y todos los que quedan", 20, 20, estiloTexto);

Donde estiloTexto es un Paint (que me imagino que son las propiedades del texto, me equivoco?)
Bueno el problema es que a la hora de escribir el texto no hace un salto de linea sino que corta el texto y solo se ve el principio de la frase y quiero que se vea toda. En un momento de desesperación había pensado en hacer varios drawText pero claro hay muchos tamaños de pantalla así que estaría en el mismo problema... alguna solución??

Gracias!!!
Responder Con Cita


  #2  
Viejo 12/06/13, 13:34:35
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

Una opción es poner un TextView en el layout encima de la SurfaceView... tampoco hace falta pintar todo en el Canvas.

La otra opción es el "hazlo tú mismo", hay métodos para saber cuánto va a ocupar una cadena de caracteres, tendrías que implementarte alguna función que divida en líneas la frase.
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
  #3  
Viejo 12/06/13, 13:42:21
Array

[xs_avatar]
ericguti.90 ericguti.90 no está en línea
Miembro del foro
 
Fecha de registro: mar 2011
Mensajes: 173
Tu operador: Yoigo

 Cita: Originalmente Escrito por mocelet Ver Mensaje
Una opción es poner un TextView en el layout encima de la SurfaceView... tampoco hace falta pintar todo en el Canvas.

La otra opción es el "hazlo tú mismo", hay métodos para saber cuánto va a ocupar una cadena de caracteres, tendrías que implementarte alguna función que divida en líneas la frase.
En un principio queria poner el textView lo que pasa es que no se como añadir el layout ya que en el SurfaceView no se usa como hago para ponerlo encima? :S
Responder Con Cita
  #4  
Viejo 12/06/13, 13:51:50
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

Mete el SurfaceView en un RelativeLayout y luego pon el TextView donde quieras.
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
  #5  
Viejo 12/06/13, 14:12:01
Array

[xs_avatar]
ericguti.90 ericguti.90 no está en línea
Miembro del foro
 
Fecha de registro: mar 2011
Mensajes: 173
Tu operador: Yoigo

 Cita: Originalmente Escrito por ericguti.90 Ver Mensaje
En un principio queria poner el textView lo que pasa es que no se como añadir el layout ya que en el SurfaceView no se usa como hago para ponerlo encima? :S
Entonces en el "Main" tengo que hacer esto: setContentView(R.layout.main); y luego el intent a gameview.class? o lo dejo con el setContentView(New gameview(this));

Siento si las preguntas te resultan absurdas pero soy bastante novato..
Responder Con Cita
  #6  
Viejo 13/06/13, 10:26:00
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

Al final veo que el textview te va a complicar más la vida, si pintas en el Canvas tienes control total sobre cómo pintar el texto, tamaño, etc. Quizá te compense hacerte un método que salte de línea si el texto no cabe.
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 05:25:56 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2026 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /