2016-09-28 6 views
0

を凍結させ:Androidの切り替えは、私はまだAndroidの中でプログラムする方法を学んでいると私はスタートビューでのアクティビティを作成したアプリは

public void switchToGLView(View view) { 
    setContentView(mGLView); 
} 

しかし、私は、GLの事で終わりだ後、私は私の主な活動に

public void restoreRenderer() { 
    // Restoring the previous view (my_view) with the non-GL renderer 
    setContentView(mMainView); <<<<<< FREEZES HERE (blackscreen) 
} 
GLRendererコール復元機能を持っています

残念ながらこれは決して作品:画面は、前のGLレンダラから黒いままとsetContentViewラインをデバッグすることで、私がいることを発見した:私はAndroidのモニターにANYエラーや警告ログを取得しない

  • 実行NEVERが続きます。永遠にそこに詰め込まれる

これを解決するためのヒントやヒントはありますか?

答えて

0

フレームまたは相対レイアウトを使用してこの問題を解決できます。 正しく理解していれば、mMainViewとmGLViewの両方がフルスクリーンです。 いくつかのオプションがあります:

あなたはビューの表示を変更できますがない限り

public void switchViews(View view){ 
    view.bringToFront(); 
    view.invalidate(); 
} 

public void switchViews() { 
    if(mMainView.getVisibility() == View.VISIBLE){ 
    mMainView.setVisibility(View.GONE); 
    mGLView.setVisibility(View.VISIBLE); 
    } else{ 
    mMainView.setVisibility(View.VISIBLE); 
    mGLView.setVisibility(View.GONE); 
    } 
} 

は、他のオプションはビューのZの順序を変更することです上記の方法を使用して遭遇した欠点。

関連する問題