2014-09-15 4 views
0

현재 안드로이드 슬라이딩 메뉴 라이브러리를 https://github.com/jfeinstein10/SlidingMenu에서 사용하고 있습니다. 새 조각을 다시 만들지 않고 토글하는 방법을 모르겠다.슬라이딩 메뉴 onListItemClick은 새 조각을 다시 만들지 않고 이전 조각으로 이동합니다.

는 내가라는 두 조각, B. 메뉴 목록이 있습니다 항목 A, 항목 B.

을 나는 튜토리얼을 따라의 onListItemClick 내가 가진 :

public void onListItemClick(ListView l, View v, int position, long id){ 
    Fragment newContent = null; 
    switch (position) { 
     case 0: 
     newContent = new FragmentA(); 
     break; 
     case 1: 
     newContent = new FragmentB(); 
     break; 
} 

당신이 볼 수 있듯이 , ItemA/ItemB를 클릭하면 새로운 조각 A/B가 생성됩니다. 어떻게 이것을 피할 수 있습니까? 새 조각을 다시 만들지 않고 어느 조각으로 갈 수 있습니까? 대신, 그것은 오래된 단편들로 향하게 될 것입니다. 미리 감사드립니다. 안드로이드 문서 및 newInstance 메소드의 재정의 기본 동작에 의해 사용

+0

전화 , 그것의 더 나은 u 기사를 통해 가서 당신을 위해 코드를 퍼팅 오히려 나 자신에 의해, 당신은 이것 후에 혼란이 있다면, 내가 다시 도움이 될 의견을 http://developer.android.com/training/implementing-navigation/ temporal.html – Techfist

+0

안녕하세요, 빠른 답변을 보내 주셔서 감사합니다. 나는 전에 그것을 읽었다. 나는 처음에 만든 적절한 파편으로 직접가는 방법을 혼란 스럽다. 즉석에서 앱을 실행하면 두 조각이 만들어졌습니다. 그런 다음 메뉴를 토글하고 "ItemB"를 클릭하십시오. 다시 작성하지 않고 B 부분으로 이동합니다. 또한, "ItemA"를 클릭하면, 이전 조각 A로 이동합니다. 명확하게 설명 할 수 있습니까? 고마워! – Shumin

답변

0

사용 newInstance와 패턴 : 다음

private static MyFragment instance; 

public static MyFragment getInstance(String p1, String p2) { 
    if(instance == null) { 
     MyFragment fragment = new MyFragment(); 
    } 
    Bundle args = new Bundle(); 
    args.putString(ARG_1, p1); 
    args.putString(ARG_2, p2); 
    fragment.setArguments(args); 
    return fragment; 
} 

당신이 조각을 표시해야 할 때마다, 당신이 그것을 위해 가기 backstack을 이해할 필요가 MyFragment.getInstance("","").