web-dev-qa-db-fra.com

Android: sous-menu du tiroir de navigation: comment réduire les éléments de navigation

J'ai un tiroir de navigation avec 10 options L'option # 5 devrait avoir 7 autres options (comme un sous-menu) d'une sorte extensible/pliable

Comment puis-je créer un "éléments de navigation pliables" comme il est décrit ici ?

19
Eric Bergman

Voici un exemple d'application qui le fait:

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;
}

Et vous devez créer les nouveaux fichiers xml dans le dossier de mise en page ( hint: créez-en deux, un pour la vue de groupe et l'autre pour le sous-menu)

Après tout, votre navigation latérale doit ressembler à celle ci-dessous:

enter image description here

EDIT: Disposition simple du tiroir de navigation dans Android

16
cagcak