Combinación de SurfaceView con otras vistas, como TextView y botones

Estoy totalmente nuevo a la programación de androide (sólo hizo algunos tutoriales / leer las guías de dev, etc) y como cada novato quiero hacer un juego inútil :-).

Actualmente estoy luchando con el diseño de diferentes vistas. Similar al ejemplo que he hecho una clase que extiende un SurfaceView y ponerlo en un FrameLayout . Alrededor de este SurfaceView quiero tener otras vistas como Buttons y TextViews . Algo como esto:

 ----------------------------------------------- | TextView | SurfaceView | TextView | | | | | ------------ ------------ | | | TextView | | | | | | | ------------ | | | TextView | | | | | | | ------------ | | | | | | | | ----------------------------------------------- | Button Button | ----------------------------------------------- 

He conseguido hacer algo como esto con un FrameLayout y RelativeLayouts (pegar el TextViews en los bordes de la pantalla), pero me gustaría controlar mejor el tamaño de la SurfaceView como debe ser un múltiplo en el ancho y la altura de la Objeto (s) Voy a dibujar en ella. He intentado poner layout_width y layout_height a algunos valores de dp, pero cuando empiezo a pintar a 0,0 todavía está en la esquina superior izquierda (donde el TextView es ..).

Entonces, ¿cuál es la mejor práctica para lograr un diseño como el anterior? ¿Usando qué diseño? ¿O debo dibujar mejor mi texto dentro de la función draw() de mi SurfaceView ?

Los diseños son la forma correcta de combinar el contenido de OpengGL con botones, etiquetas y otro tipo de objetos de vista. Puede combinar diseños dentro de otros diseños … para que pueda construir su pantalla paso a paso combinando Linear Layouts o lo que prefiera.

Por ejemplo, puede utilizar un diseño Relativo para configurar los botones (b1, b2) y el resto de la pantalla:

 +-----------+ | Zone 1 | +-----+-----+ | b1 | b2 | +-----+-----+ 

Luego, dentro de la Zona 1, puede usar un Diseño Lineal Horizontal para las 3 columnas principales

 +----+----+----+ | c1 | c2 | c3 | +----+----+----+ 

Dentro de c2 puede colocar el SurfaceView, y en c1 la etiqueta de texto

Dentro de c3 será un nuevo diseño lineal vertical para mostrar las etiquetas de texto.

 +----+ | t1 | +----+ | t2 | +----+ | t3 | +----+ 
  • Android translate ImageView sobre SurfaceView
  • Android: vista de la cámara: la aplicación se bloquea cuando no utilizo un método obsoleto
  • SlidingDrawer ocultado por la imagen en SurfaceView
  • Cámara de conmutación de adelante hacia atrás en pjsip android
  • Android IllegalArgumentException lockCanvas ()
  • Se ha abandonado BufferQueue: Al reproducir vídeo con TextureView
  • El lienzo SurfaceView de Android produce colores incorrectos
  • GetSupportedPictureSize () devuelve un valor que no es realmente compatible con Nexus4
  • ¿Cómo utilizar el feed de cámara en vivo como un fondo de actividad?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.