Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Uso de la clase GLSurfaceView con diseños xml para Android

Quiero hacer uso de los diseños xml android. He puesto un glSurfaceView en un diseño de marco para utilizar en conjunción con un diseño lineal como …

<FrameLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1"> <android.opengl.GLSurfaceView android:id="@+id/surfaceviewclass" android:layout_width="match_parent" android:layout_height="match_parent"/> </FrameLayout> <LinearLayout android:id="@+id/gamecontrolslayout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="5" android:background="@drawable/backdrop"> //some layout stuff </LinearLayout> <LinearLayout> 

A continuación, llamar a mi diseño como así

 setContentView(R.layout.main); GLSurfaceView glSurfaceView = (GLSurfaceView)findViewById(R.id.surfaceviewclass); 

En onCreate ();

¿Cómo puedo llamar a mi glSurfaceView para que pueda hacer uso de los diseños xml como este y también hacer referencia a mi propia clase GLSurfaceView (a continuación es el código que hace referencia a mi propia clase GLSurfaceView) …

 glSurfaceView = new MyGLSurfaceView(this); setContentView(glSurfaceView); 

¿Hay alguna manera de combinar estos dos? Quiero hacer esto porque tengo una carga de cosas que suceden en mi clase glSurfaceView como carga de archivos y eventos de toque. Y sólo he pensado en implementar este nuevo diseño

  • Problema de opengl de Android (extraño)
  • ¿Cómo acceder a otro vértice en un programa de sombreado de vértices en opengl es 2?
  • Herramienta de visualización para móviles (tableta)
  • Visualización del flujo de la cámara en un GLSurfaceView a través de SurfaceTexture
  • ¿Por qué mi programa de shader openGL para puntos tiene anillos de artefactos?
  • EGL_emulation no pudo establecer la conexión con host - android
  • ¿Emulador de BlueStacks para Linux?
  • Rendimiento lento de glTexSubImage2D en Nexus 10 / Android 4.2.2 (Samsung Exynos 5 con Mali-T604)
  • 2 Solutions collect form web for “Uso de la clase GLSurfaceView con diseños xml para Android”

    Sólo haga referencia a su propia clase (con nombre de paquete completo) en el xml, de la misma manera que referencia android.opengl.GLSurfaceView. Asegúrese de que su subclase implementa el constructor adecuado y pasa los atributos y el contexto al padre:

     public MyGLSurfaceView(Context context, AttributeSet attrs) { super(context, attrs); 

    Entonces usted puede buscarlo usando findViewById:

     MySurfaceView glSurfaceView = (MySurfaceView)findViewById(R.id.surfaceviewclass); 

    Eso debería hacer el truco.

    Si todo corect, como usted escribe en el xml-layout, el camino completo a la Glsurfaceview-class: (and classname)

    Sólo funciona si la clase GLSurfaceView, escrita en un archivo propio. En este archivo para shure, los construcktors necesitan ser escritos correctamente.

    He leído sobre, 1 constructor para xml-refer, y uno para la comunicación entre clases. Constructor para xml-refer, y uno para la comunicación entre clases, se puede encontrar, si se escribe correctamente, dentro de GLSurfaceView. GLSurfaceView, es donde se establece el procesador, establecerlo en el constructor xml, debe ser la única manera, funciona bien. (Mostrado en la columna 1)

    Xml-constructor:

    Public MyGLSurfaceView (Contexto contextual, AttributeSet attrs) {super (context, attrs); SetEGLContextClientVersion (2);
    Renderer = new Renderer (contexto); SetRenderer (renderizador);

    Si algunos de estos pueblos, que no pueden obtener trabajo de SurfaceView, en xml-layout mineral, que compran este libro de Apress – Beginning 3D-Game-Development. No estar enojado se lastimó usted mismo. En la página 44-45 se escribe, en un archivo. Escribir GLSurfaceView, como en mi respuesta, en el propio archivo. Renderer es un archivo propio, donde: onSurfaceCreated, onSurfaceChanged, onDrawFrame .. se puede encontrar Y The MainActivity

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.