2016-08-17 49 views
-1

問題私は、webserviceが他のフラグメントからpopbackstackを呼び出すときにonCreateViewを2回呼び出すようになっています。最高の方法は、単一の活動で3つの断片のpopBackStackに?

+0

問題がありますか? – ziLk

+1

はいリストフラグメントがあり、ポップバックスタックのときにリストビューアイテムに問題があります –

+0

これは設定のためです。私の答えはあなたの主な問題を解決するはずです。 – ziLk

答えて

1

ビルドする前にthis documentationをチェックすることを全面的にお勧めします。

あなたのフラグメントと通信できたら次に、この簡単な方法を使用することができます。

private void changeFragment(Fragment frag, boolean saveInBackstack) { 
    String backStateName = ((Object) frag).getClass().getName(); 

    try { 
     FragmentManager manager = getSupportFragmentManager(); 

     if (manager.findFragmentByTag(backStateName) == null) { 
      //fragment not in back stack, create it. 
      FragmentTransaction transaction = manager.beginTransaction(); 
      transaction.replace(R.id.container, frag, backStateName); 

      if (saveInBackstack) { 
       Log.d(TAG, "Change Fragment: addToBackTack " + backStateName); 
       transaction.addToBackStack(backStateName); 
      } else { 
       Log.d(TAG, "Change Fragment: NO addToBackTack"); 
      } 

      transaction.commit(); 
     } else { 
      manager.popBackStack(); 
     } 
    } catch (IllegalStateException exception) { 
     Log.w(TAG, "Unable to commit fragment, could be activity as been killed in 
    } 
} 
関連する問題