Я совсем недавно начал разработку своего первого приложения для Android.
В настоящее время я просто работаю над принципами навигации, которые хотел бы реализовать, и изо всех сил стараюсь, чтобы один из них осуществился.
В настоящее время в NavDrawer у меня есть ExpandableListView, который будет создавать фрагмент разных типов на основе класса, который я создал для создания меню:
MenuModel
public class MenuModel {
public String menuName, defContent, ContentType;
public boolean hasChildren, isGroup, isContent;
public MenuModel(String menuName, boolean isGroup, boolean hasChildren, String defContent, boolean isContent, String ContentType) {
this.menuName = menuName;
this.defContent = defContent;
this.isGroup = isGroup;
this.hasChildren = hasChildren;
this.isContent = isContent;
this.ContentType = ContentType;
}
OnChildClick моего ExpandableListView
public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) {
Fragment fragment = null;
Class fragmentClass = null;
if (childList.get(headerList.get(groupPosition)) != null) {
MenuModel model = childList.get(headerList.get(groupPosition)).get(childPosition);
if (model.isContent) {
switch(model.ContentType) {
case "Youtube": {
fragment = YouTubeFragment.newInstance(model.defContent);
break;
}
case "Web": {
fragment = WebFragment.newInstance(model.defContent);
break;
}
}
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().replace(R.id.flContent, fragment).commit();
onBackPressed();
}
}
Со временем будет еще много типов контента.
Мне также удалось создать отдельный ViewPager, который в любом случае не связан ни с моим ExpandableListView, ни с моей MenuModel.
Я хотел бы, чтобы мой OnChildClick создал ViewPager с фрагментами для всех дочерних элементов родительского элемента выбранного дочернего элемента, а также применил логику из моей MenuModel к каждому фрагменту в ViewPager.
Также следует открыть ViewPager в правильной позиции на основе дочерней позиции в расширяемом списке просмотра. Я почти уверен, что смогу разобраться с этой частью, поскольку я немного об этом узнал, пока гуглял.
Но я не знаю, с чего начать, я попробовал поискать в Google, но все, что я могу найти, - это отдельные учебники по ViewPager и ExpandableListView - я не могу найти что-нибудь о связывании этих двух.
Может ли кто-нибудь предоставить и пример или указать мне в направлении учебника?
Извините, если я не использую правильные термины в этом пункте, я только начал учиться вчера.
Спасибо,
Райан.