2 개의 조각이 포함 된 응용 프로그램을 개발 중이며 필요에 따라 숨기기를 표시하고 싶습니다. 다음 코드에는 내 문제에 대한 간단한 예가 있습니다. 이 간단한 Fragmentactivity에는 버튼 1 개와 listfragment 1 개가 있습니다.
이 간단한 예제는 완벽하게 작동합니다. 그러나 나는 show hide 조각에 만족하지 않습니다. layout.setVisibility (View.GONE); 코드에서 ft.hide (f); 조각을 숨기지 않습니다. 사실 우리는 조각을 숨기지 않고 컨테이너를 숨기고 있습니다.
내 질문은, 이것이 조각 숨기기를 표시하는 방법입니까? 그렇지 않다면 많은 사람들이이 문제에 직면하고 있기 때문에 프래그먼트를 숨기고 표시하는 방법을 테스트 한 예제로 설명하십시오.
public class MainActivity extends FragmentActivity implements OnClickListener {
Fragment1 f;
Button b;
LinearLayout layout;
Fragment myf;
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b = (Button) findViewById(R.id.button1);
layout = (LinearLayout) findViewById(R.id.ll);
f = new Fragment1();
}
@Override
public void onClick(View v) {
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.setCustomAnimations(android.R.animator.fade_in, android.R.animator.fade_out);
if (f.isHidden()) {
ft.show(f);
layout.setVisibility(View.VISIBLE);
b.setText("Hide");
} else {
ft.hide(f);
b.setText("Show");
layout.setVisibility(View.GONE);
}
ft.commit();
// TODO Auto-generated method stub
}