2013-06-17 27 views
14

Ho un cassetto di navigazione con 10 opzioni Opzione # 5 shoudl avere un altro 7 opzioni (come un menu secondario) di qualche tipo che è espandibile/pieghevoliAndroid: Navigazione cassetto SubMenu: come pieghevoli elementi di navigazione

Come faccio a creare un "elementi di navigazione pieghevoli", come viene descritto qui: http://developer.android.com/design/patterns/navigation-drawer.html#Content

+0

E 'un ExpandableListView, è possibile aggiungere bambino solo genitore 5. – Milan

+0

@Milanix In realtà ho bisogno di aggiungere i bambini a Parent 5 & Parent 7, è che non è possibile? –

+0

Quindi qual è il problema? Utilizzare ExplandableListView come detto in precedenza. – Milan

risposta

17

qui è un'applicazione di esempio che lo rende:

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

E è necessario creare i nuovi file xml nella cartella di layout (suggerimento: creare due, uno per la vista del gruppo e l'altro per il sottomenu)

Dopotutto la navigazione laterale deve essere simile a quanto segue:

Snapshot of drawer submenu view

EDIT: Simple Navigational Drawer Layout in Android

+0

Ma dopo aver importato la soluzione del progetto nel mio spazio di lavoro, non sono stato in grado di selezionare l'articolo in Articolo 4. Hai qualche idea? –

+0

Bene, come ricordo, il progetto di esempio non era completamente compatibile con le versioni precedenti e significa che ha la versione 11 di min-sdk. Se hai usato l'app in dispositivi precedenti che hanno prima API Honeycomb, potrebbe essere la causa. In caso contrario, si consideri il consiglio che ho detto: "Devi creare i nuovi file xml nella cartella di layout (suggerimento: crea due, uno per la vista di gruppo e altro per il sottomenu) _". – CagCak

+0

Il collegamento è interrotto! – transistor

Problemi correlati