Corsi di programmazione web e mobile online
Pagina 1 di 2 12 UltimaUltima
Risultati da 1 a 10 di 17

Discussione: CoreData

  1. #1
    Senior Member
    Data Registrazione
    Mar 2011
    Messaggi
    392

    CoreData

    Corso online di programmazione android e java
    Salve ragazzi,
    sto usando CoreData per salvare determinate informazioni, però ho un problema nel caricare i dati. Allora in AppDelegate Xcode mi ha creato questo codice:

    Codice:
    Solo gli utenti registrati possono visualizzare il codice. Only registered members can view code.
    E su questo ci siamo, ho capito il funzionamento. Poi nel mio file .m:

    Codice:
    Solo gli utenti registrati possono visualizzare il codice. Only registered members can view code.
    Non capisco dove sta l'errore. Cosa sbaglio?


    Grazie!
    La vita è quel che scegli

  2. #2
    Senior Member L'avatar di neronorx
    Data Registrazione
    Aug 2011
    Località
    torino
    Messaggi
    1,587

    CoreData

    Ci sono 2 tutorial su devapp,cercali ,sono un po' datati ma devi vederli.
    In effetti manca il fetchrequest.

  3. #3
    Senior Member
    Data Registrazione
    Mar 2011
    Messaggi
    392
    Ho risolto in questo modo:

    Codice:
    Solo gli utenti registrati possono visualizzare il codice. Only registered members can view code.
    La vita è quel che scegli

  4. #4
    Senior Member
    Data Registrazione
    Mar 2011
    Messaggi
    392
    Io ho risolto il caricamento dei dati, ma c'è ancora un problema. Io ogni volta che salvo, mi salva in un array, ma io devo sovrascrivere quello già presente, non aggiungere altri dati. Come faccio?
    La vita è quel che scegli

  5. #5
    Senior Member L'avatar di neronorx
    Data Registrazione
    Aug 2011
    Località
    torino
    Messaggi
    1,587
    Coredata sembra complicato all'inizio,ma una volta entrato nell'ottica,è semplice.
    Detto a parole semplici : Il Context è una memoria temporanea,diciamo "un foglio" dove vengono scritti tutte le entity che crei con il metodo "insertNewEntityForName..." e il context viene scritto in modo persistente con il metodo save.
    Fin qui ci siamo penso.
    Ora se tu carichi con il FetchRequest un oggetto NSManagedObject,modifichi i dati ,dopodiché salvi il context,hai solo modificato l'oggetto.
    Mentre se l'oggetto NSManagedObject lo crei con il comando "insertNewEntityForName" allora ne crei uno nuovo.
    Un suggerimento,crea i NSManagedObjectModels,io nei miei progetti ho creato una classe singleton con lo stack di coredata,dove recupero il NSManagedObjectContext da qualsiasi parte del progetto,lasciando pulito l'appDelegate, ho creato categorie delli classi di NSManagedObjectModels dove ho creato dei context temporanei,metodi save etc...
    Comunque vai a vederti la seconda parte del tutorial.
    Ultima modifica di neronorx; 17-05-15 alle 15:59

  6. #6
    Senior Member
    Data Registrazione
    Mar 2011
    Messaggi
    392
    Seguendo la guida, ho scritto diciamo uguale. Quindi:

    Codice:
    Solo gli utenti registrati possono visualizzare il codice. Only registered members can view code.

    Cosa sbaglio?
    La vita è quel che scegli

  7. #7
    Senior Member
    Data Registrazione
    Mar 2011
    Messaggi
    392
    Io vedo sempre più risultati. Non uno. Come mai?
    La vita è quel che scegli

  8. #8
    Senior Member L'avatar di neronorx
    Data Registrazione
    Aug 2011
    Località
    torino
    Messaggi
    1,587

    CoreData

    Allora,io non so cosa hai intenzione di fare,non so nella schermata della tua app cosa ci sia quando richiami il tuo codice.
    Ti faccio un esempio della rubrica di iPhone. Rubrica vuota,quindi premi il tasto + e in quel momento si crea una nuova entity tramite insertNewEntity, e la passa al nuovo viewcontroller dove gli inserisci il numero di telefono,via etc... Quando lo chiudi allora va al salvataggio.
    Mentre se hai già dei nomi in lista allora è consigliato usare il nsfetchedrestscontroller nella tableview.
    Al didselectobject ricevi il nsmanagedobject ,lo passi direttamente al controller di prima per i dati,quindi non devi usare il metodo insertNewEntity altrimenti ti crea un'altra record.

  9. #9
    Senior Member
    Data Registrazione
    Mar 2011
    Messaggi
    392
    Io devo salvare sempre sullo stesso dato, non salvare ogni volta un nuovo dato. Capito?

    Poi il mio codice è quello che vedi sul forum, al momento non c'è altro; giusto per capire come funziona coredata.
    La vita è quel che scegli

  10. #10
    Senior Member
    Data Registrazione
    Mar 2011
    Messaggi
    392
    Corso online di programmazione android e java
    Il mio array deve essere composto da un solo valore. Poi io aggiungerò altri attributi nel mio coredata, e dovrò fare sempre la stessa cosa!
    La vita è quel che scegli

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •