private void setupNavigationDrawer() {
// NavigationDrawer의 그림자로 설정할 Drawable을 지정
mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow,
GravityCompat.START);
mDrawerList.setOnItemClickListener(this);
// 드로워를 개폐 시에 이벤트를 받을 수 있게 함
mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, R.string.drawer_open,
R.string.drawer_close) {
@Override
public void onDrawerClosed(View view) {
}
@Override
public void onDrawerOpened(View drawerView) {
}
};
mDrawerLayout.setDrawerListener(mDrawerToggle);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// DrawerToggle측의 옵션 메뉴 선택을 처리할 수 있도록
if (mDrawerToggle.onOptionsItemSelected(item)) {
return true;
}
return super.onOptionsItemSelected(item);
}
@Override
protected void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
// DrawerToggle측의 옵션 메뉴를 제어할 수 있도록
mDrawerToggle.syncState();
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
// DrawerToggle측에서 위/아래 변경을 제어할 수 있도록
mDrawerToggle.onConfigurationChanged(newConfig);
}
@Override
public void onItemClick(AdapterView<?> adapterView, View parent,
int position, long id) {
selectItem(position);
}
private void selectItem(int position) {
ListAdapter adapter = mDrawerList.getAdapter();
String item = (String) adapter.getItem(position);
mTextView.setText("선택한 항목: " + item);
mDrawerLayout.closeDrawer(mDrawerList);
}