2014-11-01 4 views
0

안드로이드의 액션 바에있는 탭과 함께 조각을 사용했습니다.안드로이드에서 기존 레이아웃을 프로그래밍 방식으로 변경하십시오.

mFragmentView = inflater.inflate(R.layout.second_activity, container, false); 
return mFragmentView; 

내 질문은 : 내가 onCreateView에 조각에 대한 레이아웃을 설정 곳 우는 소리는 내가 프로그래밍 다른 (R.layout.sample_layout) 기존의 레이아웃 (R.layout.second_activity)를 변경할 수 있습니까?

답변

0
getFragmentManager().beginTransaction() 
      .detach(this) 
      .attach(this) 
      .commit(); 

이렇게하면 조각이 강제로 onCreateView를 다시 호출합니다. 여기서 평소 레이아웃 대신 R.layout.sampleLayout을 반환 할 수 있습니다. 이 함수가 호출 될 때 올바른 레이아웃을 선택하기 위해 조각 트랜잭션을 호출하기 전에 조각에 변수를 설정하십시오.

두 번째 해결책은 viewGroup에 초기 레이아웃을 래핑 한 다음 getView.removeAllViews()를 호출하고 새 레이아웃을 확장 한 다음 루트보기에 추가하는 것입니다.

관련 문제