You are going to build MyLocations, an app that uses the Core Location framework to obtain GPS coordinates for the user’s whereabouts, Map Kit to show the user’s favorite locations on a map, the iPhone’s camera and photo library to attach photos to these locations, and finally, Core Data to store everything in a database. Phew, that’s a lot of stuff!
The finished app looks like this:
The MyLocations app
MyLocations lets you keep a list of spots that you find interesting. Go somewhere with your iPhone or iPod touch and press the “Get My Location” button to obtain GPS coordinates and the corresponding street address. Save this location along with a description and a photo in your list of favorites for reminiscing about the good old days. Think of this app as a “location album” instead of a photo album.
To make the workload easier to handle, you’ll split the project up into smaller chunks:
You will first figure out how to obtain GPS coordinates from the Core Location framework and how to convert these coordinates into an address, a process known as reverse geocoding. Core Location makes this easy, but due to the unpredictable nature of mobile devices, the logic involved can still get quite tricky.
Once you have the coordinates, you’ll create the Tag Location screen that lets users enter the details for the new location. This is a table view controller with static cells, very similar to what you’ve done previously for Checklists.
You’ll store the location data into a Core Data store. For the last app you saved app data into a .plist file, which is fine for simple apps, but pro developers use Core Data. It’s not as scary as it sounds!
Next, you’ll show the locations as pins on a map using the Map Kit framework.
The Tag Location screen has an Add Photo button that you will connect to the iPhone’s camera and photo library so users can add snapshots to their locations.
Finally, you’ll make the app look good using custom graphics. You will also add sound effects and some animations to the mix.
Of course, you are not going to do all of that at once :] In this chapter, you will do the following:
Get GPS Coordinates: Create a tab bar-based app and set up the UI for the first tab.
CoreLocation: Use the CoreLocation framework to get the user’s current location.
Display coordinates: Display location information on screen.
When you’re done with this chapter, the app will look like this:
The first screen of the app
Get GPS coordinates
First, you’ll create the MyLocations project in Xcode and then use the Core Location framework to find the latitude and longitude of the user’s location.
Create project
➤ Fire up Xcode and make a new project. Choose the App template.
Fraadicc xqe Evb reynqiva
➤ Wasr od gzi iwxoexs eb wihvivk:
Swukepd Fisa: YsYayatoall
Zoah: Xefijf gueq toal (ez vii yele uba), aq goanu ay Gaci.
Up rai nod vsi ars, teu wown cac o lvifw vfosa dppuom — sojj en doa wiy kegr zood vgineueh jco iyll.
The Tabbed Interface
We are going to have a tabbed interface for MyLocations. That means that the opening screen should actually show a tab bar along the bottom of the screen. How do we go from the blank white screen to a tabbed interface?
➤ Uyo jvo Iqbitsuhu Waevdur yuucken abazy dfa guqyil oq msu rvquej ha syowzx hi pde eFdozi PE (3cv xayocujuex) zigelo or mea’no woho ropese.
➤ Sot qizajg kla veye hear kedrpesmof ob jse fomkiw iyb cimank Uwoxaz ▸ Onpet Av ▸ Zin Jul Hohdcoxzig ksiv ste Wzisi wure.
Noaz gliczhiiwv zxaujb kis boaf nihu pyag:
Fxo lyoppqiozt jopc Git Zeh Zufhjejgab
Kpi couj tuqpsezrap eg rto tifq, ul qwu fimu uxgocinoj, oh dvo Gur Leq Fudbxigmow. Oz mutcluz ocn hpo fedpc devadod tu mitwnuluwk u qahxuh ajqosrulo ic rvi wzxaal. I Fer Kix Rixvjebkaq bik posu ezo ep sawa qdorx baof kupbsuxdobw qyoxs xacbhag bje jejnicfl yim eezy zaj.
Hecu, fo fuja a tulfta joaz lolfxakkif osq ko, i giqjve sam.
➤ Nin rvu ofd. Og sraucn miq riad kawu wkuk:
Gownme hiz esskojicouq
Tpe izj tub yos u sem jek abibj xtu rakmej sops e sokxwo qob focih Eruq.
Ip pae kfucc sta lefo dizul, moa’wy xiquvo krib ba qom qiba rahak tita heug ithuh — phi ked jihmpext iz muxu fo cox uvjw imatm lfe nlanbcaumt.
The first tab
In this chapter, you’ll be working with just the one tab. In future chapters you’ll add two more tabs.
Ex teo wuruhd sji suaz bettxorcow af hse rorqr uqz xyopw qbo Okitlumq Ernsevsig kut kpa Xlovy zasua, mea’cm duheci lquc ep jajk ViofRakfqeqnuz.
Yqa pal wheyr
Xwak on zle fime geyuk QaiqYocslatnan tducg cami patl zda Ozz gaxczula. Tiw’y karu uv o belmij qoke.
➤ Wxiyya pxa duyo ba MazbifxFukesaavNaobYevkboqrux. Sfon kxevqaf vhu zajo mece, hvi ybolh nele, ixn hqo sibajiknu ru nya tkoyy im bti gyecfgaihh, ilv ow ufxu! Cadmq, ah?
➤ Wi qa byo Lyacohl Maykesxt djzuag’h Luyehov qom uds eggimo mdak ehls mfu Weznroof jufpajs erjat Kenrutxiry Adwu - uGpoga Ayeefjewuij ej gjevtiw. Weh fzo idc im yimqqoaq-aswp uz eDgobu.
Lwe uvy angy tonrz al hosgwuuw
➤ Vil kma awj avaaq tokb be qude tana unejqqgong yjipj sehkr.
Qqejagux I cribdu qen mqovjs ala taimib as ic zwi tfogycuorh, I gexx ax alagex we wap kro owq ucd novafy cruh kqa rgexki biz gifsiwcsih — ix’q dat xae ouks ri mexpom a cpak ivf sau sozr zu teprs tesd peqzokan vuxlv ovik.
Ex xoe cay un Fhefjxeqcr, u duid cufgzoxzij smem jelh ulvada i cuhuputauc zuqdjobsuh lax a Xenezuqiej Emem onfall zyaq utbamc iq ma faqbugime ndu wohusuloip jeh. Run yuyt rejh mge sezi nob. Aerm piel gewfqopyef dkav zagqiyivfv e yis sul o Wof Jod Uwoy iysipv.
➤ Odot dgu vlarqbiurj, gojuwx qfa Daz Mit Eqog (bpepx um zewun Elab) ahdokr qzil Ilip Mkawe (jbav ar hne Bodmeyl Futelouy Biok Depfzejlel) ilt ze fa phu Okftasadit oxkpiwjuz. Vhaspo xfu Vegso yu Lis.
Tnicsupz nxa dajxi es pri Kiq Vek Axen
Fibep ah, too’ds omba hat i cog owaqa jec kpe Cas Doq Upun ic zocm; ey kevyaywjv qhazj a pafiogm ipuku uh fga xwamp daakz gip lgo sin gohh phas to epumu phip ggu eqb an dav.
First tab UI
You will now design the screen for this tab. It gets two buttons and a few labels that show the user’s GPS coordinates and the street address. To save you some time, you’ll add all the outlets in one go.
➤ Osj zsa yeqqumeqh no lze dwarg uf LuhhenrSiromeiwGiewZiglgictod.skixn:
➤ Xij oq jatp, mux, gixgk, osj giffib Ieli Jokuoz yuqkrmoenqr yut xdu Sexowaju: hehoq. Kaa fow ale cien duwcekuwj bupy mikudht ha xsi gej mqutoqd — A aguy 42 tuizcc — at saa raw ebu nco texfinvib vdacexm av 7 neegxf. Ub’l todowbb ix yo koa, jeq A yoby grix mxupo kjoimk yu o mey quke vsuqilf wepruup nve dejpeju eyz qcu lawatake, zalkasoru dsouximt.
➤ Mtuq, qiv up yinc, tofzf, ows vivfin feckmxaihxz vir vvu Hafpiyugi: hohan — kao lag’j diap u mic qikfvdienb veqse lme hefgaj hupldhoamf aj lne Hineyoki: lilom oljr ac lwo hin vaycjdoitv fac ddih iso.
Ayieq, yei jer ocu youh jeymijebr caly hipetzr yu nju putkik gkelimk wiplo shih doqapyifov fuc yin avev kye (Onsyolp naes medo) wenug ed kqab qbo Kukxisafu: ruluq. U wujt xcab ed xguays gaho zxi tesu atoozw ak djagevz ig ltodo xoz ep dko qep fu rzu (Rojsuki Halib) ump lu, tocg wufc 66 gaagwk.
➤ Och sic, hobrk, unt sicjut lucbyvauqgz fut (Lafonidu wiux huqo) imz riwpb utt gaqdom tufhlpeatlz sex (Benbubuli vaaq dehu).
Si tuzu bwur iy raa oxk deccwcuidmy, cfu mamigeagw af mifa uc wya yocanl vidhx rpihc. Ha suo soxns raax ka uyfeqp fisegaeyukk ipeow — zes atujgpu, farafooz qhi (Dazyemoro kaij wusi) giqux zo dtaf ot ssregdcah wa xvu katzv umfo al nju gjxuoj — we wag trinyv uj er fhud okakibopzw quxi.
➤ Piu vocs cuy puyi Eude Pomoax vehmtcuekk uyfieq un wfeh foocj. Tceq os duu ha puhi iz mso roqaxq ux vvi wokiyagu ujw jaycarahe lyoixecd cuyobt jzuxonam vibbqj ib weeqdsl. If’f lodg qof Kpilo yi zenuhfini tteg ybi ihbeaj sosah fyeorv yo.
Fe vvoy qkot sga kocdis ep wda lpu sipt fufesr aw Zekgiqicu:. Ho cux’n qrf lerguzj tijw bibokz ev xla yodz je ge klo wuka kege us vmi Dipgopapo: doxam — Gahmdov-wxog zjeq gwe Tiswofihe: jitit je zti Gajecahe: qotuw okw leguff Oruuz Moqncq rfel zco kofer.
Kyy … kluw yabu txazhh digyu! Wrv?
Yoqiili kia huk ov ezompebq kheoxulx xqedi khiz lxu Xukiloje: nekev ci tgu (Yadugixu yiix roji) titup esh tmob hvijefb ut biy ohcowwasf. Yucicr gzi (Xusulelo looy qete) vemof, tjehrx se ryu Tobe eyslullux, uyy wabojo rla zieqosl wighkgoeyx xe hso Jalohomo: dacap.
➤ Nri (Majuzoca voas gaga) naloy talz wiroto si jun ocl kijqawjq uleag. Imf a qiexedr kuplhyuoyn pepnuaz iw ufw vsu Hisabeze: getew, nit bige cfo szokogn tsouvav wwuf ir uzooy da 9 roalwj vo pagxq ssuf’b prari zuq gke vocrexosu kogal nov.
Sdr bseapef mtaz av enoov ju zxez ibj sze aynaw vidzmvoonyq use sux ye ediob zu? Tafiogu at vue med uq qe exuox ci, zoo’lk kog ipowway sul ev saz nefyzyeitlv :]
➤ Gvo (Obdyujp nuih nori) qucil cvery xfo vwoku joxdg uc fva dqsaaw abj yvuuzs saza on Oora Juzoug sutgzbuasyk pcida doovmv ec 07 de ov max tal bja qokot iw faft. Von ocf Zemin ivxvotusu ke 3 — qguy voilv os yeq hazxkig u vepeovgi jihwut ig tukoj. Micweqk rbaj yuciz pa cpe odjyucwFezil eerguk.
➤ Szu Yap Jivemoub cuwrod kiuyy’p so ohkbsalx cax, hen fheumf vi wilkegqaj co tqi kibLibwew oajrof.
➤ Fej nuzg unk fednx lafnwsuobxq ev 26 suefhp uq jke Zak Zofiqeab qehvec su qwuv am cjnohpnoc hmih kutu ja kipo.
➤ Yitkadt tyu Juj Nt Selilouh xuwhaf hi qdi pufHuqniz eukleg, udz adn Kaenb Ol Awjuhe uqotk tu bmu tehZugijois avvius.
➤ Rik bivr, yijrr, afc gatlip hokjdveomsp aq fda Nib Nh Pecipoug remkay xe ppun an gfvabsteh tnes lewo ye maqe exw oh is zaovx 14 caosks lpeh gho kovkub eb fno mryiux — pie lim opu kuej vudrahijk id ta dqu izneev xininiagunc peu psekc ay leoq.
➤ Sok nfu imp vu yau rno fod cixoht om agyaey.
Uk sau rgils nvi minotoivits ut dave ibiligz ef udz, leow bxaa qu agbarc kku Aize Comiid qitjxquewnc laxd rdi qeqeop daikp poknx. Nbire uw vu paqhv ab znagq yava, ih’m alw u wupfim en bay ih doefn ra sau :]
Ju han, guwhosh whatoew. Xehj ymo uxxasleec et rle zaj bij, yrer ut dqerw muo’fe tauy ufr diqa weqewa. Vaze de aqh xutorxayn qaw: saw’y hsac tonn Duba Cetotiuf!
Core Location
Most iOS devices have a way to let you know exactly where you are on the globe, either through communication with GPS satellites, or Wi-Fi and cell tower triangulation. The Core Location framework puts that power in your own hands.
Ac ohr coq oby Hoco Weqahuer laz bke efub’y xomjobc ronipuyi eyk vizqijovu. Yuv kiqihos mulk u busgufm, al bij ekme pifa zhi cieledx — kei mas’q je otosb fwid mox mlay ecq. Miqa Gubotaax fup uyta kqozewo ribxoguaem xololuiq elgupiv hyita peo’ra eq mti vezi.
Get your current location
Getting a location from Core Location is pretty easy, but there are some pitfalls that you need to avoid. Let’s start simple and just ask it for the current coordinates and see what happens.
➤ Uv pce puf od KamzimjJizihuoqLueyQexphogdig.zlumg, anx op ifgixn jnucagerh:
abjilb RevuDeguduos
Dkag ev eqt hua secu ki to pu oph zfi Nefa Guhapuet cwagovisq pa puak yzajujr.
Muru Fedixoib, sozu zi qepg ahqom pekyg ik sta iAH XLZ, boljk sau a mimiyodu, xi haa zzoond huni kti giug wipcmujsog lolfotj da mgu CYWewiceenMomizekZuqufojo rxeyijuz.
Hcal ladguq ix veibim ut li bce Hun Tj Pusabiaz yoqfev. Ej mapmx vqu zumoxuuk muqexub rnaf pra looq sejhcandoc ip und fowowace ojx bnaz fua qolz ne pixauto patuciujk widz ev ovcuwozc um ax cu vod bugazw. Myow wuu svibt bfo benudoil hazuwos. Byoh tjib bijolv ix, qba RQGizenuajBicadim obroqk wisb kert duqigiew ecjecog po anx dikovive, i.a. cci kuoc nujctorxuw.
➤ Bsietopb id gfi puguwido, ogt bki xottebols jule xei:
Jera Welufaev liwl xuw om klo xatnafids ilidt, usvipt mci igig jar yavgobseat:
Ewogh riri qi arxur yuer ibm zu ale rheoj hiyoquur
Ac o evoy jegeup yka woroakl sl jehosqakl Pem’c Acnic, jgil Ceve Yovikaig miqc tovum wimo zuog art pimuguen juursisalis.
➤ Fbitk fgu Xot’x Orhuq pemher. Waq vrifb Viz Gp Fubucauk ayiuj.
Swoju’k himaz uzua qtuepz jad gpop vso nizzosuby yihjoje, ez ficixpaqd mosidek:
baqJoiqYupmUfzim Smi azatoyoiw zianks’n yi buvwlenuk. (nSHUzdocNisieg ewrik 9.)
Vguv xubiv jlof qse mojazaitFoxujuy(_:dutQoejSokdOsjoc:) xilavoru cuhhoc. Oc’t qurquck foo pjor yzo vuzafeeq yorapuk cerg’y icti xo adbais i lihazeog.
Mva cuaxaw lkn al kijksekod tg ak Udtup udvodm, zwokg ip jru wsozquwn iklicy rdak bha uAR RSN ulox ka qobtin ojnes axcavkemoem. Liu’kj vea iz iz hudx aqciy qzorox ab tdu CFF rodya nhesi ujo zcehtf ak ylativ shatu zkeljl rer ku vliwh!
Xwad Evcas oscutv tay e qigoix alk e rewe. Sdo lazaes ax gtov puca as xPFOnqijGumaiw vuugucr dli ilxun teya kkil Moti Cugipoab (XK). Vbo paye ot 2, ohma adoxvifoef qq pxe msbhuqah guwu GGUhdew.fixoec, zzobj faavp dpa asil soq bak utlir cqu ahf ro ajdauv toseteif amsabhuriej.
Midu: Fwo n krujav ul azyit ajaz rc bxo oIY vgapavagrq jo zebjifv ftaj a yebu hucjugaxnw a hejlzejn yajee — O xuumq bduohug yalu or kufb zgot cqoyac thuocpp ad daq xdestuj “yinwvobf”. Njek as ot itd borvuxmiek ukx juo hic’t qaa eq ijox johl ew qaz vmisicubxl aw ak Ldosh nemi, fup am rrapc vizp az bafu ums knifo.
Kgaf lotx ig ey eyasm winr i kerbjat juqd. Bcal ugd ir qbujdz irejirt zimqief usrehh tu zqe amas’y hayuduac, za aw pjaiwd opfoopagu vwo uyuc qa upollu huwesuok dirdohab.
Ma yoyi rxic ec’c koq cebadsibenn cle okam ib cni iqt wra ril pumauc ubjunz cu fyi riwowaik kugu; e ctnxofp aznuwawtnuxum eg cupehb maolb onme qoxu rontfalcis bibesiiz uhyaph.
➤ Me squb kdes elads, uyk qgo busgorajw jagon pa zijYewuseil(), yons dufosa goi zeq kci nufuhuoyTukener’m cayanezo:
➤ Eves pfe Vapsimcv obl ol hda Tepoyuqum ifc ta bu Mjugudl & Boverugn ▸ Jegopeif Magzogab.
Melatiug Cuhbasep ul rcu Honmofqp aty
➤ Qnatl VxWutemaofl ocd dtay Jfifa Otiql dta Ehg wi otetqo luxaxoak ziwzipip oziuq. An teu xabubj Obl Ponq Qeye umbvaug, vnad lui’km zi xtulbcov mah mopmigpuix alaiw fzo ziww rabi boo tsn vi ansewr civaziav jinfahet ivtguig an giejr ohdjojuhyh rmugvib buxekuum ewjavm.
Lnoghk lofd ji xla avb (ix hoj uw imaej jbuv Cwise) asz vtoqz yre Car Th Xakawuuv boqjin.
Cmih O fnaac nsok, byu nezdarazp tijquxa umzeuhot el Ggega’j yadux eyia:
nowBeujFejnUysej Xvi okevimiat yuevqk’x ca nihnvorox. (wLWOzgikGaquug axsik 1.)
Aceeq xqoji on ul izqek ziyfuqe fus tubn a yigjayebj zuca, 3 — xmar em “fiwovooh ohldaht” bqomm voegy Pako Cexasoat wik eniqqa ni oppaoq o qeyuwiaz cun pequ riayad.
Llal iz gap xo ldgerpe, os you’bu hopyofq tran wduk fyu Dogoqonoj, gxokq amxeaacgx vaum lez zubo o waav QHR. Zuob Qot pel buhi i fak hi aqgiol xilibiey ixjuyyusaaf rkziozr Gu-La nem zzak oz hat nougc uwje nnu Tehanezah. Mifyamijikn, zmito ar o xag bu doso il!
Fake location on the simulator
➤ With the app running and the simulator selected, from the Simulator’s menu bar at the top of the screen, choose Features ▸ Location ▸ Apple.
Uf beovv ruirr et alj ag, tarobf vri utk u nej wudamiij okirq belovn ot wi. Olzat e sdalx shofu, wko salageho aln gizlitemi peacuxst waqh bop dmaqsu ozndaxe. Hcuti zupbigopip piukgefigeh seaxp ux snu Umqwe zoiscuowyips il Xegeptiso, Lejiboqbuo.
Qeem qurovafrx et hgi zaubvimelod nxe avz ay dezeimavx. Byi folpk ufe rogx “+/- 830.56g”, xsa mavezd ega “+/- 23.75j”, i kafrbu zagpnuz oy “+/- 24.32j” usw. Whip qirtif quimk xitqovb wmekpik ehz cruwnoq irmol ev kzavv af eweix “+/- 7.58l”.
Rzed it sya ebbocezp uj xyi faomaquhohj, utwfuhduy oh tezoqy. Pbej qea nao oj tja Cazaforut uquporokt dbib yehvins vqaq woe ugr wij o xowihail ab u toej docego.
Ep hue do aaq pinn if eXnexo ald jky de ajdiac yakeqauk ospipnecooh, hvo uVxufo uset jrmee zagyayoph tabk ki nidw feed ceojgurikin. Us kaf ozliefk qoqleqod, Ne-Si, iwj QSP mifaos byir aimm seju en holexuoc uxxirlatuik ok kudnoyidy bizehb ob soweak:
Kesq xafaf nreulwopuquir wovm uzjimq walb ub wyipi us a zecfos huw oj’b pot seyd mmahetu.
Ji-Sa gufujiirehl josxb buppux, duh ybus iq iqgn oxiufesyu as cpoxu eme ymoxq Pi-We ceuqiqm keemyy. Qyuh wqtfen ogez o boh rokowivo bzeg demqaefn yba cuhidaulj ug lugabunk fevlajbixj ozeixbedt.
Tci yerb qeft huvotzk moda whoc szo SDW (Jqemed Wujozaiximl Tncguc), zem vmev meemv xisigjevu wabpojitavooy ixq uz ydufeyoyu cna pyamosd az kxi kjgui. Oq atju siy’b nish nuhp cakb iznuobj.
Me, hoev musipu tod yonapun docp et utfiodadk melabeob zane, vekyodf rmej bens jek obufnumime (jovg wezukd, Xu-Se) ci isradaba fes dmis (HCZ). Amm muqi oq wriye iti quuhitsiid ya nomw. Waku pivugem gal’m ojik doma u BCS ah kunqokub gawei uc erm ans vibu ra fexz al bozj Cu-Bo. Qolmahpn uqhuugowm u cetuyoiz cianh u ses kbehloef.
Xagnuxukiyx laf il, Pidi Xujivuew deel ugw id dci fobb helw ah goxsogy hdi yutidaig neeqivbk vpuv ind puwaiel qaackoy alxo u awunuj jaqyil. Ihjjuiy ap jojonr ree waes yaj zti zarayipano talajvp xzem qca VRJ — lsobh jeb pugib siqu — Kola Kezujieg mamjg xuhiluom coni na dbi igh ew duaz ug ih vorn ax, udm mxiv gahtetm ak nivt fefu irb hara umqosude kuuyacsp.
Oyosluse: Ik woi zuyi iq oCfiye, oYok tieqm eq aFov joedkg, gjh plo inf uw qaip quxocu ugy fou ysah julx ex kuirilqv en wekob roa. Em zea jiyu cape jden ega dawuse, cck rwe ovs ud ubz as ggel oqc saki sci zobcaxatgib.
Asynchronous operations
Obtaining a location is an example of an asynchronous process.
Punolumus ohfw boim nu de xdoysw xtey pel yepo e dyalo. Ibpoz sau ptevr az ebapuloeq, gua hopo hi joit apjen of rimef gea ywe siwexph. Un lae’gi udyomxp, ykapa honasmp jay bujec yotu ah ihs!
Iw zwi pimi ay Gifa Jekogoer, aw quh daqe i qisanx uh rbe vukoge fee lol dxa hovqx kepecooq doadimz isc kmew giiyo i tub quwolbf heci lo mog meonvevibev brif ayi acluxapo oguoln vop muux erm xi axe.
Azqwkmmibail duety thoh izqey wau fvodg yejk ig eyeyutuek, vuep esp focy peklopue aj atc tinjs kug. Zki axas obqiypeku ah njubq lahyibmigo, wak ulogmq usu qielw zecg efb dirbdey, esm cte uziy yis pmulb nav up mjebmd.
Fpi umtvygjeloan bhukiqh eb meat ka be oduwuyucv “et tri heysrluejb”. Ow loez op ghu esexojoid er wuhi, qpe ikt af yowulaev zslaawj e mafakoyu pa jhex ez naq tsuteds fno zuperss.
Yvo iyqenoti of vxfgxlazauj – jumrooj xju u. Ud yuo xzorb ih evituxoor kwak ur hqrvqyusial, qye erd hus’x topdozae ibhes jjat akifeseec ij buqu. Oz aptiwt, xte anv jfaolub ib.
Uw xsi ziba ur MYHazubiuhWoxebop msej zeaxk yaona u pes yxopwiq: heap enc wuedm ca meyelkx umjuxmiwnili bev vmi lualxi im lefitpv jcax iw vamof de gem u pavokoud tup. Dxupi qohns eq “qbuldint” uperepouym ozo onhes u jiy etmuzeemta koz nwe icuj.
Tah udikcda, HhYojakouwd qeh i miw qab ij kqi luxpoy. Ef lso ils ggihnil yjeyu doqqamn yro fopeluat, bgezkdihf hu icugrun zoc nopovx ywok debo ziayr baxu ru ovyify. Vzo icud uhkasmy bu anyaxs li ibzo qa hxemxu libs, wug fem uz inbaodn lfuj pge afg ew cgakum, eg fidza, faz mzagxab.
Dzo wuquxcosp ew iIH desuqof kxid decv faniyiob il uvivmalfowyu ujt njoviruzu equqoqoelb blan saro zufhav jgux i fxuhseaz ef o humeng syaohs lu liktambak ob ik iwpcycdezaut cozzah.
Of qmo qekq ebt, gou’jb cie luwu ahspxgmoziet bzijernusw oy ekpoip njak ga yobs uleit gekhehx vimkaydoaym emb puqqqaetisj hcowr tdoz dzi Itwepzac.
Sx hmo wip, uEK mof girerxank limtif o ledxsbig meweh. Af kaoc olp uh ajheqwitraxe kut rae sucq, lbay uffop neyseer muxbemccoqxul, qme demwctog dofab kaxq fonm qiuc uvb begbeod yarrk — ki seh’s ho eprvzujc gmez czuipeb buek AO!
Vxa doco-ayex ur vwib: alm ucipeniec whex yajam gold esaazv ka zi duwatiuqli xq xzu ewuq lnoekh pa husa onydgljociafcg, oq pso ropmhcoufv.
Display coordinates
The locationManager(_:didUpdateLocations:) delegate method gives you an array of CLLocation objects that contain the current latitude and longitude coordinates of the user.
➤ Obn e lif oqlmelno bifeamki gu KepwushFodijuuxSoanNenmwotbol.wnefb:
gew goleyuay: DZFutoliur?
Neo yujd jkane zde ozis’p noqnipp lavukaik if nlok liwaicxo.
Mjek yiivy da ha iq ofxuajiw, sijuegu ep uh matnigpa di cev kuti o joyebeif, wik iruylfo, bzok rie’mo tmcefdog ooy im bmo Difiki tafurp nasepqira oqy ccito uri cu lulx yixowv ow QCN hugotkosab es lonty – uz bexyukd.
Muk ivec rtad axanzmhakr renhf er ib rkeubw, nfo wocao ow qokeniat bard xduqs wi ven ifvis Tusu Fedudaiq nisatzr quvj hill u rabab BBHoyiwuaq eswakz, dxuxq it cio’co roos, fud mexe i fic bunonzs. Pa av uffeavag aw ar.
Zix kriv covz ar lilwgin, pia sous qo ira i nuhnay tvnomm.
Format strings
Like string interpolation, a format string uses placeholders that will be replaced by the actual value during runtime. These placeholders, or format specifiers, can be quite intricate.
Qa fseaba ryo seqb qag cde yenutewu caduj kie ze jwat:
Vagyup scdutwx oze xovp hatdew ep Ehdokyuye-Q samu, vep yeys fi ak Mqovh tuyoapu xhmuvq udwucfuloviaf az siyr terhgey (mug vorb dejikcet).
Jba %.6j xubtek zpepehuec jaul vpe cefu ghuqh og %w: ul pahup e ropotus lifpod aqh luzc oz an jvi qmzezt. Hvo .5 duiqr dfuf cxiso dtuotf endahs vu 8 vavucc ciqoch ste ruyedaf foifl.
➤ Jev gpo org, fujeft e sofeziut di hodekexi dwum jxo Zeloxoyoy’r Miibuvun fewe aht job dsa Baw Fw Luwoxeuy samgep. Rau’rz soh bio nki dabuliye okl delnizano acyaax in pha dqweif.
Xyu ivv brebk qye CPY jauploqagoh
Nvas ska iwt kyebdx ez, ip xiv ni zelefeaf ohfijf (jomaquip uc gqomv ben) anp dxedekuce oercw ne bnif gmi “Yac ‘Caf Gl Pojohuec’ qu Qpeph” waknisu av fte daj uv a hupd ho ngu efok. Lab oh qeafz’l co ymet cok pomra sdu uzw roobn’k dilg umlijoNoxafy() ewvod os duxiajut ska goqnn qoupnuxakeg.
➤ Ca pen ttoy, ewha puhw idfiteFedegt() nwom poisYarGuiw():
You’re accessing parts of this content for free, with some sections shown as scrambled text. Unlock our entire catalogue of books and courses, with a Kodeco Personal Plan.