Italian classe ContactsUtils

Gianni58

Member
Licensed User
Longtime User
Domanda stupida da un principiante.

Una volta trovato il mio contantto con :
cu.FindContactsByPhone(Main.idcontatto,True,False), mi da un arraylist con : (DisplayName=miocontatto , IsInizialised=true , ID=numeroid)

come estrapolo il DisplayName?

non ci riesco in nessun modo.
 

Gianni M

Well-Known Member
Licensed User
Longtime User
B4X:
Dim allContacts AsList = cu.FindAllContacts(True)
allContacts.SortType("DisplayName", True)
ForEach c As cuContact In allContacts
lstContacts.AddSingleLine2(c.DisplayName, c)
Next
non ho modo di verificare
 

Gianni58

Member
Licensed User
Longtime User
B4X:
Dim allContacts AsList = cu.FindAllContacts(True)
allContacts.SortType("DisplayName", True)
ForEach c As cuContact In allContacts
lstContacts.AddSingleLine2(c.DisplayName, c)
Next
non ho modo di verificare


Grazie per la risposta.
Penso di essermi spiegato male.
Ho gia recuperato il contatto con il numero di telefono che cercavo.
Devo solo prendere il suo DisplayName dalla arraylista .
Razionalmente , usando la classe ContactUtils che dovrebbe avere l' oggetto cuContact contenete il nome del contatto (DisplayName) e il suo id (Id) , dovrei conoscere il nome del contatto che cerco con questo codice:


B4X:
Dim cu As ContactsUtils

Dim listacontatti As List


listacontatti.Initialize
listacontatti=cu.FindContactsByPhone(Main.idcontatto, False, False)
Dim miocontatto As cuContact
miocontatto.Initialize
Main.nomecontatto=miocontatto.DisplayName

ma il risultato è :
main.nomecontatto=nullo


Non riesco a capire dove sbaglio.
 

LucaMs

Expert
Licensed User
Longtime User
Non conosco la libreria, ma tu inizializzi miocontatto ma non lo valorizzi.
Suppongo che il contatto sia l'unico della lista che hai ottenuto con FindContacts...
per cui dovrai scrivere:
miocontatto = listacontatti.Get(0) (anche al posto di miocontatto.Inizialize, perché probabilmente l'oggetto viene inizializzato da FindC...), accertandoti che listacontatti.Size sia maggiore di zero.
 

Gianni58

Member
Licensed User
Longtime User
Non conosco la libreria, ma tu inizializzi miocontatto ma non lo valorizzi.
Suppongo che il contatto sia l'unico della lista che hai ottenuto con FindContacts...
per cui dovrai scrivere:
miocontatto = listacontatti.Get(0) (anche al posto di miocontatto.Inizialize, perché probabilmente l'oggetto viene inizializzato da FindC...), accertandoti che listacontatti.Size sia maggiore di zero.



Grazie!!!!!!!!!!!!!!!! , funziona, e dire che l'ho pensato ma poi non l'ho provato :)))
 
Top