2013-07-13 11 views
7

Weekly_Calendar_View Voglio creare una vista calendario settimanale e all'interno di ogni elemento della griglia (ogni giorno) ci possono essere diverse attività.Oltre di questo ho creato la vista del calendario settimanale usando la vista griglia ma voglio aggiungere attività se ce ne sono per data particolare verificando dinamicamente db. Come per l'immagine Qui di seguito è il mio GetView codice() ..Come gonfiare un altro layout all'interno di getView() della scheda gridview in Android?

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    View row = convertView; 
    if (convertView == null) { 
     LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     row = inflater.inflate(R.layout.calendar_week_gridcell, parent, false); 
    } 

    txtRowTitle = (TextView) row.findViewById(R.id.txtDayTitle); 

    LinearLayout root = (LinearLayout) row.findViewById(R.id.linear_root); 

    String dayTitle = list.get(position); 
    txtRowTitle.setText(dayTitle); 
    if (position == currentWeekDay - 1) 
     root.setBackgroundResource(R.drawable.calheader); 
    if (!activityMap.isEmpty() && activityMap.containsKey(activityDateList.get(position))) { 
     TextView item = new TextView(mContext); 
     item.setText(activityMap.get(activityDateList.get(position))); 
     item.setBackgroundColor(Color.GREEN); 
     root.addView(item); 
    } 

    return row; 
} 

}

Qui sto provando ad aggiungere temporaneamente vista testo in modo dinamico ma voglio a gonfiare qui il mio layout activity_item personalizzato e aggiungerlo alla cella della griglia.

+0

che 's il problema? – Blackbelt

+0

Ho provato a collegare gli elementi attività alla visualizzazione elenco per la cella della vista griglia ma non funziona correttamente. Voglio gonfiare qui il mio activity_item personalizzato e la cella di visualizzazione della griglia. Come posso farlo? – Narendra

+0

@blackbelt puoi dirmi come può gonfiare qui il mio layout personalizzato e aggiungerlo alla visualizzazione della griglia per il numero di attività disponibili in quel giorno. – Narendra

risposta

1

Vuoi dire che si desidera aggiungere più righe nella zona che ora viene preso dallo spazio "occupato"? vuoi che occupi tutto lo spazio necessario o dovrebbe essere scorrevole?

comunque, sembra che tu stia nella giusta direzione. hai usato un linearLayout per tenere l'area "occupata", giusto? quindi usa solo un ciclo for e metti i loro dati che desideri mostrare.

ovviamente, poiché la griglia visualizza gli elementi di riciclo, è necessario svuotare il linearLayout ogni volta che si raggiunge il getView, ma dovrebbe comunque funzionare.

se si desidera utilizzare il layoutInflater nel ciclo for, che è anche possibile:

subRow = inflater.inflate(R.layout.sub_row, linearLayout, true); 
+0

In realtà voglio aggiungere che "Occupato" come più elementi per il numero di attività disponibili in quel particolare giorno. Quindi, come gonfiare più volte questo layout attività_item personalizzato e aggiungerlo al layout lineare di root. – Narendra

+0

non sono sicuro di aver capito. non intendi che invece di "occupato", avresti una lista di oggetti all'interno? se è così, questa è la risposta che ho già scritto. devi anche decidere se deve essere scorrevole o meno, e forse il numero massimo di elementi da mostrare. è ora una domanda di design. i dettagli tecnici vengono dopo il design ... –

+0

Proverò la tua soluzione e ti farò sapere ... grazie per il tuo suggerimento. – Narendra

Problemi correlati