Вот пример приложения, которое делает его:
PrashamTrivedi/DrawerLayoutTest
@Override
public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent)
{
if (convertView == null)
{
LayoutInflater layoutInflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = layoutInflater.inflate(R.layout.drawer_group_item,parent,false);
}
((TextView) convertView).setText(groupItem.get(groupPosition));
convertView.setTag(groupItem.get(groupPosition));
return convertView;
}
@Override
public View getChildView(int groupPosition, final int childPosition, boolean isLastChild, View convertView, ViewGroup parent)
{
tempChild = (ArrayList<String>) children.get(groupPosition);
TextView text = null;
if (convertView == null)
{
LayoutInflater layoutInflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = layoutInflater.inflate(R.layout.drawer_submenu_item,parent,false);
}
text = (TextView) convertView;
text.setText(tempChild.get(childPosition));
convertView.setTag(tempChild.get(childPosition));
return convertView;
}
И вы должны создать новые XML-файлы в папке макета (подсказка: создать два, один для просмотра группы и другие для подменю)
После того, как ваша боковая навигация должна выглядеть так:
EDIT: Simple Navigational Drawer Layout in Android
Это ExpandableListView, вы можете добавить ребенка только к родителю 5. – Milan
@Milanix На самом деле мне нужно добавить детей Родитель 5 & Родитель 7, что не представляется возможным? –
Так в чем проблема? Используйте ExplandableListView, как было сказано ранее. – Milan