Autore Topic: GLSurfaceView in Fragment  (Letto 1134 volte)

Offline Fullydroid

  • Nuovo arrivato
  • *
  • Post: 34
  • Respect: +1
    • Mostra profilo
GLSurfaceView in Fragment
« il: 01 Ottobre 2014, 10:52:00 CEST »
0
Ciao a tutti ragazzi,
sto cercando di inserire una GLSurfaceView nel layout di un Fragment.Purtroppo senza successo.

In poche parole quello che succede è che non disegno nulla.
Il codice per il disegno l'ho testato su un activity e funziona normalmente mentre in un fragment non vengono chiamati i metodi onSurfaceChange del renderer quindi in poche parole mai disegnero.

Ho letto qua e la che è possibile integrare la GLSurface nel layout di un fragment ma purtroppo non ci sono riuscito.

Il codice nell'onCreate è il seguente:

Codice: [Seleziona]

@Override
   public View onCreateView(LayoutInflater inflater, ViewGroup container,
         Bundle savedInstanceState) {
      this.context = getActivity();
      View rootView = inflater
            .inflate(R.layout.opengl_layout, container, false);
      swipeLayout = (SwipeRefreshLayout) rootView
            .findViewById(R.id.swipe_container);
      glView = (MyGLSurfaceView) rootView.findViewById(R.id.surfaceView1);
     
      GLlayout = (RelativeLayout)rootView.findViewById(R.id.upperView);
     
      //GLlayout.addView(glView);
      touchStart = new PointF();       
      if (renderer == null)
         renderer = new TriangleRenderer();
      glView.setRenderer(renderer);
      scaleGestureDetector = new ScaleGestureDetector(getActivity(), new ScaleListener());
      swipeLayout.setOnRefreshListener(this);
      swipeLayout.setColorScheme(android.R.color.holo_orange_dark,
            android.R.color.holo_red_dark,
            android.R.color.holo_orange_light, android.R.color.holo_red_light);
return rootView;


 e l' XML

Codice: [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/swipe_container"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <RelativeLayout
            android:id="@+id/upperView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:padding="20dp" >

            <Button
                android:id="@+id/button1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentTop="true"
                android:text="Button" />

            <Button
                android:id="@+id/button2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_alignParentTop="true"
                android:text="Button" />

            <openGlSurface.MyGLSurfaceView
                android:id="@+id/surfaceView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/button1"
                android:layout_alignRight="@+id/button2"
                android:layout_below="@+id/button1" />
           
        </RelativeLayout>
    </ScrollView>

</android.support.v4.widget.SwipeRefreshLayout>

Aspetto qualche aiuto!Grazie in anticipo.

Offline arlabs

  • Utente normale
  • ***
  • Post: 430
  • Respect: +49
    • Mostra profilo
  • Dispositivo Android:
    GalaxyS6, Nexus5
  • Play Store ID:
    AR Labs
  • Sistema operativo:
    Windows 10
Re:GLSurfaceView in Fragment
« Risposta #1 il: 02 Ottobre 2014, 11:40:20 CEST »
0
Anche io avevo provato a metterlo nel layout di un fragment, senza successo...

Non ci ho perso tempo e l'ho aggiunto programmaticamente (come fa l'esempio di OpenGL nella documentazione Android).

Però se scopri il busillis, fammene partecipe.
Grazie.


Offline Fullydroid

  • Nuovo arrivato
  • *
  • Post: 34
  • Respect: +1
    • Mostra profilo
Re:GLSurfaceView in Fragment
« Risposta #2 il: 02 Ottobre 2014, 13:45:22 CEST »
0
Anche io avevo provato a metterlo nel layout di un fragment, senza successo...

Non ci ho perso tempo e l'ho aggiunto programmaticamente (come fa l'esempio di OpenGL nella documentazione Android).

Però se scopri il busillis, fammene partecipe.
Grazie.

Ciao, volevo dirti che sono riuscito! A me non funzionava perchè avevo inserito un componente della libreria support.v4.

Per il resto ho fatto come con qualsiasi oggetto.

Offline arlabs

  • Utente normale
  • ***
  • Post: 430
  • Respect: +49
    • Mostra profilo
  • Dispositivo Android:
    GalaxyS6, Nexus5
  • Play Store ID:
    AR Labs
  • Sistema operativo:
    Windows 10
Re:GLSurfaceView in Fragment
« Risposta #3 il: 02 Ottobre 2014, 17:16:57 CEST »
0
Ah, sì?
Bene.

Può essere che avessi fatto una cavolata simile pure io.
Adesso non mi metto a ribaltare il tutto che sono in fase di rilascio.

Alla prossima ci riproverò...

Ciao.