2013-06-17 7 views
14

I mit 10 Optionen Option # 5 eine Navigationsleiste haben shoudl weitere 7 Optionen (wie ein Untermenü) von einer Art, die erweiterbare/reduzierbare istAndroid: Navigationsleiste SubMenu: Wie Navigationselemente auf zusammenlegbare

Wie Habe ich ein „zusammenklappbaren Navigationselemente“ erstellen, wie es hier beschrieben wird: http://developer.android.com/design/patterns/navigation-drawer.html#Content

+0

Es hat eine ExpandableListView ist, können Sie Kind hinzufügen nur Eltern 5. – Milan

+0

@Milanix Eigentlich muss ich hinzufügen, Kinder Eltern 5 & Elternteil 7, ist das nicht möglich? –

+0

Also, was ist das Problem? Verwenden Sie ExpirableListView wie zuvor erwähnt. – Milan

Antwort

17

hier ist eine Beispielanwendung, die es macht:

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

Und Sie haben die neuen XML-Dateien im Layout-Ordner erstellen (Hinweis: zwei, eine für die Gruppenansicht und andere für das Untermenü)

Nach all Ihrer Seite Navigation muss wie folgt aussehen:

Snapshot of drawer submenu view

EDIT: Simple Navigational Drawer Layout in Android

+0

Aber nachdem ich Ihre Projektlösung in meinen Arbeitsbereich importiert habe, konnte ich den Artikel unter Punkt 4 nicht auswählen. Haben Sie Ideen? –

+0

Nun, wie ich mich erinnere, war das Beispielprojekt nicht vollständig abwärtskompatibel, was bedeutet, dass es min-sdk Version 11 hat. Wenn Sie die App in älteren Geräten verwendet haben, die vor Honeycomb API waren, könnte dies die Ursache sein. Wenn nicht, beachten Sie bitte den Rat, den ich Ihnen gesagt habe: "_ Sie müssen die neuen XML-Dateien im Layout-Ordner erstellen (Hinweis: Erstellen Sie zwei, einen für die Gruppenansicht und andere für das Untermenü)". – CagCak

+0

Link ist kaputt! – transistor

Verwandte Themen