2009-07-29 10 views
7

Sono sicuro che ogni programmatore del cacao ha dovuto affrontare questo: so che Apple vorrebbe che ogni applicazione inserisse le proprie impostazioni nell'app Impostazioni. Ma è piuttosto limitante in ciò che offre, in termini di personalizzazione. Inoltre, è meglio posizionare alcune impostazioni all'interno dell'app, poiché cambiano frequentemente.
In questi casi, lo sviluppatore deve implementare la gestione delle impostazioni all'interno della propria applicazione. Il fatto è che è piuttosto eccessivo reimplementare tutte le cose di base che potrebbero essere facilmente gestite nell'app Impostazioni con un semplice plist. C'è qualche tipo di framework/libreria che è già stato creato per semplificare le cose, che forse potrebbe prendere come input un plist simile?
In generale, come si implementa nelle impostazioni delle app? Esegui l'override di UITableViewControllers ogni volta?Come semplificare la gestione delle impostazioni dell'applicazione?

risposta

4

Hai visto mySettings? Utilizza quasi lo stesso file plist che puoi utilizzare nell'app Impostazioni ma lo visualizza all'interno dell'app.

Per inciso, Apple consiglia di includere impostazioni modificate frequentemente all'interno dell'applicazione. Altre cose dovrebbero essere nell'app Impostazioni.

+0

Era esattamente quello che stavo cercando. Grazie! –

0

Se si stanno scrivendo applicazioni basate su dati, è possibile mantenere le impostazioni nel database e disporre di una singola coppia Visualizza/Controller che interroga il DB per tutte le impostazioni che possono essere modificate (ogni impostazione potrebbe essere tipo/nome/valore o qualsiasi altra struttura che potresti inventare).

Se l'accesso ai dati utilizza un singleton, l'accesso alle impostazioni da qualsiasi punto dell'app è semplice.

Tra diverse applicazioni, la vista/il controller utilizzato come visualizzazione delle impostazioni e il codice del database stesso non cambiano, solo il set/get viene eseguito nelle diverse parti dell'applicazione (nonché i dati di avvio nel DB).

Naturalmente, se non si andavano a toccare CoreData in caso contrario, si tratta di un sacco di spese generali per le impostazioni ...

0

Il modo in cui siamo andati a questo proposito è stato quello di creare una libreria che emula il App le impostazioni nel modo più preciso possibile, accessibile dall'interno dell'app. Utilizza i valori predefiniti dell'utente del file Settings.plist nello stesso modo in cui funziona l'app Impostazioni.

Una volta implementato, è possibile aggiungere i propri tipi di dati come si vede la necessità.

+0

Ok, quindi immagino che non ci sia nulla che sia pubblicamente disponibile in tutto il web? –

+0

Ho guardato, ma non per troppo tempo, quando ho intenzione di andare sul mio approccio. Sembrava molto semplice da implementare, e si scopre che non era poi così male. Se sai come usare AccessoryViews e le tabelle a tuo vantaggio, non devi nemmeno creare sottoclassi UITableViewCell. –

Problemi correlati