Lucrul cu CorePlot configurarea proiectului

Când lucrați cu aplicații cu intensitate mare de date, un dezvoltator trebuie să facă deseori mai mult decât să arate liste de înregistrări de date într-o vizualizare de tabel. Biblioteca CorePlot vă va permite să adăugați vizualizări uimitoare de date la aplicațiile dvs. Aflați cum în această serie Tuts + Premium!

Vizualizarea datelor este esențială pentru a ajuta utilizatorul să înțeleagă datele și să ia decizii importante. CorePlot este o bibliotecă terță parte care vă permite să afișați o gamă de grafice interactive în cadrul aplicației. Acestea includ grafice de linii, grafice scatterplot, grafice de bare și chiar grafice de plăcintă. Puteți personaliza aspectul graficelor și chiar le permiteți utilizatorului să interacționeze cu ele.


Disponibile și în această serie:

  1. Lucrul cu CorePlot: configurarea proiectului
  2. Lucrul cu CorePlot: Bazele fundamentale
  3. Lucrul cu CorePlot: Styling și Adding Plots
  4. Lucrul cu CorePlot: Crearea unui grafic de bare
  5. Lucrul cu CorePlot: Crearea unei diagrame

Ce vom acoperi

Pe parcursul următoarelor 5 tutoriale vom crea o aplicație care conține date despre înscrierea elevilor într-o universitate. Mai precis, vom acoperi:

  • Cum se adaugă CorePlot la o aplicație.
  • Elementele de bază ale CorePlot și cum să obțineți un grafic.
  • Crearea unui grafic liniar.
  • Grafice de stil.
  • Crearea unei diagrame de bare.
  • Abstractizarea logicii datelor grafice.
  • Crearea unei diagrame.

Cunoștințe necesare

Trebuie să aveți o înțelegere intermediară a dezvoltării iOS și a modelului de dezvoltare a delegării. O înțelegere a CoreData este utilă, dar nu este necesară. O mare parte din funcționalitatea CoreData a fost deja implementată și veți fi ghidat prin orice alte apeluri către magazinul de date.


Aplicația de probă

În codul sursă veți găsi aplicația de bază pe care o vom folosi înainte. Este o aplicație de bază a barelor de fișiere care utilizează datele de bază pentru a stoca informațiile studenților și a subiectului și le afișează în vizualizări separate de tabele. Puteți adăuga un elev sau un subiect apăsând butonul "+" din colțul din dreapta sus.

Clasa subiect are următoarele atribute:

  • ID-ul subiectului: Identificator unic, generat automat.
  • Nume subiect: Numele subiectului, descrie subiectul.

Clasa elev are următoarele atribute:

  • Carnet de student:Identificator unic, generat automat.
  • Numele studentului: Numele și prenumele elevului.
  • ID-ul subiectului: ID-ul subiectului în care sunt înscriși. Pentru simplități, presupunem că un student poate înscrie numai într-un singur subiect.
  • Ziua inscrisa: Presupunem că înscrierea durează peste o perioadă de 7 zile. Ziua înscrisă este ziua în care studentul a intrat în această perioadă pentru a se înscrie.

Deschideți proiectul și asigurați-vă că acesta rulează. Pentru această serie nu utilizez Automat de numărare de referință, așa că va trebui să ne gestionăm propria memorie. Ar trebui să vedeți lansarea aplicației cu fila "Studenți" și "Subiecte". Fiecare filă ar trebui să conțină un tabel cu câteva date pre-populate în fiecare. După ce ați confirmat că toate acestea funcționează, putem trece la adăugarea CorePlot în aplicația noastră.



Importarea CorePlot

Primul pas este să descărcați cea mai recentă versiune CorePlot. La momentul scrisului care este v1.0. Accesați pagina de pornire a complotului principal și navigați la secțiunea de descărcări.


Descărcați fișierul zip. Biblioteca are circa 140 mb, deci ar putea dura ceva timp dacă aveți o conexiune lentă.

Vom plasa fișierele Bibliotecii CorePlot în aplicația noastră. Este o bună practică să stocați terțe părți într-un dosar separat de celelalte fișiere de clasă. Creați un folder nou în directorul sursă "StudentTracker" numit "Biblioteci externe".

Puteți include CorePlot ca instalare de proiect dependentă sau o bibliotecă statică. Îmi place să-l includ ca pe o instalare de proiect dependentă, deoarece ne permite să accesăm codul sursă și să vedem cum funcționează lucrurile ca formă distinctă doar dacă vedeți fișierele antet.

  1. Copiați directorul "CorePlot" în noul folder "Biblioteci externe" din interiorul directorului sursă StudentTracker.

  2. Creați un grup în XCode numit același ("Bibliotecile externe")

  3. În căutător, localizați fișierul de proiect "CocoaTouch.xcodeproj" ("CorePlot_1.0 / Source / frameworkCocoaTouch.xcodeproj") și trageți-l în grupul "Biblioteci externe" în Xcode.

  4. Selectați fișierul de proiect al aplicației în xcode și faceți clic pe fila "Construiți faze". De acolo trebuie să adăugați Biblioteca CorePlot-CocoaTouch în grupul "Dependente țintă".
  5. De asemenea, va trebui să conectați binarul cu biblioteca CorePlot. Extindeți grupul "Link Binary with Libraries" și adăugați "libCorePlot-CocoaTouch.a"

  6. De asemenea, va trebui să adăugați anumite setări în fila Setări de configurare. Setați calea de căutare a antetului la directorul cadru din directorul sursă CorePlot (ar trebui să fie "$ PROJECT_DIR / StudentTracker / Biblioteci externe / CorePlot_1.0 / Source / framework /"). Bifați caseta din dreapta textului (pentru a indica recursiv). De asemenea, trebuie să modificați opțiunea "Căutați întotdeauna Căile de utilizator" la "Da".

  7. Apoi, adăugați "-ObjC" în câmpul "Alte legături Linker".
  8. CorePlot se bazează pe cadrul QuartzCore, deci mergeți mai departe și adăugați acest cadru ca fiind necesar.
  9. În cele din urmă, va trebui să importați fișierul "CorePlot-cocoaTouch.h" în orice fișiere care necesită acest lucru. Nu avem nevoie de ea încă, dar încercați să adăugați-o în fișierul de delegat al aplicației pentru a vă asigura că totul se compilează corect.

Dacă proiectul se compilează cu succes, atunci este bine să mergem!


Probleme comune

 Fișierul CPTAnnotation.h nu a fost găsit

Aceasta înseamnă că directorul de căutare a căii de antet nu a fost localizat corect. Asigurați-vă că utilizați căile de căutare "Header Search" și nu căile de căutare cadru. Este important să vă asigurați că caseta de selectare este bifată și că "Căutarea întotdeauna căile de utilizator" este setată la "Da".

 Semnale nedefinite pentru arhitectura i386: "_CATransform3DIsIdentity", referindu-se la: ... 

Aceste erori înfricoșătoare există deoarece Cadrul QuartzCore nu a fost inclus. Tot ce trebuie să faceți este să includeți QuartzCore Framework (în grupul "Link Binary With Libraries") și aceste erori vor dispărea!


Învelire

Am intrat într-o bună prezentare a ceea ce face CorePlot și cum să-l adăugăm la un proiect existent. Data viitoare vom mânca mâinile și vom începe să construim un grafic pentru a arăta câte studenți s-au înscris în fiecare zi de înscriere. Prindeți data viitoare!

Cod