Autore Topic: ListView con righe "allungabili"  (Letto 500 volte)

Offline mikyx

  • Nuovo arrivato
  • *
  • Post: 25
  • Respect: +2
    • Mostra profilo
  • Sistema operativo:
    Linux Ubuntu 13.04
ListView con righe "allungabili"
« il: 06 Febbraio 2014, 17:43:49 CET »
0
Salve a tutti!
Forse non ho cercato bene (non sapevo bene nemmeno che parole usare per la ricerca), in tal caso chiedo scusa.

Comunque, io avrei bisogno di creare una ListView "apribile", nel senso che io ho una ListView in cui ogni riga contiene una testo e un bottone, e vorrei fare in modo che al click sul bottone la riga si "allunghi" e mostri sotto un testo..
Il concetto più o meno è questo:

PRIMA:
-------------------------------------------------
ITEM1                         BUTTON1
-------------------------------------------------
ITEM2                         BUTTON2
-------------------------------------------------
ITEM3                         BUTTON3
-------------------------------------------------

DOPO click (ad esempio) su BUTTON2:
-------------------------------------------------
ITEM1                         BUTTON1
-------------------------------------------------
ITEM2                         BUTTON2

testo nascosto in precedenza
-------------------------------------------------
ITEM3                         BUTTON3
-------------------------------------------------

Spero di essermi spiegato, purtroppo non ho trovato immagini per aiutarmi a spiegare..

Offline mirkus87

  • Utente junior
  • **
  • Post: 56
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Galaxy S2
  • Play Store ID:
    Mirko Vitiello
  • Sistema operativo:
    Windows 7
Re:ListView con righe "allungabili"
« Risposta #1 il: 06 Febbraio 2014, 18:55:56 CET »
0
Potresti provare con l'expandable list view.

Offline mikyx

  • Nuovo arrivato
  • *
  • Post: 25
  • Respect: +2
    • Mostra profilo
  • Sistema operativo:
    Linux Ubuntu 13.04
Re:ListView con righe "allungabili"
« Risposta #2 il: 07 Febbraio 2014, 10:35:12 CET »
0
Alla fine ho scoperto che aggiungendo dinamicamente delle TextView fa quello che voglio io,la riga si ridimensiona automaticamente..

Il codice è questo (all'interno di una classe personalizzata che ho usato come adapter per la mia ListView):
Codice (Java): [Seleziona]
final LinearLayout main = (LinearLayout) row.findViewById(R.id.linearLayout);
LayoutParams lparams = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
final TextView a[] = new TextView[5];
                for (int i = 0; i < 5; i++) {
                        a[i] = new TextView(this.context);
                        a[i].setLayoutParams(lparams);
                        a[i].setText("test" + i);
                        a[i].setId(i);
                }
                Button btt = (Button) row.findViewById(R.id.btt);
                btt.setOnClickListener(new OnClickListener() {

                        @Override
                        public void onClick(View v) {
                                        for (int i = 0; i < a.length; i++) {
                                                main.addView(a[i]);
                                         }
                        }