2013-05-06 1 views
0

상대 레이아웃에서 조각을 추가 및 제거하려고합니다. 상대 레이아웃 (조각 컨테이너)이 비어있는 경우 조각을 바꾸지 않을 경우 조각을 추가합니다.상대 레이아웃을 찾는 방법 조각 또는 포함하지 않음

레이아웃이 비어 있는지 여부를 확인하여 조각이 이미 추가되었다는 오류가 표시되지 않도록하는 방법.

+2

myFragment.isInlayout() –

답변

2

이이 해답이 될 것입니다 경우

YourFragment dFrag = (YourFragment) getSupportFragmentManager() 
      .findFragmentById(R.id.detailfragment); 

if (dFrag != null && dFrag.isInLayout()) { 
    // do something 
} else { 
    // do something 
} 
1

확실하지 않음이 코드를 시도,하지만 난 당신이 이런 식으로하여 FragmentTransaction을 사용하는 것이 좋습니다 것 :

FragmentManager fm = getFragmentManager(); 
FragmentTransaction ft = fm.beginTransaction(); 

if(yourOldFragment.isAdded()) { 
    ft.replace(R.id.your_container, yourNewFragment); 
    ft.commit(); 
} 

당신은이 링크를보고 할 수 있습니다 : Fragment duplication on Fragment Transaction

관련 문제