2014-12-23 4 views
-1

Обычно в навигационном ящике, когда мы нажимаем значок в верхнем левом углу, откроется ящик навигации, как показано на экране1.Как частично отображать навигационный ящик

Мне нужно отобразить навигационный ящик частично, как показано на следующем экране 2, в то время как экран (Activity) запускается изначально, не запуская никаких событий.

Может ли кто-нибудь мне помочь.

Благодаря Ravi

 Screen 1 This is the normal functionality when we click on the Navigation button on the top left corner of the screen

Screen 2 I need to display Navigation drawer like this initially

+0

Вы имеете в виду изменить ширину панели навигации? Или что вы имеете в виду, не стреляя в какое-либо «Событие»? – Mike

+0

@Mike Мне нужно показать ящик навигации частично, когда я запускаю экран. – ravi

+0

Просто измените ширину после создания объекта NavigationDrawer в 'onCreate' и установите состояние' open'! – Mike

ответ

0

установить ширину ListView динамически ...

mDrawerLayout = (DrawerLayout) view.findViewById(R.id.drawer_layout); 
mDrawerList = (ListView) view.findViewById(R.id.top_sectionlist); 

int width = getResources().getDisplayMetrics().widthPixels/2; 
DrawerLayout.LayoutParams params = (android.support.v4.widget.DrawerLayout.LayoutParams) mDrawerList.getLayoutParams(); 
params.width = width; 
mDrawerList.setLayoutParams(params); 
+0

Спасибо Ankit за ваш ответ. Я пробовал свой код, но я не могу сделать частично видимым блок навигации. – ravi

+0

Вы пробовали его с помощью DrawerListener в методе onDrawerSlide? –

+0

Эй, еще один вариант - вы можете дать андроид: layout_marginLeft = "200dp" на ваш левый макет. –

Смежные вопросы