2016-10-30 15 views
0

私はすでに、ユーザーが別のアプリケーションにスワップするたびに(またはパスワードが作成されたと仮定して)呼び出されるときに呼び出される必要があるアプリケーション用のパスワードフラグメントを開発しました。 この機能を使っていくつかのアプリを勉強したところ、そのうちのいくつかは、画面のロックを遅くすることがあることに気付きました。そしてそれらのうちのいくつかは非常に高速であり、素早く正確にフラグメントを配信します。正しくは、前のフラグメントがロックフラグメントの前に表示されていないことを意味します。アプリで画面のフラグメントコールをロックする

アプリ全体でロック画面のフラグメントを呼び出すにはどうすればよいですか?コールバックの中にありますか?この種の制御、以前の断片や活動をしなければならないのは誰ですか?

答えて

0

アクティビティコールバックについての調査の結果、私はこのように解決しました: プライベートブール変数loginNowをアクティビティに作成し、falseを代入します。 onStopが呼び出されると、trueを割り当てます。

@Override 
public void onRestart(){ 
    super.onRestart(); 
    loginNow = true; 
} 

@Override 
public void onStop(){ 
    super.onStop(); 
    loginNow = true; 
} 

をそしてONSTARTが呼び出されたときに、私はこのブール値を確認し、自分のログイン断片と古いフラグメントを置き換えます:

@Override 
public void onStart() { 
    if(loginNow){ 
     getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, fragment) 
       .addToBackStack(null).commit(); 
    } 
... 
} 
私はonRestartに同じことをやった保証するために、
関連する問題