Il calendario dei miei utenti è il calendario persiano. Ho un algoritmo per cambiare data e ora tra il calendario occidentale e quello persiano. Voglio utilizzare CalendarView o DatePicker per i miei utenti per la selezione delle date. È possibile localizzare CalendarView e DatePicker per supportare il mio calendario locale?È possibile localizzare CalendarView o DatePicker?
risposta
CalendarView
utilizza le impostazioni internazionali correnti per determinare la modalità di visualizzazione delle date. Implementa anche onConfigurationChanged
per ascoltare le modifiche alle impostazioni internazionali correnti e aggiornare il calendario. Ma non sembra supportare lo scenario in cui si desidera specificare una diversa localizzazione da utilizzare (ad esempio, la locale corrente degli utenti è persiana e si desidera mostrare la vista del calendario con le impostazioni internazionali di Western).
Sfortunatamente il metodo setCurrentLocale è privato, quindi anche se si sottoclasse CalendarView non sarà possibile modificare le impostazioni locali utilizzate.
È possibile vedere Source code per CalendarView.
Sì, è possibile. Ma non si dovrebbe usare la vista del calendario di default. Dovresti utilizzare la visualizzazione personalizzata con le API del calendario di Google. se si utilizza il calendario predefinito Visualizza, i numeri non cambiano e anche i conntents non cambiano. Per modificare i contenuti, è necessario utilizzare le API di translate.google.com per modificare la localizzazione del contenuto.
guarda le fonti! Non dovrebbe essere troppo difficile fare quello che hai in mente, ma ti aiuterà moltissimo se sai cosa succede sotto il cappuccio di DatePicker e CalendarView! – Bondax
Puoi spiegare di più. Sono nuovo in Android. Grazie, – Conscious
Consulta le fonti, che puoi trovare su http://source.android.com/source/index.html. In questo modo scoprirai come funzionano le cose e troverai le risposte a molte domande ... – Bondax