2014-02-24 13 views
0

내 FragmentList에 탐색 드로어를 추가하려고합니다. 프레임 컨테이너로 맞춤 레이아웃을 설정했는데 모두 좋았지 만 앱 아이콘 근처에 서랍 토글 아이콘이 없습니다. 문제는 조각 내에서 onPostCreate를 재정의하지 않는다는 것입니다. 간단히 말해서, 조각에 포함되어 있지 않기 때문입니다. 하지만 PostCreate에서 toggle.SyncState를 호출해야합니다. 어떻게 문제를 해결할 수 있습니까? 내 토글 구현 아래조각에서 syncState를 호출하십시오.

:

mDrawerToggle = new ActionBarDrawerToggle(getActivity(), mDrawerLayout, R.drawable.ic_drawer, 
      R.string.app_name, // nav drawer open - description for 
      // accessibility 
      R.string.hello_world // nav drawer close - description for 
    // accessibility 
    ) { 
     public void onDrawerClosed(View view) { 
      getActivity().getActionBar().setTitle("Assigned"); 
      // calling onPrepareOptionsMenu() to show action bar icons 
      getActivity().invalidateOptionsMenu(); 
     } 

     public void onDrawerOpened(View drawerView) { 
      getActivity().getActionBar().setTitle("Main"); 
      // calling onPrepareOptionsMenu() to hide action bar icons 
      getActivity().invalidateOptionsMenu(); 
     } 
    }; 
    mDrawerLayout.setDrawerListener(mDrawerToggle); 
    getActivity().getActionBar().setDisplayHomeAsUpEnabled(true); 
    getActivity().getActionBar().setHomeButtonEnabled(true); 
    getActivity().getActionBar().setDisplayShowHomeEnabled(true); 
    getActivity().getActionBar().setDisplayUseLogoEnabled(true); 
    getActivity().getActionBar().setDisplayShowTitleEnabled(true); 
    getActivity().getActionBar().setDisplayShowCustomEnabled(false); 

답변

1

단순히 onActivityCreated 방법을 호출합니다. 이 메서드는 onPostCreate 직전과 onCreate 이후의 작업에서 조각으로 호출됩니다.

onActivityCreated (번들)의 활동이 는 자신은 Activity.onCreate을 완료 한 조각을 알려줍니다().

public class DrawerFragment extends Fragment { 

    private ActionBarDrawerToggle drawerToggle; 
    ... 

    @Override 
    public void onActivityCreated(@Nullable Bundle savedInstanceState) { 
     super.onActivityCreated(savedInstanceState); 
     drawerToggle.syncState(); 
    } 
} 
관련 문제