Autore Topic: Creazione di un calendario  (Letto 553 volte)

Offline Vincenzo96

  • Nuovo arrivato
  • *
  • Post: 9
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Ace 2
  • Sistema operativo:
    Windows XP
Creazione di un calendario
« il: 15 Agosto 2014, 14:39:55 CEST »
0
Per un progetto scolastico devo realizzare una applicazione che simuli un diario, gestito sotto forma di calendario.
Esempio:

Fonte: https://play.google.com/store/apps/details?id=com.mauriziofaleo.schoolmark&hl=it

Potrei avere qualche consiglio per gestire tutti e 12 i mesi nel modo più ottimale possibile e realizzare questo calendario?
« Ultima modifica: 15 Agosto 2014, 14:42:22 CEST da Vincenzo96 »

Offline tonno16

  • Utente storico
  • *****
  • Post: 1225
  • Respect: +59
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Creazione di un calendario
« Risposta #1 il: 15 Agosto 2014, 15:24:38 CEST »
0
implementi un calendarView e un database con 365 righe, ovvero 365 giorni (ok la scuola sono 365-x giorni ma non ricordo...).
Calcolando che ogni giorni ci sono 6 ore massimo, magari  ogni record e' cosi composto:

record_giorno(String mat1, String mat2.....String mat6);
se le materie non ci sono allora metti null.

In ogni giorni ovvero in ogni record del db ti salvi i "compiti".

il calendariView ha un metdo setOnDataChangeListener(); ti ritorna il giorni che hai cliccato. Quando clicchi carici il database con la data corrispondente.

Ti propongo di usare le date come fossero numeri. Per esempio il 30 aprile 2014 alle ore 9 corrisponde a 1234556676 millisecondi ( a partire da una data molto vecchia).  e il 30 aprile 2014  alle ore 9 e 1 minuti corrisponde a 1234556676+(1000millis_in_un_sec*60sec*)

Quindi ti sarà facile fare confronti con le date. Magari usi appunto il numero per memorizzare il database, come preferisci te

Offline Vincenzo96

  • Nuovo arrivato
  • *
  • Post: 9
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Ace 2
  • Sistema operativo:
    Windows XP
Re:Creazione di un calendario
« Risposta #2 il: 15 Agosto 2014, 18:00:04 CEST »
0
Ti propongo di usare le date come fossero numeri. Per esempio il 30 aprile 2014 alle ore 9 corrisponde a 1234556676 millisecondi ( a partire da una data molto vecchia).  e il 30 aprile 2014  alle ore 9 e 1 minuti corrisponde a 1234556676+(1000millis_in_un_sec*60sec*)

Quindi ti sarà facile fare confronti con le date. Magari usi appunto il numero per memorizzare il database, come preferisci te

Grazie mille per la tua risposta, mi hai fornito un buon punto da cui iniziare a sviluppare la mia applicazione.
Solo una cosa non ho capito: come faccio ad usare i giorni come millisecondi?

Offline tonno16

  • Utente storico
  • *****
  • Post: 1225
  • Respect: +59
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Creazione di un calendario
« Risposta #3 il: 15 Agosto 2014, 21:17:30 CEST »
0
Calendar cal = Calendar.getIstance()....ti un oggetto calendario al tempo in cui lo crei.

Se fai cal.set(Calendar.year, 1993) hai settato l'anno dell'oggetto calendar....che quindi non è più 2014.
Quando il calendarView cambia data nel metodo in cui fai l'aoverride hai int year int month e int day.
Li setti nel cal e poi con cal.getTimeInMillis() restituisce un long....ovvero i millisecondi.

In tutto questo non ho nominato ore e minuti, se ti servono nell app