1 00:00:00,000 --> 00:00:07,880 2 00:00:07,880 --> 00:00:09,800 >> RHED SHI: Dobrodošli glej CS50 seminar - 3 00:00:09,800 --> 00:00:11,630 Uvod v iOS. 4 00:00:11,630 --> 00:00:13,290 Hvala, ker ste prišli. 5 00:00:13,290 --> 00:00:16,610 Upam, da si ravno tako navdušena kot sem o iOS. 6 00:00:16,610 --> 00:00:22,300 Lani sem vzel CS50 kot letniku, in sem v bistvu naučil iOS za moje 7 00:00:22,300 --> 00:00:23,490 končni projekt. 8 00:00:23,490 --> 00:00:26,350 In bilo je precej - 9 00:00:26,350 --> 00:00:30,530 No, to ni bilo enostavno, vendar obstajajo veliko podpore vajah na spletu. 10 00:00:30,530 --> 00:00:33,760 In res upam, da s tem seminar, bom dal fantje glava 11 00:00:33,760 --> 00:00:36,750 začeti razvoj iOS 12 00:00:36,750 --> 00:00:40,490 >> Torej, v smislu razvoja iOS, obstajata dve glavni stvari, ki jih 13 00:00:40,490 --> 00:00:42,090 želijo pokritje danes. 14 00:00:42,090 --> 00:00:43,290 Prvič, jezik - 15 00:00:43,290 --> 00:00:46,650 jezik, se bo v Objective-C. Bomo dejansko slišali 16 00:00:46,650 --> 00:00:47,750 nekaj res razburljivo. 17 00:00:47,750 --> 00:00:51,500 Torej, se lahko pridružite celotno Apple skupnost razvijalcev in zgraditi nekaj 18 00:00:51,500 --> 00:00:52,940 res super apps. 19 00:00:52,940 --> 00:00:58,670 >> Tudi iOS 7 je lepa, upajmo, za nekatere od vas. 20 00:00:58,670 --> 00:01:01,130 Ampak to je sporno, vem. 21 00:01:01,130 --> 00:01:05,349 In predvsem, kaj želim storiti, je vodnik ste skozi Objective-C, pa tudi 22 00:01:05,349 --> 00:01:10,650 Xcode, ki je integriran razvojno okolje, ki ga bo 23 00:01:10,650 --> 00:01:13,460 delajo v za iOS. 24 00:01:13,460 --> 00:01:19,140 >> In tako, samo beseda o Objective-C. V bistvu, to je točno isto kot C, 25 00:01:19,140 --> 00:01:22,790 vendar z veliko drugih stvari. 26 00:01:22,790 --> 00:01:27,710 In tako, bolj strogo, da je dejansko -super niz C. Torej, vse, kar ste 27 00:01:27,710 --> 00:01:32,280 lahko storite v C prav zdaj, ki je v bistvu všeč pset 0 do 6, ki jih 28 00:01:32,280 --> 00:01:34,170 lahko storite v Objective-C. 29 00:01:34,170 --> 00:01:38,620 >> Torej, ne čutijo strah glede tega novega jezik, da boš naučiti. 30 00:01:38,620 --> 00:01:42,120 Ste že zajela veliko od tega, ker ste vse narejeno C Pri tem preteklost 31 00:01:42,120 --> 00:01:45,880 semester, razen zdaj greste da imajo veliko več delati. 32 00:01:45,880 --> 00:01:49,270 In jaz bom samo, da vas vodi skozi Nekaj ​​primerov izpostaviti nekatere 33 00:01:49,270 --> 00:01:53,920 ključnih razlik, ki sem jih našel so bile Zelo pomembno je, ko sem se naučil 34 00:01:53,920 --> 00:01:57,180 Objective-C lani. 35 00:01:57,180 --> 00:02:00,910 >> No, pravzaprav, tako, druga točka je, Objective-C je, seveda, 36 00:02:00,910 --> 00:02:02,200 objektno usmerjen. 37 00:02:02,200 --> 00:02:06,340 In bomo razpravljali malo o tem, kaj to pomeni kasneje. 38 00:02:06,340 --> 00:02:11,340 V bistvu, to je kot kako ste delali z konstruktov v tem zadnjem pset, z 39 00:02:11,340 --> 00:02:13,360 vozlišča in podobno drugi take stvari. 40 00:02:13,360 --> 00:02:17,110 Razen v Objective-C, je vse objekt, in si bo 41 00:02:17,110 --> 00:02:20,720 ki poteka okoli napotke za predmete raje od vrednosti samih. 42 00:02:20,720 --> 00:02:25,050 Torej, to je samo nekaj pomembnega da v mislih. 43 00:02:25,050 --> 00:02:29,140 >> Torej, zakaj ne bi začeli z nekaj Razlike v sintakse med C in 44 00:02:29,140 --> 00:02:30,540 Cilj-C? 45 00:02:30,540 --> 00:02:38,310 Želim poudariti # include si Veš, standardna io.h v C in C + +, z 46 00:02:38,310 --> 00:02:44,030 različica Objective-C, ki, ki je # import, nato pa nekakšen 47 00:02:44,030 --> 00:02:44,790 datoteka z glavo. 48 00:02:44,790 --> 00:02:48,165 V tem primeru bi bilo UIKit, Veš, poševnica UIKit.h. 49 00:02:48,165 --> 00:02:53,560 Prav tako bi bilo, veste, MKMapview da boste poševnica MKMapview.h, če želite 50 00:02:53,560 --> 00:02:56,370 narediti, kot, zemljevid notranjosti vašega app. 51 00:02:56,370 --> 00:02:57,110 Podobne stvari. 52 00:02:57,110 --> 00:03:01,250 >> Torej, pomembno je vključevati se je zdaj spremenilo uvoziti. 53 00:03:01,250 --> 00:03:04,340 Ampak ideja še vedno ostaja. 54 00:03:04,340 --> 00:03:10,460 Boš se uvaža neko v glavi datoteke v programu. 55 00:03:10,460 --> 00:03:14,550 >> Prav tako želim izpostaviti razliko med printf in NSLog. 56 00:03:14,550 --> 00:03:19,760 Vendar pa, kot smo že povedali, Objective-C je strogo super-set 57 00:03:19,760 --> 00:03:22,800 C, kar pomeni, da obstaja printf v Objective-C, preveč. 58 00:03:22,800 --> 00:03:24,340 Ampak, večina ljudi ne uporabimo. 59 00:03:24,340 --> 00:03:28,245 Večina ljudi uporablja to NSLog, saj vam daje čas, žig, in bomo videli 60 00:03:28,245 --> 00:03:29,780 je v akciji kasneje. 61 00:03:29,780 --> 00:03:33,560 Ampak, to je na splošno bolj uporaben način, da natisnete spremenljivk. 62 00:03:33,560 --> 00:03:38,220 >> In tudi jaz želim poudariti, da NSLog traja v samo isti 63 00:03:38,220 --> 00:03:41,650 ograd vrednosti, kot je printf počne - 64 00:03:41,650 --> 00:03:45,900 tako da% d je za notr, % F je za likvidna sredstva. 65 00:03:45,900 --> 00:03:49,750 Vendar pa bi rad izpostavil prav ta zadnja - 66 00:03:49,750 --> 00:03:52,960 NSLog% na znak - 67 00:03:52,960 --> 00:03:55,390 da je ograda za objekt. 68 00:03:55,390 --> 00:04:01,160 In kot sem rekel prej, Objective-C obravnava precej večinoma v objektih, 69 00:04:01,160 --> 00:04:05,020 in da se bo to zgodilo v uporabi, ko želite natisniti, morda, morda 70 00:04:05,020 --> 00:04:08,390 NSArray, ali NSDictionary, ali NSString. 71 00:04:08,390 --> 00:04:13,750 >> Torej, tudi opazili, da je v našem NSLog Izjava imamo na znak pred 72 00:04:13,750 --> 00:04:15,380 citata - 73 00:04:15,380 --> 00:04:20,769 to je pomenilo, da so strune, zdaj, v Objective-C so predmeti. 74 00:04:20,769 --> 00:04:23,310 Niso več zgolj značil zvezde. 75 00:04:23,310 --> 00:04:25,530 Oni so predmeti in so obravnavati kot tako. 76 00:04:25,530 --> 00:04:28,690 >> Torej, to je res pomembno, da pri uporabljate NSLog je potrebno v NS 77 00:04:28,690 --> 00:04:32,580 Niz, kar pomeni, da boste imeli vključiti AT pred vašimi 78 00:04:32,580 --> 00:04:34,270 narekovaji. 79 00:04:34,270 --> 00:04:38,290 In to je, zakaj vidiš, tukaj, v vseh Moja funkcija zahteva, da se ta NSLog sem 80 00:04:38,290 --> 00:04:42,400 imajo AT pred narekovajev, čeprav čeprav so% d in% f je 81 00:04:42,400 --> 00:04:45,200 vsi isti iz C. 82 00:04:45,200 --> 00:04:47,930 >> Kakšna vprašanja? 83 00:04:47,930 --> 00:04:50,920 Bom poskusil, da gredo skozi to hitro, tako , da bomo lahko imeli več časa za delo 84 00:04:50,920 --> 00:04:55,210 z Xcode in Objective-C, tako da da lahko fantje dobili več 85 00:04:55,210 --> 00:04:57,630 seznanjeni z njo. 86 00:04:57,630 --> 00:05:01,900 >> Naprej, želim izpostaviti nekaj konceptualno pomembna. 87 00:05:01,900 --> 00:05:05,130 Torej, v C, večina stvari so funkcije. 88 00:05:05,130 --> 00:05:06,280 Naredimo klic funkcije. 89 00:05:06,280 --> 00:05:10,190 Izjavljamo Funkcije na ta način, z tip donos, potem 90 00:05:10,190 --> 00:05:13,570 Ime funkcije, oklepaji in nato ne glede na argumente in vrsta 91 00:05:13,570 --> 00:05:15,590 ti argumenti, ki jih želimo prenesti noter 92 00:05:15,590 --> 00:05:19,970 In Objective-C, ker je vse je predmet ali razred - 93 00:05:19,970 --> 00:05:23,970 tako razred in predmet sta izraza, ki so večinoma sinonim za medsebojno 94 00:05:23,970 --> 00:05:28,270 tako da jih lahko uporabite kot sopomenki celotnem seminarju. 95 00:05:28,270 --> 00:05:34,090 >> Ampak, boste videli, da imamo metode v Cilj-C namesto funkcije. 96 00:05:34,090 --> 00:05:36,390 In metode pripadajo predmetov. 97 00:05:36,390 --> 00:05:38,950 Torej, samo tako, morda bi na primer, vozlišče - 98 00:05:38,950 --> 00:05:40,250 naša vrsta [neslišno] 99 00:05:40,250 --> 00:05:44,390 Vozel iz pset 6 ali 5 - 100 00:05:44,390 --> 00:05:49,590 imamo besedo, premoženja, ali naslednje vozlišče kazalec. 101 00:05:49,590 --> 00:05:53,880 Metode so preprosto deluje znotraj od neke strukture. 102 00:05:53,880 --> 00:05:57,510 >> Torej, v tem primeru, bi struktura predmet, in nato metoda 103 00:05:57,510 --> 00:05:59,260 nekaj, kar spada v predmet. 104 00:05:59,260 --> 00:06:02,650 In to je, kako bi se razglasi, vrsta, metoda. 105 00:06:02,650 --> 00:06:07,990 Ti bi začeli s ponovno, povratna tip - tako sem poskušal barve 106 00:06:07,990 --> 00:06:12,990 zakonika ključne besede, tukaj, tako da fantje lahko vidite vsaj oblikovanja 107 00:06:12,990 --> 00:06:17,650 podobnosti med funkcijo izjave in izjave metodo. 108 00:06:17,650 --> 00:06:21,990 Torej, da začnete z, saj veste, povratna tip - v tem primeru je matrika, ali 109 00:06:21,990 --> 00:06:23,910 NSArray kazalec - 110 00:06:23,910 --> 00:06:26,710 in potem imate to metodo. 111 00:06:26,710 --> 00:06:30,900 In potem, kaj je zanimivo, tukaj je da namesto da oklepaju smo 112 00:06:30,900 --> 00:06:32,900 so te debelo črevo. 113 00:06:32,900 --> 00:06:38,450 In potem, pred našimi argumenti, smo dal, še enkrat, v oklepaju tip 114 00:06:38,450 --> 00:06:39,370 našega argumenta. 115 00:06:39,370 --> 00:06:43,160 >> Torej, zdaj bom poskušal narediti Primerjava med veste, n in 116 00:06:43,160 --> 00:06:45,450 Številka, ker oni tako kot ints. 117 00:06:45,450 --> 00:06:49,580 In potem druga je tip NSUInteger. 118 00:06:49,580 --> 00:06:56,390 In potem, z Objective-C, ko vam želijo imeti več argumentov v 119 00:06:56,390 --> 00:07:00,030 vaša klavzula metoda, ti, nekako, jih izločiti nekako takole - 120 00:07:00,030 --> 00:07:03,790 Nisem povsem prepričan, kako to opisati, ampak to je dober primer, kako 121 00:07:03,790 --> 00:07:06,530 imajo lahko več argumentov tam. 122 00:07:06,530 --> 00:07:10,360 >> Lahko bi, seveda, samo v celoti prezreti andArray debelo črevo NSArray 123 00:07:10,360 --> 00:07:13,240 matrika, če si hotel samo metodo da je potrebno v enem argumentu. 124 00:07:13,240 --> 00:07:13,677 Da, vprašanje. 125 00:07:13,677 --> 00:07:18,701 >> PUBLIKA: Ali sta NSUInteger in NSArray argumenti, ki jih je mogoče sprejeti v 126 00:07:18,701 --> 00:07:21,530 v NSArray? 127 00:07:21,530 --> 00:07:22,060 >> RHED SHI: Da. 128 00:07:22,060 --> 00:07:23,400 Torej, naj ti razložim. 129 00:07:23,400 --> 00:07:23,790 Torej, ja. 130 00:07:23,790 --> 00:07:30,260 Torej je vprašanje, so NSUInteger in NSArray * tipov argumentov, 131 00:07:30,260 --> 00:07:31,570 in to je pravilno. 132 00:07:31,570 --> 00:07:35,700 Torej, ste si vedno želeli, da določite, kaj tip je argument. 133 00:07:35,700 --> 00:07:41,570 In tukaj, sem poskušal, da vam predstavim z nekaterimi sintakso in vocab leta 134 00:07:41,570 --> 00:07:45,910 Objective-C, tako tistih, ki so dejanske vrste da boste opravka. 135 00:07:45,910 --> 00:07:48,970 >> In kot boste opazili, nizi ni več, vrsta, 136 00:07:48,970 --> 00:07:50,780 preproste bracket stvari. 137 00:07:50,780 --> 00:07:52,060 Oni so predmeti. 138 00:07:52,060 --> 00:07:56,700 Čeprav, če gremo na naslednjo slide, lahko vidimo, da smo lahko 139 00:07:56,700 --> 00:08:02,510 hard-code NSArray v Objective-C, preprosto simbola na pred 140 00:08:02,510 --> 00:08:04,190 oklepajih. 141 00:08:04,190 --> 00:08:08,650 Nisem, pravzaprav povsem prepričani, ali I skladenjsko težko kodiran niz 142 00:08:08,650 --> 00:08:16,020 pravilno za različico C, ampak to je naj bi bilo v C matriko. 143 00:08:16,020 --> 00:08:19,760 >> Torej, to je, kako bi, saj veš, morda uporabljajo funkcije ali 144 00:08:19,760 --> 00:08:21,990 metode, ki smo jih ustvarili prej. 145 00:08:21,990 --> 00:08:22,250 Kajne? 146 00:08:22,250 --> 00:08:25,340 Torej, to je, če smo se razglasi našo Funkcija in naš način. 147 00:08:25,340 --> 00:08:28,020 In zdaj smo želeli, da jih uporabljajo v Naš program, in to 148 00:08:28,020 --> 00:08:29,450 kako bi to naredil. 149 00:08:29,450 --> 00:08:32,400 Torej, v C, bi imeli, saj veš, morda, int b, in jo nastavite na 150 00:08:32,400 --> 00:08:36,549 enako funkcijo, in nato podaš v argumentov. 151 00:08:36,549 --> 00:08:39,190 >> V Objective-C, to je precej precej isto stvar. 152 00:08:39,190 --> 00:08:43,370 Imate NSArray * my_array, in to je bo enaka - sedaj, le 153 00:08:43,370 --> 00:08:47,460 Razlika je ta objekt stvar, ki sem jih izpostavila v rumeno in 154 00:08:47,460 --> 00:08:51,180 kot lahko vidite, v C pa je nobena druga rumena beseda. 155 00:08:51,180 --> 00:08:54,170 In to zato, ker pripadajo metode z določenega objekta. 156 00:08:54,170 --> 00:08:59,800 Tako da je, zakaj moram imeti predmeta da, nekako, zahteva ta metoda 157 00:08:59,800 --> 00:09:04,360 število nič, in nato NSArray, b, c, d. 158 00:09:04,360 --> 00:09:05,350 Kakršna koli vprašanja o tem? 159 00:09:05,350 --> 00:09:12,190 >> Bomo videli, te koncepte v akciji Kmalu, ko smo šli v demo. 160 00:09:12,190 --> 00:09:13,400 OK. 161 00:09:13,400 --> 00:09:17,170 Zdaj bi rad govoril malo na kratko o Xcode 5, ki je 162 00:09:17,170 --> 00:09:21,160 integrirano razvojno okolje da boste delali z. 163 00:09:21,160 --> 00:09:26,160 Vem, da vas veliko, ali pa nekateri izmed vas, nimajo Mac, ki je problem 164 00:09:26,160 --> 00:09:30,490 ker Xcode ni na voljo za Windows in PC. 165 00:09:30,490 --> 00:09:32,785 Ne vprašajte me zakaj, ampak verjetno - 166 00:09:32,785 --> 00:09:33,730 Ja, corporate. 167 00:09:33,730 --> 00:09:35,290 Karkoli. 168 00:09:35,290 --> 00:09:39,360 Ampak vseeno, zato se opravičujem, če nekateri imate, da prenesete neke vrste 169 00:09:39,360 --> 00:09:43,000 virtualni stroj za Mac v Da teči Xcode 5. 170 00:09:43,000 --> 00:09:46,460 Ampak to je zelo eleganten programske opreme za uporabo. 171 00:09:46,460 --> 00:09:51,280 >> In tako, preden se potopite v kakršno koli iz demo, samo želim, da vam je pokazal 172 00:09:51,280 --> 00:09:55,700 sliko o tem, kaj Xcode izgleda v vašem okno, nato pa govori tudi o 173 00:09:55,700 --> 00:09:57,670 kaj ves ta prostor. 174 00:09:57,670 --> 00:10:01,600 Torej, to je nekako tako kot za učenje, kako uporabljate Microsoft Word, razen hočeš 175 00:10:01,600 --> 00:10:04,675 se seznanijo z vsemi različnih stvari, ki 176 00:10:04,675 --> 00:10:06,250 se dogaja. 177 00:10:06,250 --> 00:10:11,160 >> Torej, najprej sem te hotel opozoriti na orodni vrstici na vrhu. 178 00:10:11,160 --> 00:10:14,450 Videli boste, da je na vrhu, boste morali ime datoteke - 179 00:10:14,450 --> 00:10:18,100 ali, pravzaprav ime vašega projekta in potem ti je ime datoteke. 180 00:10:18,100 --> 00:10:20,940 Se seznani z igro in Gumbi za zaustavitev. 181 00:10:20,940 --> 00:10:24,210 To so tisti, ki se boste uporabo zagnati aplikacijo na 182 00:10:24,210 --> 00:10:25,600 Simulator - 183 00:10:25,600 --> 00:10:26,550 iOS simulator. 184 00:10:26,550 --> 00:10:29,940 To avtomatično prihaja z Xcode 5, tako da vam ni treba skrbeti, 185 00:10:29,940 --> 00:10:32,070 prenos neke vrste simulatorja. 186 00:10:32,070 --> 00:10:34,700 Šele, ko pritisnete igro in nato teče vaš app. 187 00:10:34,700 --> 00:10:39,230 In si lahko igral z vami, in boste videli, kako deluje kasneje. 188 00:10:39,230 --> 00:10:42,690 >> In nato, v sredini, je seveda kjer vse vaše lepe koda 189 00:10:42,690 --> 00:10:44,240 bo šel. 190 00:10:44,240 --> 00:10:48,340 In potem, na levi strani, boste še to, nekako, mapa - 191 00:10:48,340 --> 00:10:50,340 navigacija - 192 00:10:50,340 --> 00:10:53,970 in potem, boste tudi videli, da skupaj s simbolom mape, obstaja 193 00:10:53,970 --> 00:10:57,680 kup drugih ikon tam, da bo koristno kasneje. 194 00:10:57,680 --> 00:11:04,710 >> In potem, na desni strani je uporabnost področje, kjer lahko delate z 195 00:11:04,710 --> 00:11:09,620 nekatere predmete in navedite, vas Veš, kaj bi morala barva, kaj 196 00:11:09,620 --> 00:11:12,040 pisava Besedilo mora biti, et cetera. 197 00:11:12,040 --> 00:11:15,890 Čeprav je vse, kar si naredil na območju, utility, lahko 198 00:11:15,890 --> 00:11:17,480 storiti v kodi, kot dobro. 199 00:11:17,480 --> 00:11:21,630 In tako bom šel skozi dve primeri uporabe, preprosto, brez kode na 200 00:11:21,630 --> 00:11:23,730 vse - ali zelo majhna številka, - 201 00:11:23,730 --> 00:11:28,290 verzi vso programsko kodo, samo zato, da vi veste, kaj lahko in česa ne, v 202 00:11:28,290 --> 00:11:29,260 Xcode in Objective-C. 203 00:11:29,260 --> 00:11:32,770 >> In nato, končno, navzdol na dnu, imate prostor za odpravljanje napak. 204 00:11:32,770 --> 00:11:37,270 Torej, vam ni treba več teči GDB, et cetera, za programe. 205 00:11:37,270 --> 00:11:39,180 To samodejno naredi za vas. 206 00:11:39,180 --> 00:11:42,880 In si lahko tudi natisnete stvari na tem področju. 207 00:11:42,880 --> 00:11:46,790 Torej dejansko, kasneje pa bomo šli skozi mario.c, če vi še spomnite 208 00:11:46,790 --> 00:11:49,000 da v Xcode. 209 00:11:49,000 --> 00:11:50,360 Tako da bi moralo biti zabavno. 210 00:11:50,360 --> 00:11:55,870 >> In potem, samo, da ga pripelje nazaj Objective-C, želim poudariti, kaj 211 00:11:55,870 --> 00:11:57,440 lahko to storite z IF stavkov. 212 00:11:57,440 --> 00:12:03,160 Torej, veš, ker Objective-C je nadgradnja C, vse, kar morate storiti, je, 213 00:12:03,160 --> 00:12:06,890 dobesedno, enako kot C. Ravnokar ste imajo majhne razlike. 214 00:12:06,890 --> 00:12:10,810 Torej, boste opazili obrazec za, če Izjava je še vedno isti - moraš 215 00:12:10,810 --> 00:12:14,280 če je, potem imate oklepaje z stanje znotraj, ga nato 216 00:12:14,280 --> 00:12:17,150 zaviti oklepaji za karkoli želeli narediti znotraj tam. 217 00:12:17,150 --> 00:12:21,680 >> Vendar pa sem hotel dati to stran gor Tukaj, preprosto za ponazoritev, da 218 00:12:21,680 --> 00:12:25,680 zato, ker imamo opravka s predmeti zdaj, bomo morali uporabiti te stvari 219 00:12:25,680 --> 00:12:31,240 imenovana kot, enak niz, ki je po naključju, metoda 220 00:12:31,240 --> 00:12:33,710 niz ali NSString objekt. 221 00:12:33,710 --> 00:12:38,600 Torej, beseda, v tem primeru, je NSString nasprotujejo, in ima metodo, imenovano je 222 00:12:38,600 --> 00:12:44,150 enak niz, nato pa bomo mimo v trdi kodiran niz za prikaz 223 00:12:44,150 --> 00:12:48,110 ali so tisti, ki je enaka med seboj. 224 00:12:48,110 --> 00:12:51,580 >> Kakšna vprašanja? 225 00:12:51,580 --> 00:12:52,440 OK. 226 00:12:52,440 --> 00:12:56,190 In hočem, da gredo čez za tako izjavo. 227 00:12:56,190 --> 00:13:01,420 >> Tako, na primer, če bi želeli zanke po dolžini niza v C, to 228 00:13:01,420 --> 00:13:03,710 morajo biti seznanjeni s tabo. 229 00:13:03,710 --> 00:13:07,840 In v Objective-C, ne želim izpostaviti to, nekako, 230 00:13:07,840 --> 00:13:09,235 Metoda se imenuje število. 231 00:13:09,235 --> 00:13:13,260 232 00:13:13,260 --> 00:13:15,550 No, pravzaprav, kaj mi vzemite nazaj. 233 00:13:15,550 --> 00:13:17,200 Štetje je metoda matrike. 234 00:13:17,200 --> 00:13:21,070 Vendar pa je to še posebej lastnost polja, ki je, zakaj ste 235 00:13:21,070 --> 00:13:22,380 Lahko uporabite dot zapis. 236 00:13:22,380 --> 00:13:25,870 Vendar ne želim, da bi dobili v preveč Ta konceptualni stvari, samo želim, 237 00:13:25,870 --> 00:13:30,140 da vam pokaže, kako bi stvari videti kot v Objective-C v primerjavi C. 238 00:13:30,140 --> 00:13:35,400 >> In tudi jaz želim poudariti, da čeprav sem bil z uporabo NSUInteger 239 00:13:35,400 --> 00:13:39,860 Pred vsemi mojimi i-ih v Objective-C, lahko uporabite tudi int, int, ker je 240 00:13:39,860 --> 00:13:42,290 v celoti velja v Objective-C, prav tako. 241 00:13:42,290 --> 00:13:42,475 Ja? 242 00:13:42,475 --> 00:13:44,350 >> PUBLIKA: Ali je to samo slogovna, ali je - 243 00:13:44,350 --> 00:13:44,760 >> RHED SHI: Ja. 244 00:13:44,760 --> 00:13:46,060 Torej, kot boste videli - 245 00:13:46,060 --> 00:13:49,390 Tako je bilo vprašanje je, da samo stilistično vprašanje. 246 00:13:49,390 --> 00:13:54,820 Kot boste videli, da imam, nekako, zvezda zvezdica stvar navzdol na dnu, ter 247 00:13:54,820 --> 00:13:59,870 ta povezava vas popelje do Stack Overflow oblikujejo, kadar nekdo razloži 248 00:13:59,870 --> 00:14:03,640 Razlika med int pri NSInteger in NSUInteger. 249 00:14:03,640 --> 00:14:05,540 In tako, si lahko preberete več o tem kasneje. 250 00:14:05,540 --> 00:14:07,640 Te diapozitivi bo, seveda, so vam na voljo. 251 00:14:07,640 --> 00:14:10,300 252 00:14:10,300 --> 00:14:11,280 >> Pa poglejmo. 253 00:14:11,280 --> 00:14:12,150 OK, super. 254 00:14:12,150 --> 00:14:15,410 Torej, je to vključeno tudi v diapozitiv ker sem mislil, da je to velik 255 00:14:15,410 --> 00:14:19,370 Spletna stran, ki vam predstavi za Objective-C sintakso. 256 00:14:19,370 --> 00:14:24,410 Torej, pravzaprav, zakaj ne gremo na Chrome in si oglejte to spletno stran? 257 00:14:24,410 --> 00:14:30,650 258 00:14:30,650 --> 00:14:31,300 >> Prav. 259 00:14:31,300 --> 00:14:36,670 Torej, kaj bi rad, da ti pokažem Fantje tukaj je ta podoba. 260 00:14:36,670 --> 00:14:41,630 Torej, to je, nekako, bo kaj boste videli notranjost koli 261 00:14:41,630 --> 00:14:42,890 Xcode datoteke. 262 00:14:42,890 --> 00:14:47,400 263 00:14:47,400 --> 00:14:51,430 Pravzaprav, zakaj ne vzemite trenutek, da, nekako, da to prijavite 264 00:14:51,430 --> 00:14:53,470 >> Torej, ta knjiga - 265 00:14:53,470 --> 00:14:55,880 To je objekt, ki imamo opravka. 266 00:14:55,880 --> 00:14:59,680 In potem, to je očitno bo podedovali iz kakšnega drugega predmeta, vendar 267 00:14:59,680 --> 00:15:01,810 vam ni treba skrbeti za to. 268 00:15:01,810 --> 00:15:04,430 In potem je morda ima nekatere spremenljivke članice. 269 00:15:04,430 --> 00:15:09,160 >> Važno Rad bi vam pokazal, je metode, na primer, tukaj. 270 00:15:09,160 --> 00:15:12,670 Torej, so metode primerka označeni s tem negativnim predznakom. 271 00:15:12,670 --> 00:15:15,550 In potem, kot boste opazili, da smo že začenjajo videti paradigmo 272 00:15:15,550 --> 00:15:17,670 izjava metodo, kajne? 273 00:15:17,670 --> 00:15:22,670 Tip donos, ime metode, in potem tip argumenta in 274 00:15:22,670 --> 00:15:24,660 nato ime argumenta. 275 00:15:24,660 --> 00:15:29,090 In ta minus pomeni, da je Postopek primer, kar pomeni, da 276 00:15:29,090 --> 00:15:32,270 Te metode so na voljo le predmeti, ki so bili uporabiti. 277 00:15:32,270 --> 00:15:35,050 278 00:15:35,050 --> 00:15:39,100 >> Za kontrast, ki, metode s plusom prijavite se pred njimi so razred 279 00:15:39,100 --> 00:15:43,640 metode, kar pomeni, da lahko pokličete te metode, tudi če nimate 280 00:15:43,640 --> 00:15:45,970 še predmet ustvarjen. 281 00:15:45,970 --> 00:15:51,600 Torej, za jasen primer, NSString je razred. 282 00:15:51,600 --> 00:15:55,850 In lahko pokličete, na primer, Metode razreda na NSString - 283 00:15:55,850 --> 00:15:58,660 Dejansko, kot, beseda NSString. 284 00:15:58,660 --> 00:16:02,050 >> Vendar pa je, da za uporabo teh Metode, ki jih dejansko 285 00:16:02,050 --> 00:16:03,460 morali ustvariti niz. 286 00:16:03,460 --> 00:16:08,980 Na primer, NSString zvezda niz enak na narekovajem, zdravo svet. 287 00:16:08,980 --> 00:16:10,910 In potem, lahko uporabite te metode - 288 00:16:10,910 --> 00:16:11,990 Metode primer - 289 00:16:11,990 --> 00:16:14,790 o tem Hello World nizu. 290 00:16:14,790 --> 00:16:17,825 Tako, da je razlika med metode stopnje in metode razreda. 291 00:16:17,825 --> 00:16:20,390 292 00:16:20,390 --> 00:16:21,930 >> In, pravkar smo pokriti ta del. 293 00:16:21,930 --> 00:16:25,300 294 00:16:25,300 --> 00:16:33,750 Lastnosti so še ena stvar, ki so Notranjost predmetov, v bistvu. 295 00:16:33,750 --> 00:16:37,530 In jih razglasi z na nepremičnino ključno besedo. 296 00:16:37,530 --> 00:16:39,940 Imate te možnosti, tukaj, da bom razložil kasneje, ko 297 00:16:39,940 --> 00:16:43,110 gremo v demo. 298 00:16:43,110 --> 00:16:43,660 Ja? 299 00:16:43,660 --> 00:16:43,950 Zdravo. 300 00:16:43,950 --> 00:16:45,440 >> PUBLIKA: Bi lahko povečate, prosim? 301 00:16:45,440 --> 00:16:46,130 >> RHED SHI: Oh ja. 302 00:16:46,130 --> 00:16:46,560 Žal mi je. 303 00:16:46,560 --> 00:16:49,140 >> PUBLIKA: Hvala. 304 00:16:49,140 --> 00:16:50,005 >> RHED SHI: To bi bilo veliko bolje. 305 00:16:50,005 --> 00:16:51,240 >> OBČINSTVO: Ja. 306 00:16:51,240 --> 00:16:53,940 Hvala vam. 307 00:16:53,940 --> 00:16:56,815 >> RHED SHI: Ja, prosim, me spomni, če Pozabil sem, da povečate ali pomanjšate. 308 00:16:56,815 --> 00:17:00,590 309 00:17:00,590 --> 00:17:03,570 Torej, to je vse, kar sem želel da ti pokažem za - 310 00:17:03,570 --> 00:17:05,970 vau, to je veliko - 311 00:17:05,970 --> 00:17:06,790 za to spletno stran. 312 00:17:06,790 --> 00:17:12,210 Torej, vrnimo se na naše diapozitive. 313 00:17:12,210 --> 00:17:17,819 >> Pravzaprav, zdaj pa si vzemite trenutek da se potopite v demo. 314 00:17:17,819 --> 00:17:25,490 Torej, bomo začeli z Novi projekt Xcode. 315 00:17:25,490 --> 00:17:33,040 Torej, če boste odprli Xcode na vseh vaše naprave, bi si vzamete nekaj 316 00:17:33,040 --> 00:17:36,720 stran, kjer piše, kot so, bodisi odprt do obstoječega projekta ali novo 317 00:17:36,720 --> 00:17:39,230 projekt, zato bi morali kliknite nov projekt. 318 00:17:39,230 --> 00:17:41,477 In potem, bi morala biti si na ta zaslon. 319 00:17:41,477 --> 00:17:41,593 Ja? 320 00:17:41,593 --> 00:17:44,279 >> PUBLIKA: Če ne bomo imeli Mac, mi smo nekako umiri? 321 00:17:44,279 --> 00:17:46,870 >> RHED SHI: Ali pa poglej na z nekom, ja. 322 00:17:46,870 --> 00:17:47,740 Ja. 323 00:17:47,740 --> 00:17:50,660 Lahko se umiri, preveč. 324 00:17:50,660 --> 00:17:51,570 OK. 325 00:17:51,570 --> 00:17:55,410 >> Torej, kaj bomo storili prvič, zdaj, je, pravzaprav, bomo storili 326 00:17:55,410 --> 00:17:56,600 enoten pogled na vloge. 327 00:17:56,600 --> 00:18:01,340 Torej, če boste opazili, kaj je super o Xcode in Apple podpore 328 00:18:01,340 --> 00:18:05,690 razvijalci je, da imate veliko Predloge za delo z že. 329 00:18:05,690 --> 00:18:09,210 Lahko bi, na primer, da master-detail aplikacije. 330 00:18:09,210 --> 00:18:10,920 Lahko naredite igro - 331 00:18:10,920 --> 00:18:13,860 in dejansko, ne bom se spuščal v igrah, ker so igre drugačna zgodba 332 00:18:13,860 --> 00:18:15,320 za razvoj iOS. 333 00:18:15,320 --> 00:18:18,930 In oni so nekako ločiti, tako da ne bom šel v to. 334 00:18:18,930 --> 00:18:22,580 >> Potem, ko ste na osnovi stran aplikacije. 335 00:18:22,580 --> 00:18:24,010 Imate aplikacijo zavihek - 336 00:18:24,010 --> 00:18:29,350 tako všeč, na primer Bank of America Verjetno je, recimo, zavihki app. 337 00:18:29,350 --> 00:18:32,140 To je tisti, kjer imate gumbi na dnu. 338 00:18:32,140 --> 00:18:34,750 In potem imate Sprite Kit igro. 339 00:18:34,750 --> 00:18:38,670 >> Ali lahko delate iz nič, kar je tisto, kar bomo storili kasneje. 340 00:18:38,670 --> 00:18:42,470 Ampak kaj je, prvič, začnite z enoten pogled na vloge. 341 00:18:42,470 --> 00:18:48,590 Nato vas bo vprašal za ime izdelka, in bomo lahko samo naredi test. 342 00:18:48,590 --> 00:18:50,190 Ime organizacije - 343 00:18:50,190 --> 00:18:54,140 Tako, ime organizacije, identifikator podjetje - 344 00:18:54,140 --> 00:18:58,100 tistih, ki so pomembne, če greste da vaš app na App Store. 345 00:18:58,100 --> 00:19:01,110 346 00:19:01,110 --> 00:19:05,116 Razen, da je vaša koda se bo teči v najlepšem redu brez tega. 347 00:19:05,116 --> 00:19:09,940 >> To bo pomembno, če ti želeli - tako, per se, kot, da vaš app 348 00:19:09,940 --> 00:19:14,080 na telefon ali kaj podobnega, in preizkus ven, saj veš, v resničnem življenju - 349 00:19:14,080 --> 00:19:15,360 To bo pomembno. 350 00:19:15,360 --> 00:19:20,110 To kaže, da je običajno povezana z neke vrste developer računa 351 00:19:20,110 --> 00:19:20,970 z Apple. 352 00:19:20,970 --> 00:19:24,740 >> In tako, vem, verjetno, da vas veliko ne bo imel razvijalec računov. 353 00:19:24,740 --> 00:19:26,460 Vem, da univerza ima eno. 354 00:19:26,460 --> 00:19:27,630 Mislim, CS ima. 355 00:19:27,630 --> 00:19:32,770 Vendar pa lahko email mi in jaz bom poskusil da ugotovimo, da je za vas. 356 00:19:32,770 --> 00:19:38,210 Toda zdaj sem samo dal v nekaj ograd stvari tukaj. 357 00:19:38,210 --> 00:19:41,250 >> In lahko, seveda, tukaj, izberite ali želite, da je samo v 358 00:19:41,250 --> 00:19:44,410 iPhone v iPad, ali oboje - 359 00:19:44,410 --> 00:19:46,630 univerzalna uporaba. 360 00:19:46,630 --> 00:19:56,170 Torej, za zdaj, naredimo univerzalni, samo videti obe strani platforme. 361 00:19:56,170 --> 00:19:57,120 >> Pa poglejmo. 362 00:19:57,120 --> 00:20:01,510 Torej, zdaj, grem, da shranite je v neke vrste mape. 363 00:20:01,510 --> 00:20:04,500 Ni važno, kje - ti Vedno lahko premaknete pozneje. 364 00:20:04,500 --> 00:20:09,380 In sedaj, smo pripeljali na naši Xcode projekta. 365 00:20:09,380 --> 00:20:12,890 Jaz ne bi skrbeti za vse to. 366 00:20:12,890 --> 00:20:17,510 Jaz bi predlagal, da ne dotika katerega koli od to, če veš, kaj 367 00:20:17,510 --> 00:20:18,260 delaš. 368 00:20:18,260 --> 00:20:21,750 Torej, vse to, kar ignorirati večinoma. 369 00:20:21,750 --> 00:20:26,940 Vam ne bo potrebno dotakniti, in če Ali menite, nered nekaj stvari tukaj, da 370 00:20:26,940 --> 00:20:28,600 postane precej zapleteno. 371 00:20:28,600 --> 00:20:32,480 >> Torej, zakaj ne gledamo v datoteke na 372 00:20:32,480 --> 00:20:34,700 leva stran v našem navigator. 373 00:20:34,700 --> 00:20:37,060 Tukaj imamo AppDelegate.h. 374 00:20:37,060 --> 00:20:43,430 Imamo AppDelegate.m je tako, kot boste Obvestilo smo header datoteke, ki 375 00:20:43,430 --> 00:20:45,720 konča v dot h, in imamo Izvajanje - 376 00:20:45,720 --> 00:20:46,970 pravzaprav, mi zoom noter 377 00:20:46,970 --> 00:20:56,270 378 00:20:56,270 --> 00:20:57,060 OK. 379 00:20:57,060 --> 00:20:59,940 Dovolite mi, da povečate prijavite 380 00:20:59,940 --> 00:21:05,810 >> Dobro, da ste header datoteke in imate izvajanju datotek. 381 00:21:05,810 --> 00:21:07,060 Pravzaprav - 382 00:21:07,060 --> 00:21:08,680 383 00:21:08,680 --> 00:21:09,240 OK. 384 00:21:09,240 --> 00:21:11,800 To je malo čudno, vendar nosijo s seboj. 385 00:21:11,800 --> 00:21:16,140 Potem pa, ker smo izbrali en sam pogled prošnja, da bomo lahko 386 00:21:16,140 --> 00:21:17,340 delo s snemalno knjigo. 387 00:21:17,340 --> 00:21:22,140 >> Torej, storyboard je nekaj, kar Apple je prišel gor, da resnično pomagajo 388 00:21:22,140 --> 00:21:26,550 razvijalci hitro izdelavo prototipa njihove vloge. 389 00:21:26,550 --> 00:21:29,410 Torej, to je, kjer si lahko ustvarite app brez pisanja 390 00:21:29,410 --> 00:21:31,710 ene vrstice kode. 391 00:21:31,710 --> 00:21:35,390 Vendar pa se v našem enem pogledu uporabe, nam, seveda, imajo 392 00:21:35,390 --> 00:21:41,270 datoteke za po našem mnenju, ki je krmilnik pogled. 393 00:21:41,270 --> 00:21:45,150 Torej, imamo glavo in Izvajanje datoteka, tukaj. 394 00:21:45,150 --> 00:21:52,350 >> In bom pomanjšanje sedaj, saj bomo morali delati v snemalni knjigi. 395 00:21:52,350 --> 00:21:55,190 Torej, tukaj je naš pogled. 396 00:21:55,190 --> 00:22:00,120 Če želimo, preprosto zaženite aplikacijo prav zdaj, ni veliko razburljivo dogaja. 397 00:22:00,120 --> 00:22:03,270 398 00:22:03,270 --> 00:22:05,040 Torej, boste videli ta beli zaslon. 399 00:22:05,040 --> 00:22:06,110 OK? 400 00:22:06,110 --> 00:22:14,010 >> In v našem področju gospodarskih javnih služb, lahko dodamo kup različnih stvari z njo. 401 00:22:14,010 --> 00:22:19,290 Torej, ko imate opravka z zasloni v iOS, krmilniki pogled so 402 00:22:19,290 --> 00:22:23,150 predmeti, ki jih zajame, nekako, vaše mnenje. 403 00:22:23,150 --> 00:22:26,980 Torej, krmilnik pogled vedno je lastnost, imenovano pogled. 404 00:22:26,980 --> 00:22:29,610 In da je pogled, običajno vsebuje, Veš, kaj si 405 00:22:29,610 --> 00:22:30,810 želeli videti na zaslonu. 406 00:22:30,810 --> 00:22:39,210 >> Torej, dobro, Začniva s tem da, Morda, morda nalepka. 407 00:22:39,210 --> 00:22:41,450 Torej, kaj je dal nalepko na tam - 408 00:22:41,450 --> 00:22:44,080 ga držijo v sredini. 409 00:22:44,080 --> 00:22:49,560 Torej, zdaj, ko sem kliknil na etiketi, I Lahko greš v lastnosti inšpektorja 410 00:22:49,560 --> 00:22:51,510 in začeti spreminjati svoje vrednosti. 411 00:22:51,510 --> 00:22:55,040 Recimo ji CS50 barve. 412 00:22:55,040 --> 00:22:58,220 >> In sem se lahko spremeni tudi pisavo. 413 00:22:58,220 --> 00:23:02,630 Torej, namesto da bi sistem, ki je privzeto, lahko naredimo eno po meri. 414 00:23:02,630 --> 00:23:03,770 Mi lahko spremenite - 415 00:23:03,770 --> 00:23:06,453 Veš, UltraLight, da bo 32. 416 00:23:06,453 --> 00:23:09,000 417 00:23:09,000 --> 00:23:11,370 In potem bomo lahko naše okno večji. 418 00:23:11,370 --> 00:23:14,410 >> PUBLIKA: Ali mislite, da lahko povečate V samo nekaj več, morda? 419 00:23:14,410 --> 00:23:14,810 >> RHED SHI: Ja? 420 00:23:14,810 --> 00:23:16,196 OK. 421 00:23:16,196 --> 00:23:17,450 >> PUBLIKA: Samo dotaknite? 422 00:23:17,450 --> 00:23:19,020 >> RHED SHI: Pa poglejmo. 423 00:23:19,020 --> 00:23:20,382 Ali to delo? 424 00:23:20,382 --> 00:23:22,270 >> PUBLIKA: Samo mimo Xcode? 425 00:23:22,270 --> 00:23:23,520 >> RHED SHI: Seveda. 426 00:23:23,520 --> 00:23:25,620 427 00:23:25,620 --> 00:23:25,940 OK. 428 00:23:25,940 --> 00:23:26,275 Super. 429 00:23:26,275 --> 00:23:27,072 >> PUBLIKA: nalepka pod? 430 00:23:27,072 --> 00:23:28,920 Nalepka? 431 00:23:28,920 --> 00:23:29,480 >> RHED SHI: Kaj je to? 432 00:23:29,480 --> 00:23:32,050 >> PUBLIKA: Kaj drop-down je nalepka pod? 433 00:23:32,050 --> 00:23:35,170 >> RHED SHI: Torej, je bilo vprašanje, kaj drop-down je nalepka pod? 434 00:23:35,170 --> 00:23:37,260 To bi bilo preprosto, pod tukaj. 435 00:23:37,260 --> 00:23:39,330 Mislim, da je kocka stvar. 436 00:23:39,330 --> 00:23:40,910 Ampak ponavadi, to je privzeta - 437 00:23:40,910 --> 00:23:43,250 Grem dol dokler ne najdem oznake. 438 00:23:43,250 --> 00:23:45,800 439 00:23:45,800 --> 00:23:47,730 Ja. 440 00:23:47,730 --> 00:23:48,950 >> Torej, zdaj imamo etiketo. 441 00:23:48,950 --> 00:23:51,040 Greva na sredino. 442 00:23:51,040 --> 00:23:56,410 In Xcode nam daje smernice za centriranje predmetov. 443 00:23:56,410 --> 00:23:59,510 444 00:23:59,510 --> 00:24:01,480 Torej, zdaj pa znova zagnati našo kodo. 445 00:24:01,480 --> 00:24:08,110 446 00:24:08,110 --> 00:24:08,800 >> Takole. 447 00:24:08,800 --> 00:24:10,310 Torej, imamo CS50 barve. 448 00:24:10,310 --> 00:24:13,720 449 00:24:13,720 --> 00:24:15,420 In zdaj, kaj je dal na gumb tam, kajne? 450 00:24:15,420 --> 00:24:17,480 Ker želimo, da bi To interaktivno. 451 00:24:17,480 --> 00:24:19,410 Torej, kaj je dal gumb tukaj. 452 00:24:19,410 --> 00:24:39,020 In bomo to imenujemo gumb "Kliknite tu za nadaljevanje. "Mi bomo osredotočali tudi 453 00:24:39,020 --> 00:24:39,990 Pravzaprav, to je že v sredini. 454 00:24:39,990 --> 00:24:40,630 Ja. 455 00:24:40,630 --> 00:24:43,130 >> Torej, zdaj imamo gumb. 456 00:24:43,130 --> 00:24:53,000 In če bomo spet teči to, gremo da imajo lepo malo gumb tukaj. 457 00:24:53,000 --> 00:24:56,520 In sem lahko kliknete, vendar tega ne naredi karkoli, ker nismo storili 458 00:24:56,520 --> 00:24:58,500 karkoli z gumbom še. 459 00:24:58,500 --> 00:25:01,740 >> Torej, da ustvarite nov pogled, kajne? 460 00:25:01,740 --> 00:25:04,160 Torej, recimo, da želim, da se dotaknete da gumb in želim, da 461 00:25:04,160 --> 00:25:05,730 pojdite na drugo stran - 462 00:25:05,730 --> 00:25:06,820 še en pogled. 463 00:25:06,820 --> 00:25:14,440 Kaj bom storiti, je, da lahko ustvarite krmilnik pogled, kajne? 464 00:25:14,440 --> 00:25:19,690 Zdaj bom kliknite na gumb moji, in nato, Važno je, da bom 465 00:25:19,690 --> 00:25:20,910 klik - ali - 466 00:25:20,910 --> 00:25:23,660 Ja, pritisnite nadzor na moji tipkovnici. 467 00:25:23,660 --> 00:25:24,880 Control. 468 00:25:24,880 --> 00:25:27,005 Kliknite na gumb in povlecite. 469 00:25:27,005 --> 00:25:29,960 470 00:25:29,960 --> 00:25:33,550 >> Torej, ne pozabite, da držite tipko za upravljanje. 471 00:25:33,550 --> 00:25:35,160 Dajva še enkrat. 472 00:25:35,160 --> 00:25:40,930 Torej, imajo nadzor, kliknite in povlecite na tisto, kar želite narediti. 473 00:25:40,930 --> 00:25:41,520 OK. 474 00:25:41,520 --> 00:25:43,610 >> In zdaj, imam več možnosti tukaj. 475 00:25:43,610 --> 00:25:47,900 Ne morem niti potiskanje, ali lahko storim modal, ali lahko storim meri. 476 00:25:47,900 --> 00:25:50,900 Push le, če imate navigacijski krmilnik. 477 00:25:50,900 --> 00:25:54,270 Zdaj je naša zelo prvi pogled krmilnik ne znotraj kateremkoli 478 00:25:54,270 --> 00:25:55,610 navigacijski krmilnik. 479 00:25:55,610 --> 00:25:59,500 Torej, krmilnik navigacija je ena ki vam daje nazaj gumb na 480 00:25:59,500 --> 00:26:03,910 iOS app, kjer ste, veste, da je top, nekako, debela bar - 481 00:26:03,910 --> 00:26:06,480 kjer lahko greš nazaj, ali naprej, in tako naprej. 482 00:26:06,480 --> 00:26:07,740 Zdaj nimam tega. 483 00:26:07,740 --> 00:26:11,050 In tako, da je, zakaj ne morem narediti push. 484 00:26:11,050 --> 00:26:12,480 >> Torej, sem kliknil na pritiskom naključju, sem. 485 00:26:12,480 --> 00:26:16,480 In dejansko, tekajmo kodo, in naj bi crash na mene. 486 00:26:16,480 --> 00:26:19,770 487 00:26:19,770 --> 00:26:22,960 Samo, če sem pritisnite gumb čeprav, tako - 488 00:26:22,960 --> 00:26:23,420 prav. 489 00:26:23,420 --> 00:26:26,480 Torej, to je slabo. 490 00:26:26,480 --> 00:26:31,330 >> In, kot lahko vidite, tu smo še sporočilo o napaki. 491 00:26:31,330 --> 00:26:35,460 Tako lahko, "se sme uporabljati le Push segues ko vir krmilnik upravlja 492 00:26:35,460 --> 00:26:40,700 primerek UI navigacijski krmilnik. " Torej, ker to ni bil znotraj 493 00:26:40,700 --> 00:26:44,030 navigacijski krmilnik, Nisem mogel storiti. 494 00:26:44,030 --> 00:26:48,782 >> Torej, zdaj, grem nazaj mapa, vrača v snemalni knjigi. 495 00:26:48,782 --> 00:26:51,680 >> PUBLIKA: Kaj je navigacija krmilnik, spet? 496 00:26:51,680 --> 00:26:55,260 >> RHED SHI: Torej, zdaj ti bom pokazal. 497 00:26:55,260 --> 00:26:56,200 Pa poglejmo. 498 00:26:56,200 --> 00:27:00,510 Torej, jaz grem, da kliknete na ta pogled krmilnik, nato pa bom šel 499 00:27:00,510 --> 00:27:03,920 do izdelka - 500 00:27:03,920 --> 00:27:06,240 pravzaprav ne, žal - urednik. 501 00:27:06,240 --> 00:27:08,360 In jaz grem v - 502 00:27:08,360 --> 00:27:09,350 Pravzaprav sem kliknite na to? 503 00:27:09,350 --> 00:27:10,070 Ne 504 00:27:10,070 --> 00:27:11,080 Takole. 505 00:27:11,080 --> 00:27:16,270 Jaz grem gor v urejevalniku, dol vlagati v, in nato navigacija 506 00:27:16,270 --> 00:27:17,520 krmilnik. 507 00:27:17,520 --> 00:27:20,130 508 00:27:20,130 --> 00:27:20,720 >> OK. 509 00:27:20,720 --> 00:27:27,750 In moj delovni prostor zgleda res grdo, tako da je čist to gor. 510 00:27:27,750 --> 00:27:29,000 Torej, vse to je storyboard. 511 00:27:29,000 --> 00:27:32,510 512 00:27:32,510 --> 00:27:33,760 In na ta način - 513 00:27:33,760 --> 00:27:37,030 514 00:27:37,030 --> 00:27:38,280 OK, stop - 515 00:27:38,280 --> 00:27:49,320 516 00:27:49,320 --> 00:27:50,860 Jaz lahko hitro zgraditi nekaj kot je ta. 517 00:27:50,860 --> 00:27:53,020 In potem, zdaj lahko grem nazaj, veš? 518 00:27:53,020 --> 00:27:55,730 >> Ampak to je nekako dolgočasno, kajne? 519 00:27:55,730 --> 00:28:03,020 Torej, kaj želim storiti, je, nočem narediti, samo preprosto, pogled 520 00:28:03,020 --> 00:28:03,870 krmilnik. 521 00:28:03,870 --> 00:28:07,720 Recimo, da sem želel, da dejansko lahko Pogled na tabelo krmilnik, da bom lahko dal v 522 00:28:07,720 --> 00:28:12,110 nekaj lepih barv, v tabeli. 523 00:28:12,110 --> 00:28:16,210 >> Torej, zdaj, ko sem dal v mojem pogledu tabele krmilnik, moram ga priključite nazaj 524 00:28:16,210 --> 00:28:18,560 od tega gumba, da Pogled na krmilnik. 525 00:28:18,560 --> 00:28:21,780 Torej moram narediti svoj nadzor, kliknite, povlecite stvar znova. 526 00:28:21,780 --> 00:28:27,318 In zdaj ne morem storiti potiskanje, ker sem embed je notranjost krmilnika navigacije. 527 00:28:27,318 --> 00:28:32,210 >> PUBLIKA: Navigation krmilnik samo vam omogoča, da gredo iz kraja v kraj? 528 00:28:32,210 --> 00:28:33,540 >> RHED SHI: Da. 529 00:28:33,540 --> 00:28:38,670 Torej, bolj tehnično, to je predmet, kjer - 530 00:28:38,670 --> 00:28:43,150 tako, notranjost navigacijo krmilnik predmet tega 531 00:28:43,150 --> 00:28:44,780 sledi matrike. 532 00:28:44,780 --> 00:28:48,300 In da je matrika ima vse poznejše ogled krmilnike. 533 00:28:48,300 --> 00:28:51,560 Zato, ko pritisnete še enkrat, gre nazaj na prejšnjo stran. 534 00:28:51,560 --> 00:28:55,260 Ker upravljavec navigacija predmet ali koda, ki skrbi za 535 00:28:55,260 --> 00:28:58,890 ta objekt, je niz, ki ohranja sledenje teh krmilnikov pogled, in 536 00:28:58,890 --> 00:29:01,870 lahko potem veš, DQ pogled Regulator in vam dal nazaj 537 00:29:01,870 --> 00:29:02,750 prejšnja. 538 00:29:02,750 --> 00:29:05,200 >> Torej, to je tehnična zadeva, ampak - 539 00:29:05,200 --> 00:29:07,505 in ti bom pokazal kasneje kodo, če bomo imeli čas. 540 00:29:07,505 --> 00:29:10,270 Sem nekako zmanjkuje na čas, ampak - 541 00:29:10,270 --> 00:29:15,610 >> Torej, z pogledu tabele, kaj lahko storimo, je - 542 00:29:15,610 --> 00:29:18,440 To je običajno samodejno nastavi Dynamic Prototype - 543 00:29:18,440 --> 00:29:20,640 bomo, da bo Statični celice, drugače bomo 544 00:29:20,640 --> 00:29:22,920 zašli v težave. 545 00:29:22,920 --> 00:29:28,470 >> In potem, recimo, da bom da ima en odsek. 546 00:29:28,470 --> 00:29:31,000 Torej, sekcije je všeč - 547 00:29:31,000 --> 00:29:35,160 če ste kdaj videli glasbe app, ko imate umetniki, bi oddelki 548 00:29:35,160 --> 00:29:37,830 se je skozi Z's - 549 00:29:37,830 --> 00:29:38,780 črke - 550 00:29:38,780 --> 00:29:42,600 in potem, veste, individualna Vrstice bo imena izvajalca. 551 00:29:42,600 --> 00:29:47,460 In tako, kaj je kul tukaj, je, da sem lahko dostop do vseh predmetov v notranjosti 552 00:29:47,460 --> 00:29:50,430 moj snemalni knjigi skozi to spustnem meniju, preveč. 553 00:29:50,430 --> 00:29:56,600 >> Torej, jaz grem, da kliknete na mojem oddelku, in želim, saj veš, morda pet vrstic. 554 00:29:56,600 --> 00:30:00,770 In potem, znotraj vsake vrste, Rad bi dal nalepko. 555 00:30:00,770 --> 00:30:04,080 556 00:30:04,080 --> 00:30:06,340 In bom poklical ta Blue. 557 00:30:06,340 --> 00:30:09,530 558 00:30:09,530 --> 00:30:15,630 In potem bi rad dal pogled UI, si vem, morda, nekako malo prostora. 559 00:30:15,630 --> 00:30:23,840 560 00:30:23,840 --> 00:30:28,710 >> Tako da sem lahko pokažemo ljudem, Predogled barve. 561 00:30:28,710 --> 00:30:34,150 In jaz bom šel nazaj v nepremičnine in spremenite to barvo, oh, ne vem 562 00:30:34,150 --> 00:30:35,510 Veš, tole. 563 00:30:35,510 --> 00:30:38,630 564 00:30:38,630 --> 00:30:43,150 >> In potem, opazili tudi tukaj, ko imam dodatki, imam lahko veliko 565 00:30:43,150 --> 00:30:46,160 različnih dodatkov ki jih po navadi videli. 566 00:30:46,160 --> 00:30:55,250 Kazalnik razkritje podrobnosti, ali kljukica, ali pa preprosto samo detajl. 567 00:30:55,250 --> 00:30:59,080 Torej, morda lahko storimo, kot so, na razkritje indikator, npr. 568 00:30:59,080 --> 00:31:03,540 >> In potem, zakaj ne vzamemo te, izvod jih prilepite, in jih v 569 00:31:03,540 --> 00:31:06,740 Naslednja vrstica tabele. 570 00:31:06,740 --> 00:31:08,115 Torej, lahko rečemo To rumena. 571 00:31:08,115 --> 00:31:10,620 572 00:31:10,620 --> 00:31:12,155 In morda sem morala razširiti to. 573 00:31:12,155 --> 00:31:15,730 574 00:31:15,730 --> 00:31:17,290 Naj bo rumeno. 575 00:31:17,290 --> 00:31:20,610 In na ta način, bomo lahko kopirate prilepiti našo pot navzdol. 576 00:31:20,610 --> 00:31:24,910 577 00:31:24,910 --> 00:31:25,370 Kaj je bilo to? 578 00:31:25,370 --> 00:31:26,620 Purple. 579 00:31:26,620 --> 00:31:30,020 580 00:31:30,020 --> 00:31:34,740 >> Torej, vse to so tipični CS50 barv, ki ste jih videli v razredu - 581 00:31:34,740 --> 00:31:37,160 pravzaprav, oprostite - 582 00:31:37,160 --> 00:31:38,410 ali na spletni strani. 583 00:31:38,410 --> 00:31:49,700 584 00:31:49,700 --> 00:31:51,260 Upajmo, da vi vidite kaj delam tukaj. 585 00:31:51,260 --> 00:31:57,270 586 00:31:57,270 --> 00:31:57,890 OK. 587 00:31:57,890 --> 00:31:58,490 Zadnja. 588 00:31:58,490 --> 00:32:02,040 >> PUBLIKA: Kako ste dodali vrstica na začetku? 589 00:32:02,040 --> 00:32:04,740 >> RHED SHI: Torej, je bilo vprašanje, kako Poskusil sem dodati vrstico na začetku? 590 00:32:04,740 --> 00:32:07,500 Šel sem v tej rubriki tabele - ali pa sem lahko 591 00:32:07,500 --> 00:32:09,200 izberete del tabele - 592 00:32:09,200 --> 00:32:11,250 in potem, tukaj, sem posodobiti število vrstic. 593 00:32:11,250 --> 00:32:19,920 594 00:32:19,920 --> 00:32:22,505 >> In mi upamo, da bo to delovalo. 595 00:32:22,505 --> 00:32:30,620 596 00:32:30,620 --> 00:32:31,480 OK. 597 00:32:31,480 --> 00:32:32,870 Poglejmo, če to deluje. 598 00:32:32,870 --> 00:32:34,000 Oh, odlično, super. 599 00:32:34,000 --> 00:32:35,300 OK. 600 00:32:35,300 --> 00:32:40,330 Medtem ko sem bil zgradim svoj demo, nekateri Stvari niso bili usklajeni, tako da, hvala za 601 00:32:40,330 --> 00:32:42,510 aplavz. 602 00:32:42,510 --> 00:32:42,920 >> Ja. 603 00:32:42,920 --> 00:32:44,770 Torej, poglejmo. 604 00:32:44,770 --> 00:32:47,550 Naredili bomo to devet šele, da bi vse - ali dejansko, naj samo 605 00:32:47,550 --> 00:32:51,420 vključite vse to v razkritja kazalniki. 606 00:32:51,420 --> 00:32:55,790 In potem, kaj bi rad, da ti pokažem, preveč, je bilo, kako sem lahko vsak od teh 607 00:32:55,790 --> 00:32:59,230 vrstice tabel in jih medsebojno - 608 00:32:59,230 --> 00:33:00,150 oh. 609 00:33:00,150 --> 00:33:01,400 Ne 610 00:33:01,400 --> 00:33:05,700 611 00:33:05,700 --> 00:33:06,030 >> Oh. 612 00:33:06,030 --> 00:33:07,230 Prav tako bi rad, da ti pokažem - 613 00:33:07,230 --> 00:33:13,080 Tukaj sem lahko dal naslov mojega navigacijski krmilnik, kajne? 614 00:33:13,080 --> 00:33:17,090 Torej v bistvu, boste opazili, takoj ko sem Vgrajeni tega pogleda krmilnik znotraj 615 00:33:17,090 --> 00:33:22,010 upravljavca navigacije, bomo videli Ta navigacijski vrstici na vrhu našega 616 00:33:22,010 --> 00:33:25,340 storyboard zastopanje od upravljavca pogled. 617 00:33:25,340 --> 00:33:29,270 In tako, to nam daje, kot so, vizualni, nekako, vodnik po našem vidnem zaslonu. 618 00:33:29,270 --> 00:33:34,360 To se očitno dogaja, da lahko navigacijsko vrstico. 619 00:33:34,360 --> 00:33:40,950 >> In tisto, kar želim storiti hitro, Zdaj, se uvrsti v drugo - 620 00:33:40,950 --> 00:33:45,880 tako da je ta pogled tabele krmilnik sem ga ki ima eno od teh in ga povlečete 621 00:33:45,880 --> 00:33:49,800 tu, in to je tisto, kar mi je omogočila hitro, res, ustvarite pogled tabele 622 00:33:49,800 --> 00:33:50,850 krmilnik. 623 00:33:50,850 --> 00:33:54,100 Če imamo čas, čeprav, boste vidim, da je programsko, to je 624 00:33:54,100 --> 00:33:57,660 malce bolj zapleteno izdelati tabelo Pogled krmilnik, ker tam 625 00:33:57,660 --> 00:34:02,520 so nekaj metod, ki so potrebni za vas, nekako, pisati 626 00:34:02,520 --> 00:34:07,130 v vrstnem redu za pogledu tabele Regulator je treba pravilno prikazani. 627 00:34:07,130 --> 00:34:15,340 >> Vendar pa sem hotel pokazati, zdaj, Primer, kjer, če vzamem to, 628 00:34:15,340 --> 00:34:15,920 na primer - 629 00:34:15,920 --> 00:34:18,290 Sem dal v drug pogled krmilnik. 630 00:34:18,290 --> 00:34:27,320 In zdaj, recimo, da želim, da nadzor alt moja prva modra 631 00:34:27,320 --> 00:34:28,980 miza vrstica tukaj. 632 00:34:28,980 --> 00:34:31,070 In hočem, da to imenujemo Blue. 633 00:34:31,070 --> 00:34:32,570 In potem - 634 00:34:32,570 --> 00:34:34,159 Pa poglejmo. 635 00:34:34,159 --> 00:34:41,050 Jaz sem ob pogledu zdaj, in sem lahko spremenite ozadje modro. 636 00:34:41,050 --> 00:34:45,945 >> In tako obvestilo, tukaj, to drop-down Meni tudi vam hierarhijo vse 637 00:34:45,945 --> 00:34:47,040 teh objektov. 638 00:34:47,040 --> 00:34:50,530 Tako pomembna stvar je tudi omeniti, tukaj, je, da vse te stvari tukaj - 639 00:34:50,530 --> 00:34:54,330 ta pogled tabele krmilnik, namizni pogled, pogled miza oddelek, pogled na tabelo 640 00:34:54,330 --> 00:34:57,169 celic - vse to so predmetov, v kodi. 641 00:34:57,169 --> 00:35:03,752 Torej, veš, nalepka zdaj je pod pogled na vsebino, et cetera. 642 00:35:03,752 --> 00:35:05,020 Tako naprej in tako naprej. 643 00:35:05,020 --> 00:35:08,765 >> Torej, če tečemo to kodo bi morali videti nekaj - 644 00:35:08,765 --> 00:35:15,816 645 00:35:15,816 --> 00:35:17,870 da vidimo, če je to - ja. 646 00:35:17,870 --> 00:35:18,670 Torej, gremo. 647 00:35:18,670 --> 00:35:22,120 Ampak, če ne bomo storili, da nobena dela te druge stvari. 648 00:35:22,120 --> 00:35:22,500 Kajne? 649 00:35:22,500 --> 00:35:23,800 Torej, le ta deluje. 650 00:35:23,800 --> 00:35:29,100 In zaradi časa, ne bom gredo v, veste, dajanje 651 00:35:29,100 --> 00:35:29,770 navzdol tudi drugim. 652 00:35:29,770 --> 00:35:32,020 In to je konec, nekako, storyboard - 653 00:35:32,020 --> 00:35:33,400 tisto, kar sem želel pokazati ste za snemalno knjigo. 654 00:35:33,400 --> 00:35:36,330 655 00:35:36,330 --> 00:35:43,490 >> In imam obdelovati primer, pravzaprav tukaj. 656 00:35:43,490 --> 00:35:48,090 Torej, to je storyboard da sem se prej. 657 00:35:48,090 --> 00:35:52,740 Torej, kot lahko vidite, da je to moj navigacijski krmilnik. 658 00:35:52,740 --> 00:35:57,040 Potem sem imel prvi pogled krmilnik, Nato sem imel svoj pogled miza krmilnik, 659 00:35:57,040 --> 00:35:58,980 in potem sem imel vse te - 660 00:35:58,980 --> 00:36:01,180 tako prej sem delal Nekaj ​​zelo različni. 661 00:36:01,180 --> 00:36:04,450 Torej, oprostite tiste stvari. 662 00:36:04,450 --> 00:36:07,930 Verjetno bom pospravil kasneje, preden Sem jo poslal v proizvodnjo. 663 00:36:07,930 --> 00:36:12,800 >> Ampak, če tečemo, bomo videli da so vse možnosti 664 00:36:12,800 --> 00:36:14,050 nam na voljo. 665 00:36:14,050 --> 00:36:18,540 666 00:36:18,540 --> 00:36:21,320 Razen nisem naredil ozadja te barve. 667 00:36:21,320 --> 00:36:26,510 Torej, lepo preprosto uporabo. 668 00:36:26,510 --> 00:36:28,340 >> Zdaj pa poskušajo rešiti to programsko. 669 00:36:28,340 --> 00:36:31,270 670 00:36:31,270 --> 00:36:32,130 OK. 671 00:36:32,130 --> 00:36:37,570 Torej, za to, da smo šele tekoč , da začnete nov projekt Xcode. 672 00:36:37,570 --> 00:36:41,920 Mi bo uspelo prazna vloga zdaj, zato, ker ne želimo, da imajo 673 00:36:41,920 --> 00:36:42,380 storyboard. 674 00:36:42,380 --> 00:36:46,590 Torej, jaz sem samo sebe omejuje, da ne uporabljate katero od snemalni knjigi, in 675 00:36:46,590 --> 00:36:49,170 prazna aplikacija ne bo daj mi storyboard. 676 00:36:49,170 --> 00:36:52,256 To je samo, da se prepreči Sam od goljufanja. 677 00:36:52,256 --> 00:36:54,428 Pa poglejmo. 678 00:36:54,428 --> 00:36:55,360 Čakati. 679 00:36:55,360 --> 00:36:55,960 Sem - 680 00:36:55,960 --> 00:36:56,448 ja. 681 00:36:56,448 --> 00:36:57,698 OK. 682 00:36:57,698 --> 00:37:08,650 683 00:37:08,650 --> 00:37:09,180 >> Prav. 684 00:37:09,180 --> 00:37:16,790 Torej, tukaj, nam ostane nič drugega kot številka. 685 00:37:16,790 --> 00:37:19,460 Torej, mi premakniti to okno nekaj več. 686 00:37:19,460 --> 00:37:22,020 687 00:37:22,020 --> 00:37:22,260 Prav. 688 00:37:22,260 --> 00:37:28,160 Kot lahko vidite tukaj, so le datoteke smo dal so AppDelegate.h in pika 689 00:37:28,160 --> 00:37:30,500 m, in nimamo snemalno knjigo več. 690 00:37:30,500 --> 00:37:39,580 >> Torej, če tečemo to, smo še vedno dogaja, da priti na belem zaslonu, hvala bogu. 691 00:37:39,580 --> 00:37:42,280 OK - bel zaslon, ampak nič drugega. 692 00:37:42,280 --> 00:37:45,260 In tukaj je pomemben del. 693 00:37:45,260 --> 00:37:47,810 To je, če dejanje zgodi. 694 00:37:47,810 --> 00:37:51,410 V prejšnjih različicah, tam je Običajno oznaka ni tukaj, ampak 695 00:37:51,410 --> 00:37:55,600 storyboard bistvu določa koda za ta del. 696 00:37:55,600 --> 00:37:57,470 Ne bom se spuščal v podrobnosti o tem, kako. 697 00:37:57,470 --> 00:38:02,890 >> In tisto, kar smo želeli storiti zdaj je, da smo želeli iti tukaj, in to malo prostora 698 00:38:02,890 --> 00:38:05,050 začne znova ustvarja našo aplikacijo. 699 00:38:05,050 --> 00:38:06,092 Torej - 700 00:38:06,092 --> 00:38:06,318 ja? 701 00:38:06,318 --> 00:38:07,450 >> PUBLIKA: Zoom? 702 00:38:07,450 --> 00:38:07,770 >> RHED SHI: Zoom. 703 00:38:07,770 --> 00:38:09,020 Ja, seveda. 704 00:38:09,020 --> 00:38:13,940 705 00:38:13,940 --> 00:38:14,520 OK. 706 00:38:14,520 --> 00:38:17,380 Bom tipkanje, tako da to ne bi smelo glede na to preveč. 707 00:38:17,380 --> 00:38:17,940 OK. 708 00:38:17,940 --> 00:38:22,720 >> Torej, prvič, ne pozabite, smo želeli ustvariti krmilnik navigacija, kajne? 709 00:38:22,720 --> 00:38:27,090 In tako, kot lahko vidite tukaj, Xcode pa res veliko delo 710 00:38:27,090 --> 00:38:28,070 self-polnjenje. 711 00:38:28,070 --> 00:38:31,650 Torej, kot boste opazili, imena vse, kar je veliko dlje, kot je 712 00:38:31,650 --> 00:38:33,910 običajno, vendar Xcode ga izpolni za vas. 713 00:38:33,910 --> 00:38:35,710 Tako da sem lahko samo pritisnite tipko Enter. 714 00:38:35,710 --> 00:38:40,180 >> Torej, želim ustvariti navigacije UI Krmilnik kazalec, in sem lahko pokličete 715 00:38:40,180 --> 00:38:41,430 navigationController. 716 00:38:41,430 --> 00:38:43,040 717 00:38:43,040 --> 00:38:44,470 Zdaj, kaj naj storim zdaj? 718 00:38:44,470 --> 00:38:49,510 Po tem enačajem, moram najprej ustvariti znotraj pomnilnika. 719 00:38:49,510 --> 00:38:53,790 Torej, bom naredil NavigationController alloc - 720 00:38:53,790 --> 00:38:56,640 Torej, to je podobno malloc, da vi, ki se uporabljajo v C - 721 00:38:56,640 --> 00:38:58,400 in potem grem, da ga init. 722 00:38:58,400 --> 00:39:03,670 >> Torej, to je res pomembno, da vsaka predmet, ki ste ga ustvarili, ki jih želite 723 00:39:03,670 --> 00:39:04,940 alloc in init. 724 00:39:04,940 --> 00:39:08,600 To se dogaja, da ga ustvarjajo in ga instantialize znotraj spomina, in 725 00:39:08,600 --> 00:39:10,480 Zdaj ga lahko uporabite. 726 00:39:10,480 --> 00:39:10,780 Vse v redu? 727 00:39:10,780 --> 00:39:14,360 Če ne boste storili, da se vaš predmet ne ne obstaja, in boste zašli v kup 728 00:39:14,360 --> 00:39:17,290 problemov. 729 00:39:17,290 --> 00:39:20,250 >> In potem, želim ustvariti krmilnik pogled, kajne? 730 00:39:20,250 --> 00:39:25,580 Torej, želim ustvariti UIViewController zvezda - 731 00:39:25,580 --> 00:39:29,620 Tako, vse je kazalec v Objective-C, in bom naredil 732 00:39:29,620 --> 00:39:31,600 nekaj podobnega, tu - 733 00:39:31,600 --> 00:39:32,850 alloc, pr. 734 00:39:32,850 --> 00:39:38,680 735 00:39:38,680 --> 00:39:40,150 OK. 736 00:39:40,150 --> 00:39:43,450 >> In kaj bom naredil, potem je, da sem bo - tako, se spomniš, ko sva 737 00:39:43,450 --> 00:39:45,360 embed v navigacijski krmilnik? 738 00:39:45,360 --> 00:39:46,920 To je, kako to storiti v kodi. 739 00:39:46,920 --> 00:39:54,550 Boš naredil navigationController 740 00:39:54,550 --> 00:39:55,780 pushViewController - 741 00:39:55,780 --> 00:39:57,636 >> PUBLIKA: [neslišno]. 742 00:39:57,636 --> 00:39:59,030 Se bo to zgodilo za nas, ali -? 743 00:39:59,030 --> 00:40:00,080 >> RHED SHI: Oh, ja. 744 00:40:00,080 --> 00:40:00,550 Ne 745 00:40:00,550 --> 00:40:02,740 To mi je všeč bolje. 746 00:40:02,740 --> 00:40:04,670 Ne, bom to delo za vas, preveč. 747 00:40:04,670 --> 00:40:06,700 Torej vse te metode. 748 00:40:06,700 --> 00:40:10,400 Torej pushViewController je metoda, in tudi natančneje, to je 749 00:40:10,400 --> 00:40:13,590 primer metoda UI navigacijski krmilnik. 750 00:40:13,590 --> 00:40:20,030 Ker sem moral ustvariti svoj uporabniški vmesnik navigacijo Krmilnik zvezda, potem pa sem 751 00:40:20,030 --> 00:40:24,510 Lahko pokličete to pushViewController na moji poseben primer za navigacijo UI 752 00:40:24,510 --> 00:40:25,010 krmilnik. 753 00:40:25,010 --> 00:40:29,490 >> PUBLIKA: Ali moramo narediti natančen besedo, ali pa že obstaja za to? 754 00:40:29,490 --> 00:40:31,380 >> RHED SHI: Ja, ker je to metodo. 755 00:40:31,380 --> 00:40:32,200 To je podobno funkcijo. 756 00:40:32,200 --> 00:40:33,330 To je kot printf. 757 00:40:33,330 --> 00:40:34,390 To je kot scanf. 758 00:40:34,390 --> 00:40:36,250 To je kot strcompare. 759 00:40:36,250 --> 00:40:40,310 Razen, da ve, kaj boste morda želeli tip, in opazili, da bom vedno 760 00:40:40,310 --> 00:40:42,740 prišli do stvari, ki so zakonsko dovoljeni za vas. 761 00:40:42,740 --> 00:40:47,620 Torej, če nič ne kaže gor, potem je nekaj narobe. 762 00:40:47,620 --> 00:40:50,550 >> Torej, pushViewController. 763 00:40:50,550 --> 00:40:52,580 Torej, zdaj, želim potiskanje moje novo ustvarjena 764 00:40:52,580 --> 00:40:56,850 UIViewController, nato pa animirani - 765 00:40:56,850 --> 00:40:57,470 Morda ne. 766 00:40:57,470 --> 00:41:00,110 Ker je to bo Prvi pogled na krmilnik. 767 00:41:00,110 --> 00:41:03,210 Mislim, tudi če nisem, da animiran, to verjetno ne bo prikazal, saj 768 00:41:03,210 --> 00:41:05,050 to je prvi zaslon. 769 00:41:05,050 --> 00:41:06,540 >> In ne pozabite, nosilce. 770 00:41:06,540 --> 00:41:08,850 Torej, se spomnite, kako smo uporabili nosilce? 771 00:41:08,850 --> 00:41:11,870 In oklepaje Predmet poziva metodi - 772 00:41:11,870 --> 00:41:15,910 Tako naša cilj je navigacija krmilnik, in metoda je potisni 773 00:41:15,910 --> 00:41:17,210 Pogled krmilnik animirani. 774 00:41:17,210 --> 00:41:21,920 In videli, kako je potrebno v dveh argumentov, in oni so ločeni z, vrsta, 775 00:41:21,920 --> 00:41:24,390 Besede in debelega črevesa. 776 00:41:24,390 --> 00:41:28,300 Torej, Objective-C poskuša, da bi bilo lepo, in enostaven za branje na glas - 777 00:41:28,300 --> 00:41:33,020 kodo - in ga imeli pol, nekako, smisla. 778 00:41:33,020 --> 00:41:37,150 >> Vendar pa počne prav to ni dovolj. 779 00:41:37,150 --> 00:41:39,780 Dovolite mi, da pomanjšati zdaj. 780 00:41:39,780 --> 00:41:44,210 Samo delaš, da to ni dovolj, da bi dobili tisto, kar moramo prej. 781 00:41:44,210 --> 00:41:48,580 Torej, tukaj, boste opazili, da je dejansko ne bo kakršno koli 782 00:41:48,580 --> 00:41:50,190 bar, tukaj, kajne? 783 00:41:50,190 --> 00:41:54,680 Ni navigacijski bar, kar pomeni, da smo še vedno ga nisem dobila. 784 00:41:54,680 --> 00:41:58,850 >> In smo lahko preizkusili, da ven, tudi z, morda, spreminjanje ozadja 785 00:41:58,850 --> 00:42:00,460 ViewController, kajne? 786 00:42:00,460 --> 00:42:01,710 ViewController.background-- 787 00:42:01,710 --> 00:42:03,155 788 00:42:03,155 --> 00:42:03,640 ah. 789 00:42:03,640 --> 00:42:07,690 Torej, kako ViewController ni imel barva ozadja, čeprav sem 790 00:42:07,690 --> 00:42:08,780 želel dostopati do njega? 791 00:42:08,780 --> 00:42:14,080 In to zato, ker ViewController je posoda za pogled. 792 00:42:14,080 --> 00:42:19,490 Torej, ima pogled premoženje, ki potem ima barvo ozadja. 793 00:42:19,490 --> 00:42:25,510 >> In ga lahko nastavite, nekako tediously, s pozivom barvo 794 00:42:25,510 --> 00:42:28,130 na UIColor predmeta. 795 00:42:28,130 --> 00:42:33,210 Torej, obvestilo tukaj, redColor je metoda. 796 00:42:33,210 --> 00:42:36,750 To je metoda razreda UIcolor. 797 00:42:36,750 --> 00:42:40,820 Ker nisem imel ustvariti dejanska primerek UIColor da 798 00:42:40,820 --> 00:42:42,020 poklicati metodo na njem. 799 00:42:42,020 --> 00:42:45,050 Jaz samo, preprosto, ga imenujemo na vrsti, kot so ime. 800 00:42:45,050 --> 00:42:49,620 Jaz, recimo, je pozval notr, če bi int, podobno metodo za to, npr. 801 00:42:49,620 --> 00:42:52,380 >> In tako, če tečemo to kodo, se bomo opazili, da je v ozadju 802 00:42:52,380 --> 00:42:53,540 dejansko ni red. 803 00:42:53,540 --> 00:42:54,790 To je še vedno bela. 804 00:42:54,790 --> 00:42:57,720 805 00:42:57,720 --> 00:43:04,550 In kako lahko pridemo okoli, da je, opazujte, kako se je self.window. 806 00:43:04,550 --> 00:43:08,260 To je, kot je končni vsebnik za vašo prijavo. 807 00:43:08,260 --> 00:43:11,630 To je najboljša stvar, ki vsebuje vse, kar je na zaslonu za 808 00:43:11,630 --> 00:43:13,650 iPhone ali iPad aplikacij. 809 00:43:13,650 --> 00:43:20,970 >> In, prikladno, self.window ima to lastnost, imenovano 810 00:43:20,970 --> 00:43:22,650 rootViewController. 811 00:43:22,650 --> 00:43:26,480 In da se bo kazalec Zelo prvi pogled krmilnik znotraj 812 00:43:26,480 --> 00:43:27,270 vašega app. 813 00:43:27,270 --> 00:43:32,000 Torej, kaj želimo narediti tukaj, zdaj, je nastaviti, da enaka naši navigacijo 814 00:43:32,000 --> 00:43:32,710 krmilnik. 815 00:43:32,710 --> 00:43:33,760 Kajne? 816 00:43:33,760 --> 00:43:37,490 Ker je tehnično navigacija Regulator je naša zelo prvi pogled 817 00:43:37,490 --> 00:43:38,770 krmilnik. 818 00:43:38,770 --> 00:43:46,160 To spremlja niz drugem pogledu kontrolorji, in bomo to potisnilo 819 00:43:46,160 --> 00:43:49,810 Pogled na regulator v tej matriki v krmilniku navigacije. 820 00:43:49,810 --> 00:43:52,640 >> Torej, ne želite, da to storijo. 821 00:43:52,640 --> 00:43:54,225 To res ne bi ti pomagal. 822 00:43:54,225 --> 00:43:58,040 Želite to narediti, če si hotel narediti krmilnik navigacija, ki najbolj 823 00:43:58,040 --> 00:44:01,100 of boste verjetno zato, ker boste želeli da, nekako, neke vrste, 824 00:44:01,100 --> 00:44:04,840 kot meni, da se vrnete ali nekatere Domača stran, da se vrnete, namesto 825 00:44:04,840 --> 00:44:05,470 prazen zaslon. 826 00:44:05,470 --> 00:44:05,920 Ja? 827 00:44:05,920 --> 00:44:11,460 >> PUBLIKA: Je neprijetno za vas, da povečate - 828 00:44:11,460 --> 00:44:12,710 >> RHED SHI: Ja. 829 00:44:12,710 --> 00:44:15,310 830 00:44:15,310 --> 00:44:15,720 Torej, ja. 831 00:44:15,720 --> 00:44:22,370 To je koda, in zdaj dajmo preizkusite ven. 832 00:44:22,370 --> 00:44:27,920 >> Torej, gremo. 833 00:44:27,920 --> 00:44:29,170 Magic. 834 00:44:29,170 --> 00:44:30,960 835 00:44:30,960 --> 00:44:32,690 Torej, v redu. 836 00:44:32,690 --> 00:44:34,420 Hvala vam. 837 00:44:34,420 --> 00:44:35,000 OK. 838 00:44:35,000 --> 00:44:38,690 Torej sedaj, kar smo želeli storiti, je - tako, smo nekako omejiti, tukaj, kajne? 839 00:44:38,690 --> 00:44:45,130 Mi bi lahko napisali vse Notranjost tega eno funkcijo. 840 00:44:45,130 --> 00:44:48,470 Ampak, to ni, kako razvoj iOS ponavadi deluje. 841 00:44:48,470 --> 00:44:53,030 >> Torej, kaj bomo storili, je, da smo dogaja, da ustvarite nekaj novih datotek. 842 00:44:53,030 --> 00:44:57,110 Ampak, natančneje, bomo ustvarite nov razred Objective-C, ali 843 00:44:57,110 --> 00:44:58,010 Drug predmet - 844 00:44:58,010 --> 00:45:00,700 razred in predmeti so zamenljivi tukaj. 845 00:45:00,700 --> 00:45:06,460 In tukaj je, kako sem lahko potencialno ustvarite nov razred krmilnikov U. 846 00:45:06,460 --> 00:45:12,030 >> Torej, to je sub-class, kot boste opazili, tu, je podrazred 847 00:45:12,030 --> 00:45:15,910 Pogled UI krmilnik, ampak sem lahko pravijo tukaj katero koli drugo ime. 848 00:45:15,910 --> 00:45:19,400 Lahko pokličete to CS50, lahko kličem ta pogled krmilnik, lahko kličem 849 00:45:19,400 --> 00:45:21,640 to bla pogled krmilnik - 850 00:45:21,640 --> 00:45:22,400 karkoli hočem. 851 00:45:22,400 --> 00:45:24,140 To je samo ime za razred. 852 00:45:24,140 --> 00:45:27,020 Vendar pa se dogaja, da je pomembno saj v bistvu, kaj počnem 853 00:45:27,020 --> 00:45:29,720 Tukaj je, jaz ustvarjanje drugo ime razreda. 854 00:45:29,720 --> 00:45:34,140 Tako, da se dogaja, da se, tako kot nekateri sortiranje tipa ali predmeta. 855 00:45:34,140 --> 00:45:35,910 Torej, bi moralo biti malo generično. 856 00:45:35,910 --> 00:45:37,225 Da ne gre za zelo specifično. 857 00:45:37,225 --> 00:45:40,410 858 00:45:40,410 --> 00:45:44,480 >> In tudi ne želim izpostaviti od teh dveh možnosti. 859 00:45:44,480 --> 00:45:48,430 Ker delamo vse, kar je v notranjosti Koda, včasih je veliko lažje 860 00:45:48,430 --> 00:45:53,540 da bi v datoteki vmesnik, tako da Lahko dobesedno povleci in spusti, kot je 861 00:45:53,540 --> 00:45:54,960 sva prej s snemalno knjigo - 862 00:45:54,960 --> 00:45:57,810 veste, nalepke ali gumb, ali karkoli drugega. 863 00:45:57,810 --> 00:46:01,950 In tako, xibs so datoteke, ki vam omogočajo, da ne da, in ga morate zapeti 864 00:46:01,950 --> 00:46:04,310 s tem stališčem regulatorja datoteko. 865 00:46:04,310 --> 00:46:06,540 >> Torej, bom namenoma ne poglej tole. 866 00:46:06,540 --> 00:46:12,510 Ponavadi bi to preveril, in če sem Samo to naredil za iPhone ali iPad, sem 867 00:46:12,510 --> 00:46:16,340 to bi preveriti in preprosto imeti enega za, saj veš, iPhone ali iPad. 868 00:46:16,340 --> 00:46:19,750 Ampak, ker delam univerzalna, bom ustvariti dva od tistih, ki kasneje. 869 00:46:19,750 --> 00:46:22,220 Torej, bom namenoma počistite to. 870 00:46:22,220 --> 00:46:23,940 >> To je tudi zelo pomembno. 871 00:46:23,940 --> 00:46:27,490 Veliko krat sem imel hroščev če to ni bilo potrjeno. 872 00:46:27,490 --> 00:46:31,930 In tako je očitno, da ta datoteka ni, nekako tako kot, vključene ali uvožene 873 00:46:31,930 --> 00:46:33,740 znotraj te preskusne mapo. 874 00:46:33,740 --> 00:46:38,180 In tako, moja koda je absolutno nima pojma o obstoju te datoteke, in 875 00:46:38,180 --> 00:46:41,080 ki povzroča veliko bolečine in ur razhroščevanje. 876 00:46:41,080 --> 00:46:44,360 Ampak, samo poskrbite, da je to tako preveri da veste, cilj tega 877 00:46:44,360 --> 00:46:47,510 Datoteka je za to vlogo. 878 00:46:47,510 --> 00:46:48,310 >> OK. 879 00:46:48,310 --> 00:46:51,680 Torej, zdaj smo ustvarili dva nova datotek. 880 00:46:51,680 --> 00:46:54,050 In te datoteke videti precej prazna. 881 00:46:54,050 --> 00:46:59,550 In, pravzaprav, kaj je še naprej ki jih ustvarja XIb datoteke. 882 00:46:59,550 --> 00:47:03,690 Torej, prej sem bil v Kakav Touch drop-down. 883 00:47:03,690 --> 00:47:06,880 Zdaj bom šel v uporabnika Vmesnik na dotik, in kot lahko vidite, sem 884 00:47:06,880 --> 00:47:08,120 lahko ustvarite storyboard. 885 00:47:08,120 --> 00:47:11,710 >> Torej, tudi jaz začel s prazno aplikacija, lahko še vedno uporabite 886 00:47:11,710 --> 00:47:12,340 storyboard. 887 00:47:12,340 --> 00:47:15,480 Kljub temu, da postane težavno z vidika kako želite priključiti 888 00:47:15,480 --> 00:47:16,820 da svojo kodo. 889 00:47:16,820 --> 00:47:18,230 Torej, ne bom šel tja. 890 00:47:18,230 --> 00:47:22,160 >> Ampak, kaj želimo narediti Zdaj je ustvariti pogled. 891 00:47:22,160 --> 00:47:25,720 In se lahko odločite za iPhone ali iPad. 892 00:47:25,720 --> 00:47:30,180 In ponavadi, ki označuje Razlika - če delaš 893 00:47:30,180 --> 00:47:31,950 univerzalna uporaba - 894 00:47:31,950 --> 00:47:35,980 si niti naredi podčrtaj iPhone, ali lahko narediš Twiddly. 895 00:47:35,980 --> 00:47:36,980 To sploh ni pomembno. 896 00:47:36,980 --> 00:47:40,890 To je enostavno za vas, da razlikovanje katerega mnenje je, za katere naprave. 897 00:47:40,890 --> 00:47:43,470 898 00:47:43,470 --> 00:47:44,430 >> In tako zdaj poglej. 899 00:47:44,430 --> 00:47:47,550 Imam zaslon, da sem lahko delati. 900 00:47:47,550 --> 00:47:53,530 In tako, na primer, sem dal nalepko tu, veš, in sem tako lahko dajo 901 00:47:53,530 --> 00:47:54,820 en gumb tukaj. 902 00:47:54,820 --> 00:47:58,730 Ne bom se trudim spreminja Vrednosti tukaj. 903 00:47:58,730 --> 00:48:09,050 >> Ampak, kaj je pomembno, tukaj je da se datoteka lastnik - 904 00:48:09,050 --> 00:48:13,660 Tako, da sem v notranjosti iPhone pogled, iPhone XIb datoteke. 905 00:48:13,660 --> 00:48:18,050 In iz te navigacijskem območju ali spustnem meniju, želim iti v 906 00:48:18,050 --> 00:48:19,090 Lastnik datoteke je. 907 00:48:19,090 --> 00:48:22,630 In to je res Pomemben korak tukaj. 908 00:48:22,630 --> 00:48:27,780 Želim, da bi stališče razred krmilnik, tako da je ta XIb datoteka 909 00:48:27,780 --> 00:48:30,030 dogaja, da je povezana z moj pogled na krmilnik. 910 00:48:30,030 --> 00:48:33,590 911 00:48:33,590 --> 00:48:39,360 In vse, kar sem naredil v notranjosti mojem mnenju Regulator je programsko 912 00:48:39,360 --> 00:48:42,800 dogaja, da se odraža tukaj. 913 00:48:42,800 --> 00:48:46,270 >> Tako pa opazili, da - 914 00:48:46,270 --> 00:48:55,995 pravzaprav, naredimo to stališče ozadje modra, npr. 915 00:48:55,995 --> 00:49:00,280 916 00:49:00,280 --> 00:49:01,530 Ali zelena. 917 00:49:01,530 --> 00:49:03,870 918 00:49:03,870 --> 00:49:07,950 In potem, tako da, če boste opazili, nazaj v ta oznaka, to je, če smo prišli do naše 919 00:49:07,950 --> 00:49:09,200 navigacijski krmilnik. 920 00:49:09,200 --> 00:49:12,650 921 00:49:12,650 --> 00:49:18,310 >> Čeprav smo naredili ta korak, to je Še vedno bo rdeče, ne zeleno. 922 00:49:18,310 --> 00:49:20,350 In tu je razlog. 923 00:49:20,350 --> 00:49:28,090 To je zato, ker, ko smo inited naš pogled na krmilnik, tukaj - 924 00:49:28,090 --> 00:49:30,010 Oprosti, to je malo noro - 925 00:49:30,010 --> 00:49:34,520 ko smo inited našem mnenju krmilnik tukaj, jo inited splošnega tipa 926 00:49:34,520 --> 00:49:35,990 UIViewController. 927 00:49:35,990 --> 00:49:36,560 OK? 928 00:49:36,560 --> 00:49:40,560 Torej nismo še storiti je s tem razredu. 929 00:49:40,560 --> 00:49:42,030 >> Torej, ne pozabite, to je kot razred zdaj. 930 00:49:42,030 --> 00:49:47,160 To si lahko predstavljamo kot neke vrste, le kot je UIViewController tipa. 931 00:49:47,160 --> 00:49:51,080 In da bi uporabili to, kar moramo storiti, je to, uvoz - 932 00:49:51,080 --> 00:49:52,520 Uvoz ViewController - 933 00:49:52,520 --> 00:49:55,750 in, kot lahko vidite, da ga autofills zame. 934 00:49:55,750 --> 00:49:56,570 Torej, ViewController - 935 00:49:56,570 --> 00:50:02,070 in zdaj, tukaj, sem lahko spremenite UIViewController za ViewController. 936 00:50:02,070 --> 00:50:05,050 In zdaj, tukaj, sem lahko spremenite to ViewController. 937 00:50:05,050 --> 00:50:07,790 938 00:50:07,790 --> 00:50:09,250 >> Poglejmo spet teči to. 939 00:50:09,250 --> 00:50:16,970 940 00:50:16,970 --> 00:50:19,690 To je še vedno rdeča. 941 00:50:19,690 --> 00:50:23,370 In razlog, zakaj je Še vedno je rdeča, ker - 942 00:50:23,370 --> 00:50:26,230 woah, kaj se je zgodilo tam? 943 00:50:26,230 --> 00:50:31,500 Želeli smo, da te XIb datoteko s krmilnikom pogled. 944 00:50:31,500 --> 00:50:37,540 Vendar pa, da se dejansko ne da moramo iti v to. 945 00:50:37,540 --> 00:50:42,980 In ko naredimo init, želimo narediti initWithNibName, nato pa želimo 946 00:50:42,980 --> 00:50:48,910 storite na niz View_iPhone, npr. 947 00:50:48,910 --> 00:50:51,700 Lahko prezreti snop tukaj. 948 00:50:51,700 --> 00:50:54,965 >> In to bo omogočilo nas, pravzaprav - 949 00:50:54,965 --> 00:51:00,620 950 00:51:00,620 --> 00:51:02,160 uh oh, tu je problem. 951 00:51:02,160 --> 00:51:09,300 952 00:51:09,300 --> 00:51:09,980 Prav. 953 00:51:09,980 --> 00:51:17,670 >> In tako, tam je problem, ker v naš pogled XIb datoteke, imamo nalepko in 954 00:51:17,670 --> 00:51:18,720 imamo na gumb. 955 00:51:18,720 --> 00:51:23,660 Kljub temu, da smo povezani tista dva, ni nič v notranjosti 956 00:51:23,660 --> 00:51:27,440 ViewController.h ali ViewController.m ki odražajo 957 00:51:27,440 --> 00:51:29,160 gumbi ali te etikete. 958 00:51:29,160 --> 00:51:32,425 Torej, moramo napisati tiste v kot lastnosti regulatorja pogled. 959 00:51:32,425 --> 00:51:35,290 960 00:51:35,290 --> 00:51:39,490 >> Torej, to je, kako se razglasi lastnine. 961 00:51:39,490 --> 00:51:43,422 To traja leta, običajno pa ti dve možnosti. 962 00:51:43,422 --> 00:51:48,690 Za nas in tega seminarja, Jaz bi rekel, da na splošno, 963 00:51:48,690 --> 00:51:52,250 večina lastnosti so nonatomic in obdržati. 964 00:51:52,250 --> 00:51:55,420 Si lahko preberete ki jih Google iskanje, veste, razlika med 965 00:51:55,420 --> 00:51:58,620 nonatomic in obdržati na, vas Veš, Google ali kaj podobnega. 966 00:51:58,620 --> 00:52:01,090 In jaz te bom odpeljal na, recimo, Stack Preliv, kjer se ljudje 967 00:52:01,090 --> 00:52:03,605 odgovori za razlike med tistimi. 968 00:52:03,605 --> 00:52:07,000 Ampak za zdaj, to je tisto, kar smo želite, da se ukvarjajo z. 969 00:52:07,000 --> 00:52:12,790 >> In želimo, da bi oznako UI, zvezda, in jo lahko imenujemo kar hočemo. 970 00:52:12,790 --> 00:52:15,710 To lahko imenujemo, saj veš, etiketi. 971 00:52:15,710 --> 00:52:18,270 972 00:52:18,270 --> 00:52:20,110 In bomo ustvarili drugo ena za gumb. 973 00:52:20,110 --> 00:52:24,380 974 00:52:24,380 --> 00:52:29,910 In ne pozabite vključiti zvezdico, zato, ker imamo opravka s kazalci 975 00:52:29,910 --> 00:52:36,740 skoraj povsod v notranjosti v Objective-C. 976 00:52:36,740 --> 00:52:42,110 >> Vendar pa to še vedno ne bo rešila problem, kot lahko vidite tukaj. 977 00:52:42,110 --> 00:52:50,540 In razlog je, ker, ko smo želite priključiti nalepko na XIb datoteke ali 978 00:52:50,540 --> 00:52:55,690 Gumb za program, ali glava in izvajanje datoteke, želimo 979 00:52:55,690 --> 00:52:58,255 dodali ta del kode - 980 00:52:58,255 --> 00:53:00,610 vtičnico. 981 00:53:00,610 --> 00:53:03,600 Opazimo, da je ključna beseda. 982 00:53:03,600 --> 00:53:07,970 >> In takoj, ko sem končal tipkanje da, bi morali imeti ti 983 00:53:07,970 --> 00:53:09,100 dva kroga, TUKAJ. 984 00:53:09,100 --> 00:53:11,200 Ponavadi si jih ne napolni prijavite 985 00:53:11,200 --> 00:53:12,920 Nisem prepričan, zakaj so. 986 00:53:12,920 --> 00:53:21,370 Ampak ponavadi, boste morali ročno jih povezati, da greste na tej strani 987 00:53:21,370 --> 00:53:23,530 področje gospodarskih javnih služb. 988 00:53:23,530 --> 00:53:28,430 >> In tako je prav zdaj, sem dobil nalepko izbran, in želim, da povlečete ta nova 989 00:53:28,430 --> 00:53:33,910 navajanje vtičnico lastniku moje datoteke, in nato kliknite na etiketi. 990 00:53:33,910 --> 00:53:40,230 Torej, zdaj, končno, ta oznaka priključen na to nalepko. 991 00:53:40,230 --> 00:53:44,950 In ta oznaka je tisto, kar bomo uporabite programsko spremeniti njegovo 992 00:53:44,950 --> 00:53:49,250 Besedilo, njegovo pisavo, njeno ozadje barva, et cetera. 993 00:53:49,250 --> 00:53:52,430 >> Torej, zakaj ne naredimo Enako za gumb? 994 00:53:52,430 --> 00:53:54,770 In kot boste opazili, za gumb, to je malo bolj zapletena. 995 00:53:54,770 --> 00:53:59,060 Zato, ker mislim, moral bi pritiskom na gumb, tako da je dobil veliko 996 00:53:59,060 --> 00:54:02,950 možnosti za to, kako uporabniki S pritiskom na gumb. 997 00:54:02,950 --> 00:54:06,570 In potem, bomo videli kasneje, da to lahko povežete z našimi 998 00:54:06,570 --> 00:54:09,140 koda, da bi bilo delo. 999 00:54:09,140 --> 00:54:12,770 >> Torej, za zdaj pa smo želeli povezati je za dejansko gumb 1000 00:54:12,770 --> 00:54:13,570 znotraj našega kodeksa. 1001 00:54:13,570 --> 00:54:19,640 Torej gremo na novo vtičnico referenciranja in naredite gumb. 1002 00:54:19,640 --> 00:54:22,068 Zdaj pa spet teči to. 1003 00:54:22,068 --> 00:54:23,040 Uh oh. 1004 00:54:23,040 --> 00:54:23,890 OK. 1005 00:54:23,890 --> 00:54:25,140 Ne vem, kaj se dogaja zdaj. 1006 00:54:25,140 --> 00:54:48,450 1007 00:54:48,450 --> 00:54:49,700 Vau. 1008 00:54:49,700 --> 00:54:57,380 1009 00:54:57,380 --> 00:54:58,960 Samo trenutek, tukaj. 1010 00:54:58,960 --> 00:55:02,490 >> Pravzaprav, zakaj ne vzamemo poglej še en primer, v 1011 00:55:02,490 --> 00:55:05,800 Obrestna časa. 1012 00:55:05,800 --> 00:55:06,200 OK. 1013 00:55:06,200 --> 00:55:10,610 Torej, tukaj je lažje pripravila Primer za ViewController. 1014 00:55:10,610 --> 00:55:13,230 1015 00:55:13,230 --> 00:55:17,110 Kot lahko vidite tukaj, sem vključena lastnosti za 1016 00:55:17,110 --> 00:55:18,460 Etiketa in gumb. 1017 00:55:18,460 --> 00:55:20,370 In potem se ta del kode tu - 1018 00:55:20,370 --> 00:55:21,830 to IBaction - 1019 00:55:21,830 --> 00:55:27,740 je povezava tega gumba tukaj. 1020 00:55:27,740 --> 00:55:33,940 Torej, kot lahko vidite tukaj, Touch Up Inside je priključen na izbirnik 1021 00:55:33,940 --> 00:55:37,390 imenovano gumb pritisnjen. 1022 00:55:37,390 --> 00:55:41,700 >> Torej, lahko dejansko šel skozi motion spet tu, ob Touch Up 1023 00:55:41,700 --> 00:55:48,750 Znotraj in ga povlečete Datotečna Lastnik in nato 1024 00:55:48,750 --> 00:55:51,570 kliknite na gumb pritisnjen. 1025 00:55:51,570 --> 00:55:52,820 Zdaj pa vodijo našo kodo. 1026 00:55:52,820 --> 00:55:55,710 1027 00:55:55,710 --> 00:56:02,020 Torej, zdaj, ta gumb, sedaj pa dela in nas bo popeljal na naslednjo stran. 1028 00:56:02,020 --> 00:56:08,430 >> In v smislu našem mnenju upravljavca, To je del kode, ki je 1029 00:56:08,430 --> 00:56:10,000 skrbi za pritisku. 1030 00:56:10,000 --> 00:56:14,260 In to je pomembno omeniti, da je Sem ustvaril novo vrsto pogleda 1031 00:56:14,260 --> 00:56:16,330 Regulator imenovano tabelo Pogled na krmilnik. 1032 00:56:16,330 --> 00:56:19,900 Torej, to je bilo podobno nazaj v storyboard, ko sem vlekel eno od 1033 00:56:19,900 --> 00:56:23,450 ti krmilniki pogled miza v snemalni knjigi. 1034 00:56:23,450 --> 00:56:24,470 Jaz sem ustvarjanju drugo 1035 00:56:24,470 --> 00:56:30,000 >> Kazalec na upravljavca pogledu tabele, alloc in ga pr-ing in potem delaš 1036 00:56:30,000 --> 00:56:34,490 samo pika navigacijski krmilnik, potisnite ViewController, ta nova 1037 00:56:34,490 --> 00:56:35,350 viewController. 1038 00:56:35,350 --> 00:56:39,750 In sem nastaviti animacijo ja, ker zdaj znotraj mojega app, in I 1039 00:56:39,750 --> 00:56:45,670 želijo, da bi dejansko videli animacije dogaja na domači strani v tabelo 1040 00:56:45,670 --> 00:56:46,920 Pogled na krmilnik. 1041 00:56:46,920 --> 00:56:48,830 1042 00:56:48,830 --> 00:56:51,110 >> PUBLIKA: Ali še vedno skrbi o zbiranje smeti? 1043 00:56:51,110 --> 00:56:51,840 >> RHED SHI: Kaj je to? 1044 00:56:51,840 --> 00:56:54,740 Ne 1045 00:56:54,740 --> 00:56:58,970 Torej, je bilo vprašanje, ali imaš za delo z zbiranjem smeti? 1046 00:56:58,970 --> 00:57:03,470 Torej, Xcode 4 imel podobno obloka, ki samodejna reference štetje. 1047 00:57:03,470 --> 00:57:06,120 In tako je ponavadi, ko začnete novo projekt, bi morali preveriti, da zaradi 1048 00:57:06,120 --> 00:57:09,440 nihče ne želi, da se ukvarjajo z sprostilo spomin in stvari. 1049 00:57:09,440 --> 00:57:13,720 Ampak mislim, da v Xcode 5, ni niti ta možnost na novem projektu. 1050 00:57:13,720 --> 00:57:16,750 Torej, se samodejno pa to za vas. 1051 00:57:16,750 --> 00:57:16,920 Ja? 1052 00:57:16,920 --> 00:57:20,970 >> PUBLIKA: Lahko izvozite PDF v snemalno knjigo? 1053 00:57:20,970 --> 00:57:22,020 >> RHED SHI: Ja, zagotovo. 1054 00:57:22,020 --> 00:57:28,180 Tako bo, vse to je treba vključiti v izvorno kodo, tako da vi moči odjaviti 1055 00:57:28,180 --> 00:57:30,730 dejanski projekt Xcode za to. 1056 00:57:30,730 --> 00:57:31,105 Ja? 1057 00:57:31,105 --> 00:57:35,944 >> PUBLIKA: Ampak, mislil sem, če lahko jaz natisnete PDF z mojim snemalno knjigo? 1058 00:57:35,944 --> 00:57:38,920 Če hočem izvoziti slik, ki kažejo na nekoga. 1059 00:57:38,920 --> 00:57:39,160 >> RHED SHI: Oh ja. 1060 00:57:39,160 --> 00:57:41,980 Mislim, mogoče, si lahko samo posnetek zaslona. 1061 00:57:41,980 --> 00:57:44,350 Ja, in jim pošljite zaslon shot ali kaj podobnega. 1062 00:57:44,350 --> 00:57:45,600 Ja. 1063 00:57:45,600 --> 00:57:49,170 1064 00:57:49,170 --> 00:57:50,570 >> Torej, poglejmo. 1065 00:57:50,570 --> 00:57:56,470 V interesu časa, mislim, to je vse, kar sem lahko zajema danes. 1066 00:57:56,470 --> 00:57:59,600 Ampak vem, da je, pravzaprav, samo komaj dotika površine iOS 1067 00:57:59,600 --> 00:58:00,370 razvoj. 1068 00:58:00,370 --> 00:58:05,630 Torej, vas prosimo, da stik z mano, če imate kakršnakoli vprašanja o iOS 1069 00:58:05,630 --> 00:58:07,000 razvoj. 1070 00:58:07,000 --> 00:58:12,840 In upam, da bom lahko za čiščenje gor nekaj kode za vir 1071 00:58:12,840 --> 00:58:16,830 koda datoteke, tako da boste imeli nekaj res lepo primeri delati. 1072 00:58:16,830 --> 00:58:21,020 >> Razen, če gresta na CS50 Hackathon, sem lahko ali 1073 00:58:21,020 --> 00:58:25,730 ne bo tam, in sem lahko pomagal z nekaterimi iOS razvoj, preveč. 1074 00:58:25,730 --> 00:58:26,980 Torej, hvala, fantje. 1075 00:58:26,980 --> 00:58:31,168