Autore Topic: PreferencesActivity e PreferencesFragment  (Letto 453 volte)

Offline qualcuno

  • Nuovo arrivato
  • *
  • Post: 24
  • Respect: 0
    • Google+
    • Mostra profilo
    • Ingegnere Informatico Blog
PreferencesActivity e PreferencesFragment
« il: 13 Febbraio 2012, 14:52:04 CET »
0
Ciao a tutti
volevo porvi una domanda al riguardo della gestione delle preferenze...

sto realizzando una applicazione per la versione 2.2 e volevo realizzare una parte di impostazioni per la personalizzazione di alcuni parametri

ho letto un pò la documentazione ma da quello che ho capito PreferenceActivity è stato deprecato per versioni >=3.0

se dovessi utilizzare solo questo funzionerebbe per versioni maggiori?
come posso realizzare una gestione delle impostazioni compatibili per tutte le versioni?

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:PreferencesActivity e PreferencesFragment
« Risposta #1 il: 13 Febbraio 2012, 15:18:37 CET »
0
Puoi usare tranquillamente la PreferenceActivity e funziona in tutte le versioni.

Viceversa l'approccio a Fragment (PreferenceFragment) funziona solo per Android >=3.0 , a meno di non implementarlo con il support package (prima chiamata compatibility library).

La domanda che sorge immediatamente spontanea è: c'è una reale ragione per usare i Fragment?
Una risposta, incompleta e grezza, ma che copre il 95% dei casi è questa: usa PreferenceFragment se l'app che stai realizzando girerà sui tablet con un layout diverso diverso da quello dello smartphone ed in particolare nel layout per tablet il pannello delle preference sarà solamente una parte dell'intero pannello. L'idea di fondo è di avere nel layout smartphone un fragment per activity, mentre in quello per tablet due o più fragment per activity.
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store