Italian [risolto] help su CustomCardView Base On CustomListview Module Grazie @Sagenut

Xfood

Expert
Licensed User
Buon Pomeriggio a tutti,
volevo chiedervi se qualcuno utilizza questa classe

in pratica funziona come da esempio allegato nel post originale,
ma se voglio per esempio svuotare la lista e poi ripopolarla con il codice di esempio, mi rimane la lista ( customview ) vuota, dove sbaglio?
qualcuno potrebbe dare un'occhiata e indicarmi la starada, ho anche mandato il messaggio al post originale , ma nessuna risposta
per cancellare utilizzo Listview_CV.Clear
Grazie mille anticipatamente

B4X:
Private Sub Popola_Click
    Listview_CV.Clear
    For I = 0 To 5
        '(the 47%x is cardview width, and the 45%y is the cardview height)
        Listview_CV.Add(CreateListItem(47%x, 45%y), 45%y, I)
        btn.Text = "Button" & I
    Next
End Sub
1719253838731.png

1719253887457.png
 

Sagenut

Expert
Licensed User
Longtime User
Non ho mai usato quella classe.
Dopo alcuni test ho capito che manteneva sempre l'ultima posizione dell'ultimo panel aggiunto.
Ho risolto modificando la Sub Clear della classe in questo modo
B4X:
'Clears all items.
Public Sub Clear
    items.Clear
    panels.Clear
    sv.Panel.Height = 0
    LastPanelTop = 0    'Ho aggiunto questa riga
    For i = sv.Panel.NumberOfViews - 1 To 0 Step -1
        sv.Panel.RemoveViewAt(i)
    Next
End Sub
Però mi pare strano che non sia mai stata segnalata questa cosa.
Nessuno ha mai usato il Clear prima di te? 🤣 🤣 🤣
Quindi prendila come soluzione temporanea, se ti funziona, ma poi meglio capire con l'autore.
 

Sagenut

Expert
Licensed User
Longtime User

Xfood

Expert
Licensed User
Non ho mai usato quella classe.
Dopo alcuni test ho capito che manteneva sempre l'ultima posizione dell'ultimo panel aggiunto.
Ho risolto modificando la Sub Clear della classe in questo modo
B4X:
'Clears all items.
Public Sub Clear
    items.Clear
    panels.Clear
    sv.Panel.Height = 0
    LastPanelTop = 0    'Ho aggiunto questa riga
    For i = sv.Panel.NumberOfViews - 1 To 0 Step -1
        sv.Panel.RemoveViewAt(i)
    Next
End Sub
Però mi pare strano che non sia mai stata segnalata questa cosa.
Nessuno ha mai usato il Clear prima di te? 🤣 🤣 🤣
Quindi prendila come soluzione temporanea, se ti funziona, ma poi meglio capire con l'autore.
funziona alla grande.. woww
 

Xfood

Expert
Licensed User
Non ho mai usato quella classe.
Dopo alcuni test ho capito che manteneva sempre l'ultima posizione dell'ultimo panel aggiunto.
Ho risolto modificando la Sub Clear della classe in questo modo
B4X:
'Clears all items.
Public Sub Clear
    items.Clear
    panels.Clear
    sv.Panel.Height = 0
    LastPanelTop = 0    'Ho aggiunto questa riga
    For i = sv.Panel.NumberOfViews - 1 To 0 Step -1
        sv.Panel.RemoveViewAt(i)
    Next
End Sub
Però mi pare strano che non sia mai stata segnalata questa cosa.
Nessuno ha mai usato il Clear prima di te? 🤣 🤣 🤣
Quindi prendila come soluzione temporanea, se ti funziona, ma poi meglio capire con l'autore.
ciao @Sagenut
forse chiedo troppo, ma se volessi usare 3 colonne invece che 2, supponi che utilizzo questa classe su un tablet in verticale,
mi piacerebbe avre questa lista a 3 colonne, meglio se fosse parametrizabile da 1 colonna a 4 colonne, sai se possibile implemetare questa funzione?
tipo :

B4X:
Listview_CV.colonne=3

For I = 0 To 5

'(the 47%x is cardview width, and the 45%y is the cardview height)

        Listview_CV.Add(CreateListItem(47%x, 45%y), 45%y, I)

        btn.Text = "Button" & I

Next
 

Sagenut

Expert
Licensed User
Longtime User
Si può fare sicuramente tutto, però credo che ci sia diverso lavoro da fare.
 

Xfood

Expert
Licensed User
pensavo ci fosse solo da aggiungere una funzioncina ed un parametro, sarebbe meraviglioso avere una classe del genere
 

Sagenut

Expert
Licensed User
Longtime User
Ti lascio il compito di studiare le differenze di codice. 😜😜
 

Attachments

  • CustomCardView_Example.zip
    15 KB · Views: 11

Xfood

Expert
Licensed User
direi ottimo,
manca solo il fatto che ogni colonna deve sembrare una card a se, questo e quello che hai realizzato

1719485134900.png




questo e come si vusualizzava prima
1719485259142.png

1719485516952.png
 

Sagenut

Expert
Licensed User
Longtime User
Non ho potuto fare molti test.
C'è ancora qualcosa da sistemare
 

Sagenut

Expert
Licensed User
Longtime User
@Xfood potrebbe essere il tuo passatempo per il weekend. 😁 😁 😁
 

Sagenut

Expert
Licensed User
Longtime User
Prova questo.
 

Attachments

  • CustomCardView_Example.zip
    15.1 KB · Views: 13
Top