Autore Topic: ListPreference  (Letto 1103 volte)

Offline androider

  • Translate Team
  • Utente normale
  • ***
  • Post: 261
  • In campo come nella vita.
  • Respect: +1
    • andreadannibale
    • andreadevil
    • Mostra profilo
    • AnAndroider
  • Dispositivo Android:
    Nexus One
  • Play Store ID:
    AnAnApps
  • Sistema operativo:
    Mac Os X Snow Leopard
ListPreference
« il: 09 Novembre 2010, 14:25:18 CET »
0
Non capisco come posso fare a richiamare una listPreference nella mia activity tramite key o id

Devo richiamare il metodo list.getEntry() e non so come fare se non riesco a richiamarla..
Se i cosiddetti "migliori" di noi avessero il coraggio di
sottovalutarsi almeno un po' vivremmo in un mondo infinitamente migliore.

In ogni cAso nessun rimorso.

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:ListPreference
« Risposta #1 il: 09 Novembre 2010, 14:53:34 CET »
0

Offline androider

  • Translate Team
  • Utente normale
  • ***
  • Post: 261
  • In campo come nella vita.
  • Respect: +1
    • andreadannibale
    • andreadevil
    • Mostra profilo
    • AnAndroider
  • Dispositivo Android:
    Nexus One
  • Play Store ID:
    AnAnApps
  • Sistema operativo:
    Mac Os X Snow Leopard
Re:ListPreference
« Risposta #2 il: 09 Novembre 2010, 14:56:51 CET »
0
L'ho letto, ma se creo una listpreference facendo
Codice (Java): [Seleziona]
ListPreference l=new ListPreference(this);come faccio poi ad assegnarla al listpreference che ho nell'xml delle screen preferences?
Se i cosiddetti "migliori" di noi avessero il coraggio di
sottovalutarsi almeno un po' vivremmo in un mondo infinitamente migliore.

In ogni cAso nessun rimorso.

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:ListPreference
« Risposta #3 il: 09 Novembre 2010, 15:02:50 CET »
0

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:ListPreference
« Risposta #4 il: 09 Novembre 2010, 15:03:22 CET »
0
Prendi una sharedPreferences che abbia come key quella che tu hai assegnato a listPreference nell'XML.
Una limitazione è che avrai a che fare unicamente con stringhe, benché tu abbia potuto mettere anche numeri e/o booleani.
7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/

Offline androider

  • Translate Team
  • Utente normale
  • ***
  • Post: 261
  • In campo come nella vita.
  • Respect: +1
    • andreadannibale
    • andreadevil
    • Mostra profilo
    • AnAndroider
  • Dispositivo Android:
    Nexus One
  • Play Store ID:
    AnAnApps
  • Sistema operativo:
    Mac Os X Snow Leopard
Re:ListPreference
« Risposta #5 il: 09 Novembre 2010, 16:20:26 CET »
0
Prendi una sharedPreferences che abbia come key quella che tu hai assegnato a listPreference nell'XML.

Mi sembra la soluzione più adatta. Anche perchè se definisco la mia listPreference tramite codice poi dovrei creare un altro screen preference e quest'ultima quindi non sarebbe nella stessa schermata delle altre impostazioni..

