メイン アクティビティと OpenGL レンダラーの間のフローがわかりません。
私のアプリが起動すると、「レンダリングを開始」というボタンで作成した非常にきれいなレイアウトがユーザーに表示されます。ユーザーがボタンをクリックすると、素晴らしい絵を描くレンダラー ビューに転送されます。そして絵が完成したらメイン画面(ボタンのある方)に戻りたいのですが、どうしたらいいのかわかりません。
GLRenderer から setContentView(R.layout.activity_run) を呼び出してみましたが、明らかにうまくいきません。次に、関数 Run.endRendering() を作成しようとしました。これは静的メソッドであり、GLRenderer 内から呼び出されました。Run.endRendering() は、ビューをメイン画面に戻すことを期待して setContentView(R.layout.activity_run) を呼び出すことになっていましたが、R.endRendering() は静的メソッドであるため、 setContentView() の非静的メソッド。
だから今、私は完全に迷っています。誰かがこの主題に光を当てることができますか?
これらは私が持っているスケルトンです。
主な活動:
public class Run extends Activity
{
private GLSurfaceView glSurface;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_run);
// in here I mess with the main layout view the user
// is supposed to see. when he/she clicks on a button
// he/she will be transferred to the opengl view
// on button click:
glSurface = new GLSurfaceView(this);
glSurface.setRenderer(new GLRenderer());
setContentView(glSurface);
}
}
そしてレンダラー:
public class GLRenderer implements Renderer
{
// onSurfaceCreated, onDrawFrame, onSurfaceChanged, etc.
// the action happens here. From here I want to return to
// the main activity that created this renderer.
}