Italian Individuare tipo di view da codice.

luciano deri

Active Member
Licensed User
Longtime User
Salve a tutti vorrei fare un ciclo per impostare alcune proprietà su tutte le floatlabelededittext
For i = 0 To Activity.NumberOfViews - 1
Dim v As View
v = Activity.GetView(i)
if v = floatlabelededittext then
......
end if
Next

Come faccio a capire quali sono le view del tipo richiesto?
(non ditemi che devo affidarmi ai tag)
 
Last edited:

luciano deri

Active Member
Licensed User
Longtime User
LucaMs, se non ci fosse andrebbe inventato. Detto ciò chiedo:
Perchè questi benedetti floatlabelededittext non ricevono la proprietà enabled (così come una sacco di altre proprietà) ma occorre fare
floatlabelededittext.edittext.enabled?
Perchè io alla fine volevo solo fare, e ciò funziona per tutte view tranne che per le floatlabelededittext
B4X:
For i = 0 To Activity.NumberOfViews - 1
Dim v As View
v = Activity.GetView(i)
v.enabled = false

Next
Lo chiederei direttamente a sua maestà ma rischierei di essere scurrile.
Grazie ancora.
 
Last edited:

LucaMs

Expert
Licensed User
Longtime User
LucaMs, se non ci fosse
... sarebbe più "felice" (o meglio, non sarebbe, quindi non avrebbe i mille problemi che ha).

Grazie, comunque.

A dire la verità non conosco quella view; ho provato al volo solo per darti una zampa ed ho già dimenticato se sia una libreria o una classe.
Se è una libreria, c'è poco, anzi niente, da fare; se ti consente:

floatlabelededittext.edittext.enabled

evidentemente "espone" la EditText che usa come base.

Se fosse una classe, si potrebbe intevenire direttamente.

Al limite, cosa scocciante ma non complicata, se è una libreria, si può "wrappare", nel senso che si crea una nuova libreria B4A, che esponga tutti i metodi e le proprietà di floatlabelededittext ma aggiungendogli proprietà "dirette" come Enabled.
 

LucaMs

Expert
Licensed User
Longtime User
A dire la verità non conosco quella view; ho provato al volo solo per darti una zampa ed ho già dimenticato se sia una libreria o una classe.

Peggio che mai:
Technically FloatLabeledEditText wraps an EditText. You can get this EditText with the EditText property.
This is useful if you want to configure the internal EditText.

This library is part of the ViewsEx library (v1.10+).

Non è una libreria, è solo UNA PARTE di una libreria.

Come spiega Erel e come dicevo, espone la EditText che è la base di FloatLabeledEditText, quindi puoi accedere a tutte le proprietà di questa ma tramite quel metodo che hai usato, non è possibile altrimenti se non modificando la libreria stessa.
 
Top