Però scusate l'ignoranza, non capisco come faccio ad assegnare la shared preferences alla list preference dell'xml tramite la key.. :-(
Se i cosiddetti "migliori" di noi avessero il coraggio di
sottovalutarsi almeno un po' vivremmo in un mondo infinitamente migliore.

In ogni cAso nessun rimorso.

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:ListPreference
« Risposta #6 il: 09 Novembre 2010, 16:24:09 CET »
0
Scusate l'obiezione... ma perché usare una sharedPreferences se si ha già tutto definito???

Hai il tuo xml con definita la ListPreference? Per me hai finito, non hai bisogno di gestire manualmente la preference tramite una sharedPreferences tua! Altrimenti perde di significato usare una PreferenceActivity, hai soltanto perso tempo!

Offline androider

  • Translate Team
  • Utente normale
  • ***
  • Post: 261
  • In campo come nella vita.
  • Respect: +1
    • andreadannibale
    • andreadevil
    • Mostra profilo
    • AnAndroider
  • Dispositivo Android:
    Nexus One
  • Play Store ID:
    AnAnApps
  • Sistema operativo:
    Mac Os X Snow Leopard
Re:ListPreference
« Risposta #7 il: 09 Novembre 2010, 16:29:54 CET »
0
Il motivo è che ho la necessità di leggere il valore (entry) della list per memorizzarlo in un database. Sembra una contraddizione, ma il valore della list può essere anche modificato successivamente e quindi a me interessa prelevare valori dal db tramite questa preference;

tipo Select valori where preference blabla
 
e Select valore where preference "sarà cambiata"

Il mio problema è solo implementare il metodo getEntry, ma se ho la list definita solo su xml non ci riesco...
Se i cosiddetti "migliori" di noi avessero il coraggio di
sottovalutarsi almeno un po' vivremmo in un mondo infinitamente migliore.

In ogni cAso nessun rimorso.

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:ListPreference
« Risposta #8 il: 09 Novembre 2010, 16:33:14 CET »
0
Codice (Java): [Seleziona]
SharedPreferences defaultPreferences = PreferenceManager.getDefaultSharedPreferences(this);
String entryValue = defaultPreferences.getString("keyDellaTuaListPreference", "default");

Offline androider

  • Translate Team
  • Utente normale
  • ***
  • Post: 261
  • In campo come nella vita.
  • Respect: +1
    • andreadannibale
    • andreadevil
    • Mostra profilo
    • AnAndroider
  • Dispositivo Android:
    Nexus One
  • Play Store ID:
    AnAnApps
  • Sistema operativo:
    Mac Os X Snow Leopard
Re:ListPreference
« Risposta #9 il: 09 Novembre 2010, 16:51:20 CET »
0
In realtà prima di aprire questo topic avevo fatto proprio in quel modo, solo che mi dava errore e credevo che non fosse il modo giusto, invece l'errore era relativo al db..mi scuso con tutti..piano piano imparerò :'(
Se i cosiddetti "migliori" di noi avessero il coraggio di
sottovalutarsi almeno un po' vivremmo in un mondo infinitamente migliore.

In ogni cAso nessun rimorso.

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:ListPreference
« Risposta #10 il: 09 Novembre 2010, 17:13:15 CET »
0
piano piano imparerò :'(

androider, posso farti una domanda?

Quanto tempo passa dal momento in cui trovi il problema al tuo post sul forum?
E' molto importante, per non dire fondamentale, per imparare ad utilizzare bene una qualsiasi cosa (dal montaggio di un tavolo ikea alla progettazione di un razzo per la nasa) sbatterci a lungo la testa da soli. Solo in questo modo capisci, per prima tu, quale è il problema e come mai non riesci a risolverlo.

E non ti parlo di *cercare* su google prima di postare o di vedere se qualcuno ha mai postato su questo forum un problema simile al tuo... ti parlo di perdere del tempo nel *capire* il problema. La differenza tra un bravo programmatore ed uno meno bravo, non sta nello risolvere un problema, ma nel capirlo... altrimenti si è soltanto degli smanettoni!

Ho notato che ultimamente stai anche provando ad aiutare altre persone, postando anche link di riferimento... questo è molto nobile da parte tua e si vede che sei cresciuto tecnicamente dal tuo primo post. Ma adesso fai uno sforzo maggiore che ti porta a diventare un bravo programmatore. Quando hai un problema sbattici la testa più che puoi e prova a *capire* il problema! Non guardare il framework android come una scatola nera chiusa... ormai dovresti iniziare a capirla!

Alla prossima!  ;-)

Offline androider

  • Translate Team
  • Utente normale
  • ***
  • Post: 261
  • In campo come nella vita.
  • Respect: +1
    • andreadannibale
    • andreadevil
    • Mostra profilo
    • AnAndroider
  • Dispositivo Android:
    Nexus One
  • Play Store ID:
    AnAnApps
  • Sistema operativo:
    Mac Os X Snow Leopard
Re:ListPreference
« Risposta #11 il: 09 Novembre 2010, 17:27:50 CET »
0
Ti assicuro che ci provo da solo prima di postare sul forum, e provo anche a cercare su google..però ammetto anche che la possibilità di essere aiutato da altre persone competenti non mi ci fa pensare due volte ad aprire un topic..
Se i cosiddetti "migliori" di noi avessero il coraggio di
sottovalutarsi almeno un po' vivremmo in un mondo infinitamente migliore.

In ogni cAso nessun rimorso.