împărțirea unui proiect în module sau cadre poate fi o strategie bună atunci când construiți o aplicație iOS. Acesta vă va permite să partajați cadrul între mai multe aplicații, ați putea dori, de asemenea, să partajați cadrele cu alți dezvoltatori etc.
în acest tutorial vom trece prin modul în care se poate crea un cadru. Vom crea două proiecte foarte simple. Primul proiect se va numi AnalyticFramework
, iar al doilea proiect se va numi MainApp
.
MainApp
va importa AnalyticFramework
, va inițializa clasa Analytics
și apoi va apela metoda log
. Acest lucru este la fel de simplu ca atunci când vine vorba de crearea și utilizarea cadrelor.
să începem tutorialul.
Pasul 1: Creați un nou cadru
pentru a face acest lucru, trebuie să deschideți Xcode și să creați un nou proiect. Dar în loc să alegem un tip de proiect de la Application
trebuie să alegem Framework
din Framework & Library
:

Pasul 2: denumiți Project AnalyticFramework
numele proiectului este AnalyticFramework
:

Pasul 3: Adăugați clasa Analytics la cadrul
acum trebuie să adăugăm un fișier nou la proiectul nostru. Acest fișier va fi clasa noastră Analytics
pe care o vom folosi mai târziu pentru a înregistra un mesaj.
să adăugăm un fișier nou:

asigurați-vă că este un fișier Swift:

am numit dosarul meuAnalytics
:

Pasul 4: scrierea codului pentru clasa Analytics
în noul fișier Swift pe care l-am creat, trebuie să adăugăm următorul cod:
public class Analytics { public init() {} public func log(message: String) { print("Log message: ", message) }}
aceasta este o clasă simplă, dar pentru că vrem să folosim această clasă în afara cadrului nostru, trebuie să o marcăm ca public
.
avem o metodă de inițiere necompletată, deoarece avem nevoie ca inițializarea să fie publică pentru a iniția Analytics
în MainApp
, dar pentru scopurile noastre nu ia niciun argument, așa că o vom păstra necompletată și o vom face public
.
ultima parte a clasei noastre Analytics
este metoda log
. Trebuie să facem acest public
, astfel încât să îl putem folosi dintr-un alt cadru/proiect. Metoda log
are un argument, message
, pe care îl va imprima în consolă.
Pasul 5: Creați MainApp
acum putem crea o singură aplicație de vizualizare pentru aplicația noastră principală:

nume it MainApp
:

acum, că avem nostru MainApp
creat, putem trage în AnalyticFramework.xcodeproj
:
când trageți în AnalyticFramework
asigurați-vă că nu aveți o altă instanță de Xcode deschis. Când am încercat să trageți cadrul cu mai multe instanțe de Xcode nu ar funcționa corect.
odată ce ați tras în cadrul ar trebui să aibă o săgeată mică lângă ea, care vă va permite să vedeți conținutul acestui cadru.
așa cum se arată în această imagine:

Pasul 6: Adăugați cadrul la cadre, Biblioteci și conținut încorporat
pentru a face acest lucru, va trebui să faceți clic pe proiectul MainApp
din stânga sus, accesați fila General
și apoi căutați Framework, Libraries and Embedded Content
. După ce l-ați găsit, Faceți clic pe butonul +
.
puteți vedea ce trebuie făcut în imaginea următoare:

când faceți clic pe butonul +
vi se va solicita să alegeți cadrul pe care doriți să îl adăugați, acesta va arăta astfel:

asigurați-vă că selectați AnalyticFramework.framework
așa cum este în imaginea de mai sus.
Pasul 7: Utilizați cadrul
acum că avem totul configurare putem folosi cadrul. Am de gând să-l folosească în viewDidLoad
în fișierul meu ViewController
în MainApp
.
adăugați următoarele import
în partea de sus a fișierului, mai jos import UIKit
:
import AnalyticFramework
în continuare trebuie să actualizăm viewDidLoad
. Înlocuiți viewDidLoad
curent cu următoarele:
override func viewDidLoad() { super.viewDidLoad() let analytics = Analytics() analytics.log(message: "analytics initialized") // Do any additional setup after loading the view.}
acum ar trebui să puteți construi și rula aplicația. Când veți face, se va imprima Log message: analytics initialized
.