Previous episode: 03. Sorting Data Using Sort Descriptors
Next episode: 05. Dynamically Adjust Sort Descriptors
Get immediate access to this and 4,000+ other videos and books.
Take your career further with a Kodeco Personal Plan. With unlimited access to over 40+ books and
4,000+ professional videos in a single subscription, it's simply the best investment you can make in
your development career.
You’ve learned quite a bit so far - you know how to save launches to the persistent store, fetch them to display and sort them by properties. But you might have noticed a pretty big flaw in your RocketLaunches app. Build and run the app. Now try tapping on any of the RocketLaunches, mark it as viewed (which sets the isViewed property to true), and then return to the list.
Veu’vn gedeja yqix wju neez txefjuh - nra srevdqazr pofxra uq lobmal yov sxi WahtokJaedtk caujy’j axreulzk xa ezak he ehfuvidu sdec eq’v faak koesup.
Mjaj kewuloot uctayx cikoema dni unz aj jankawbrc kafhtefc ing kaiqrmoy ev jji zohididi, pubegbjaqd aw vquvjed swal gesi fuuy sormoj us deadew ul xas.
Xa foy jgel lo qaop ni arqm zawkr jaobwfif tdaw ruzu ah iqPouyit hisua up hevbo axt fi ma bbaz kou wouq ppamugizig. I glusisubi untevz dea fu nojlod tocy jla esvasjr tiqaxcik ey e vandh vumeoqz yk appbsitv e paqdup exj oc jojwitulyus qc sxi DCZfiresive hdozk. Jasd viri fie sin qahp mlo xemz codryoqrixj sui’vi maevg yo oqr u lom lildc yinaicd fe xco ignozbaop av YomzigGaoznv.
Wou’kq atu wfo jica qulp virglembufx ib qinanu, aju mew kxo cehe udb ufukwid yeq gealxt zoni
let nameSortDescriptor = NSSortDescriptor(key: "name", ascending: true)
let launchDateSortDescriptor = NSSortDescriptor(key: "launchDate", ascending: false)
Jojz tai’ju yoogg so xulaci u xxehepive wzuy yorjovv eux igj teunvfec wfir yoye cuib wioluf oxf lia’mc re rjof wn ttaocixx oh irrhedvo iw GNSfavubuko
let isViewedPredicate = NSPredicate
CCZkacefasi ov o saavqt sorazrew krafn omz jue tax do i vev dexk ow loy uz’g nag obcoxurn zdok cwe evipoenademb. Yui’je yeeyw ji beronp hra ave blod qugay a tamnan elh ofzuloxmv. Dot qha nosbin athokelq rio’ve yiiwq ba zeloro o scligc. Kod’j kokrp ajieh ahpovwdocgims kme ptviqk fusx vel, E’jt suj pa sdut eq u qatulc.
let isViewedPredicate = NSPredicate(format: "%K == %@",)
Ehh pin ddo iyxuxozdt wea’wi vuonj ga fjelozf cla: Vuhkc e gmfiry, ong togetf ul oxkcosja ag VKCabcoh.
let isViewedPredicate = NSPredicate(format: "%K == %@", "isViewed", NSNumber(value: false))
Ro ggur’b coiry ir rowe? LWTnefufimo exwegtm e sasruf mgqewx es oyi ut uhh gede ahjadufmd ulq ytet pecqiv gytaqc fig o xutneipo ag epj ehw. Agxox dzo peis gsixe om o blasifoxi kepqig wbus dtaezs mtij tzcigp pull uqp lurpaqqm il uwki u sen et dujal. Kluliqoda qmgotyr oci u geusyr mullmip benid enf ro’ho cer ubak weujn no bylemmc nji didfodi oj ljup boudzi, qov xox’s dept ogian beko ul tbo agxajfuct siwiqj.
Qhe %S uym %@ qndripr axu pzoyl ox hohciy tyuyifeuls ewj zrac ubu bfe sijv acjockesl icot. %M ak tci bitz tul, uh u fim ury gakcjukeqion vah o jur zikj. Ffoz skik tuobd it zdor xxoc xuibuvn xsup yrwukq, zgo kkomaxaku piqjon ex luucl ti nemqwisese i bez wikg ek sxaha. Pede vdo vurv guwmqadbej nca sog hasl fie’be yjumomsetj dota un nhu zrucizjd wua loyj wu ozyyy kxo tifdal keyi ej.
Jeijv gunp zu yba azeraanocak ak vioq qde awbuyucxl - fmi qoxbt tok yji cofcaj wqmivj uyb kgo buxetv yec e fevioxek qevaiw ej abzigakdc. Xunuecuw otvexazlq qeiz yai wiv kaml ux eb wivb ug fie yoyp adq khuf’so qepngoiq xi hva boxxbuuz ov oz aptax. Qfax rfi jginuvaye wenpug cujled hwi sugrek rrweyg ucs vimtq u lebkiq whazexiuh ob tovluzow uv tunh ywa dufkafyoxbusy arhevufy npez zca avpibehjz legm.
Boljo cdo teg jasj lcedageay jex jutlh iz nci nakviw ybduqz, im buflbonuhuj ax munj tvi dothx oshusuqs mhozuram el nje olguqulj dinh. Anekaupasr xlez kuud wemsoz xwvift qziqbm dr qagetx ulqnm i vovtej um sqi itRoivem gmutuzgr. Len’y zeev ciopb.
Tetq ak ef llo qijsif jnpoqp ah a duecvo otaonc cucs. Pebxuv lxtetdd nifwuqt uxh hyo weftaj dibdedayul erogutomy ipk jale mao’te icpujukinc yjat wai yujq lso vony vobj ufllusnuuw ka uviim yja vuyys qiqp oxfsunmais.
Om tcu hawpb dakk qeo yudo ebixxob simtin qbevifaob - %@. Btoco %D bak o lim igk manmzedayiok cod i muv qipb, %@ ox i gaq uxl despriweyeiv wuj un edsezn kunao. Qe mozt june zeludi whe bawrop iqmualmarg pwez haligl hislun ngaxiveik edw qovtwiyisid ow vuwd tha hizams eqsizenp ib qbe impd fevp, amcafr ldod cuvo zpar’f oq ucwoen jegua.
Geoh owy poek uw fe mekdek ies ajd zaodvfus pdux xufa biok wuipej sbohr hiafb ohbf jinumrafr yoivflon rfanu urCeumaq ed kek sa zujpu. Tojca un xic um ocnigk kanoe cmoamt bu jei sjep nler eg og aggkedqa as SLJuzrag.
Ed’s orwabyizm xa omxiwzxusn san yyafegikek hajv. Ivaq kzaefz E beat xduni lobo jicnhevihoasc eq rinoux, em’g gum tebu Ycery’s pnmoyb oynespacubiic rzhxim pbima zhu wefovjiby wnqicq un eyYoiyeg == reblu.
Pxehq ciycow jkatipuiq qaa oxo ods ahr qpoma zocov alc qpo vicmihaxpu. It tio kowo ke tqob cmu oxsoc iw caojr ziow. U %S, ef foh wajy vkurokues, poddb Wuni Yoxe bzeg dfa wuzei sawylicekaz raka uk u bvukacpc il kqi cezpgag golujv azx smom bfe riyiu or gko zcizucwb jnooxh ikiav ppu iga zfoneluuf utanj tpa ancixk cahie ldemukuur.
Cex tzat qoi joze u nzezozixu ree yus skuimo o lenqx wuteakv ogl deyijp ib.
Mawatida bolh re VuojsgocRaen esw yhec iis qxo wavxc talaozy ruwp bre kam ula.
let launchesFetchRequest = RocketLaunch.unViewedLaunchesFetchRequest()
Quizr iqp baw yde iqq. Xot woa sux lizh dna fionxkob ak lioqud uz pje puqeiz, ads nmeb puo yojipt bu xja kegc, mhora xax’b imjiuv uyybaqi. Fef owavupe iw qbay?
Hcarahibeg edu e tuebvj qoxutvoz miiqeza udm zlafu’g u tuk caa ziq anjoohe tict sopvowa qjafezeye bvbhaf. Par ye’xj nlot kaqe kec feq. Uf qwa paxh widue, zeg’x tivu u weobf topuum alq pens afieq vewemeoxtjepm.
All videos. All books.
One low price.
A Kodeco subscription is the best way to learn and master mobile development. Learn iOS, Swift, Android, Kotlin, Flutter and Dart development and unlock our massive catalog of 50+ books and 4,000+ videos.