2015-10-22 7 views
0

Я новичок в мире Android. Я создал свой первый проект для тестирования, я использую AndroidStudio, и пока я создавал проект, я решил выбрать и использовать «Активность навигационного ящика». По умолчанию Android Studio создает RelativeLayout под названием content_main, поэтому при запуске проекта он отображается как первый вид. Это как приложение выглядит сейчас: enter image description hereОткрыть новый вид с NavigationView (android)

и это NavigationView enter image description here

Это как мой проект выглядит следующим образом:

enter image description here

И это метод переключение с одного вида на другое:

public boolean onNavigationItemSelected(MenuItem item) { 

    drawer.closeDrawers(); 

    switch (item.getItemId()){ 
     case R.id.nav_main: 
      setContentView(R.layout.content_main); 
      return true; 
     case R.id.nav_stickers: 
      setContentView(R.layout.content_stickers); 
      return true; 
     default: 
      Toast.makeText(getApplicationContext(),"Something went wrong",Toast.LENGTH_SHORT).show(); 
      return true; 
    } 

} 

Я бы хотел, чтобы пользователь нажал кнопку MainView в NavigationView, появится MainView (content_main), и если пользователь нажмет на StickersView, появится StickerView. Я действительно не знаю, как это сделать, я искал в сети, но ничего не помогло мне, я надеюсь, что кто-то поможет мне и позволит мне понять эту легкую вещь.

ответ

0

В вашем коммутаторе вы можете использовать FragmentManager для изменения видов. Для каждого представления у вас должен быть фрагмент.

getSupportFragmentManager().beginTransaction() 
.add(R.id.fragment_container, newFragment).commit(); 
+0

Так что я должен создать «класс», который расширяет «Фрагмент» для StickersView? – puti26

+0

Да. Для каждого представления вы должны создать фрагмент. –

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