1 00:00:00,000 --> 00:00:07,880 2 00:00:07,880 --> 00:00:09,800 >> RHED SHI: Dobrodošli vidi CS50 seminar - 3 00:00:09,800 --> 00:00:11,630 Uvod u iOS. 4 00:00:11,630 --> 00:00:13,290 Hvala svima što ste došli. 5 00:00:13,290 --> 00:00:16,610 Nadam se da si jednako uzbuđeni kao što sam ja o tome iOS. 6 00:00:16,610 --> 00:00:22,300 Prošle godine, uzeo sam CS50 kao student, i ja sam zapravo naučio iOS za moje 7 00:00:22,300 --> 00:00:23,490 Konačni projekt. 8 00:00:23,490 --> 00:00:26,350 I to je bio prilično - 9 00:00:26,350 --> 00:00:30,530 dobro, nije bilo lako, ali postoje puno podrške tutoriali online. 10 00:00:30,530 --> 00:00:33,760 I stvarno se nadam da s ovim Seminar, dat ću ti dečki glavu 11 00:00:33,760 --> 00:00:36,750 start na iOS razvoj 12 00:00:36,750 --> 00:00:40,490 >> Dakle, u smislu iOS razvoja, postoje dvije glavne stvari koje 13 00:00:40,490 --> 00:00:42,090 žele pokriti i danas. 14 00:00:42,090 --> 00:00:43,290 Prvo, jezik - 15 00:00:43,290 --> 00:00:46,650 jezik će biti u Objective-C. Mi zapravo ćete čuti 16 00:00:46,650 --> 00:00:47,750 nešto jako uzbudljivo. 17 00:00:47,750 --> 00:00:51,500 Dakle, možete se pridružiti cijela jabuka zajednica programera i izgraditi neke 18 00:00:51,500 --> 00:00:52,940 Stvarno strašan aplikacije. 19 00:00:52,940 --> 00:00:58,670 >> Također, iOS 7 je lijepa, nadamo se, za neke od vas. 20 00:00:58,670 --> 00:01:01,130 No, to je sporno, Znam. 21 00:01:01,130 --> 00:01:05,349 I uglavnom, ono što želim učiniti je vodič što kroz Objective-C, a također 22 00:01:05,349 --> 00:01:10,650 Xcode, koja je integrirana razvojno okruženje koje će biti 23 00:01:10,650 --> 00:01:13,460 radi u za iOS. 24 00:01:13,460 --> 00:01:19,140 >> I tako, samo riječ o Objective-C. U osnovi, to je isti kao i C, 25 00:01:19,140 --> 00:01:22,790 ali s puno drugih stvari. 26 00:01:22,790 --> 00:01:27,710 I tako, strože, to je zapravo super-set C. Dakle, sve što vam 27 00:01:27,710 --> 00:01:32,280 može učiniti u C upravo sada, što je osnovi željeli pset 0 do 6, što 28 00:01:32,280 --> 00:01:34,170 može učiniti u Objective-C. 29 00:01:34,170 --> 00:01:38,620 >> Dakle, ne osjećaju strah zbog ovoga novog jezik koji ćete naučiti. 30 00:01:38,620 --> 00:01:42,120 Već ste pokrivene puno toga, jer ste sve učinili C prošlog 31 00:01:42,120 --> 00:01:45,880 semestar, osim sada ideš da imaju puno više raditi. 32 00:01:45,880 --> 00:01:49,270 A ja sam samo će vas voditi kroz Nekoliko primjera istaknuti neke 33 00:01:49,270 --> 00:01:53,920 od ključnih razlika koje sam našao bili su jako važno kad sam saznao 34 00:01:53,920 --> 00:01:57,180 Objective-C lani. 35 00:01:57,180 --> 00:02:00,910 >> Pa zapravo, tako, drugi bod je, Objective-C je, očito, 36 00:02:00,910 --> 00:02:02,200 objektno-orijentirane. 37 00:02:02,200 --> 00:02:06,340 A mi ćemo raspravljati malo o tome što to znači kasnije. 38 00:02:06,340 --> 00:02:11,340 U osnovi, to je kao kako ste radili s tvorevina, u ovom prošlom pset, s 39 00:02:11,340 --> 00:02:13,360 čvorovi i slični drugima takve stvari. 40 00:02:13,360 --> 00:02:17,110 Osim, u Objective-C, sve je objekt, a ti ćeš biti 41 00:02:17,110 --> 00:02:20,720 prolaze oko upućuje na objekte nego samih vrijednosti. 42 00:02:20,720 --> 00:02:25,050 Dakle, to je samo nešto važno treba imati na umu. 43 00:02:25,050 --> 00:02:29,140 >> Dakle, zašto ne bismo početi s nekoliko razlike u sintaksi između C i 44 00:02:29,140 --> 00:02:30,540 Cilj-C? 45 00:02:30,540 --> 00:02:38,310 Želim istaknuti # include, što Znam, standardni io.h u C i C + +, s 46 00:02:38,310 --> 00:02:44,030 Objective-C verzija da je, što je # uvoz, a zatim neka vrsta 47 00:02:44,030 --> 00:02:44,790 zaglavlje datoteke. 48 00:02:44,790 --> 00:02:48,165 U tom slučaju, da bi se UIKit, znate, slash UIKit.h. 49 00:02:48,165 --> 00:02:53,560 Također bi to moglo biti, znate, MKMapview da li srezati MKMapview.h ako želite 50 00:02:53,560 --> 00:02:56,370 to učiniti, kao što je, mapu unutar svoje aplikacije. 51 00:02:56,370 --> 00:02:57,110 Slične takve stvari. 52 00:02:57,110 --> 00:03:01,250 >> Dakle, važno je uključiti sada je promijenio uvesti. 53 00:03:01,250 --> 00:03:04,340 No, ideja i dalje ostaje. 54 00:03:04,340 --> 00:03:10,460 Ti ćeš se uvozi nekakvu zaglavlja datoteke u vašem programu. 55 00:03:10,460 --> 00:03:14,550 >> Također želim naglasiti razliku između printf i NSLog. 56 00:03:14,550 --> 00:03:19,760 Međutim, kao što smo ranije rekli, Objective-C je strogi super-set 57 00:03:19,760 --> 00:03:22,800 C, što znači da postoji printf u Objective-C, previše. 58 00:03:22,800 --> 00:03:24,340 No, većina ljudi ne iskoristiti. 59 00:03:24,340 --> 00:03:28,245 Većina ljudi koristi ovaj NSLog jer je daje oznaku vremena, pa ćemo vidjeti 60 00:03:28,245 --> 00:03:29,780 je u akciji kasnije. 61 00:03:29,780 --> 00:03:33,560 No, to je u pravilu više koristan način ispisati varijable. 62 00:03:33,560 --> 00:03:38,220 >> I ja isto tako želim istaknuti da je NSLog se u isto 63 00:03:38,220 --> 00:03:41,650 Vrijednosti rezerviranih mjesta kao printf nema - 64 00:03:41,650 --> 00:03:45,900 tako% d je za int, % F je za plovak. 65 00:03:45,900 --> 00:03:49,750 Međutim, ja ne želim istaknuti Ovo je vrlo posljednja - 66 00:03:49,750 --> 00:03:52,960 NSLog% na znak - 67 00:03:52,960 --> 00:03:55,390 to je rezervirano za objekt. 68 00:03:55,390 --> 00:04:01,160 I kao što sam rekao ranije, Objective-C ponudama prilično puno govore u objektima, 69 00:04:01,160 --> 00:04:05,020 i tako će to doći u uporabi kada želite ispisati, možda, možda 70 00:04:05,020 --> 00:04:08,390 NSArray ili NSDictionary, ili NSString. 71 00:04:08,390 --> 00:04:13,750 >> Dakle, također, primijetiti da je, u našem NSLog Izjava, imamo na znak ispred 72 00:04:13,750 --> 00:04:15,380 u kotaciju - 73 00:04:15,380 --> 00:04:20,769 to je kako bi se pokazalo da je konce, sada, u Objective-C su objekti. 74 00:04:20,769 --> 00:04:23,310 Oni više nisu samo char zvijezde. 75 00:04:23,310 --> 00:04:25,530 To su predmeti i tretirana kao takva. 76 00:04:25,530 --> 00:04:28,690 >> Dakle, jako je važno da kada koristite NSLog je potrebno u NS 77 00:04:28,690 --> 00:04:32,580 string, što znači da ćete imati uključiti AT ispred svog 78 00:04:32,580 --> 00:04:34,270 navodnike. 79 00:04:34,270 --> 00:04:38,290 I to je razlog zašto možete vidjeti, ovdje, u svim moja je funkcija poziva na ovoj NSLog, ja 80 00:04:38,290 --> 00:04:42,400 imaju AT ispred navodnika, čak iako% d i% f-a su 81 00:04:42,400 --> 00:04:45,200 sve isto iz C. 82 00:04:45,200 --> 00:04:47,930 >> Bilo kakva pitanja do sada? 83 00:04:47,930 --> 00:04:50,920 Ja ću pokušati proći kroz to tako brzo da možemo imati više vremena za rad 84 00:04:50,920 --> 00:04:55,210 s Xcode i Objective-C, pa da ti dečki mogu dobiti više 85 00:04:55,210 --> 00:04:57,630 upoznati s njom. 86 00:04:57,630 --> 00:05:01,900 >> Dalje, želim istaknuti nešto konceptualno važno. 87 00:05:01,900 --> 00:05:05,130 Dakle, u C, većina stvari funkcionira. 88 00:05:05,130 --> 00:05:06,280 Mi bi funkciju poziv. 89 00:05:06,280 --> 00:05:10,190 Mi izjavljujemo funkcije na ovaj način, s Povratak upisati prvi, a zatim 90 00:05:10,190 --> 00:05:13,570 Naziv funkcija, zagrade, a zatim bez obzira na argumente i vrsta 91 00:05:13,570 --> 00:05:15,590 ovi argumenti koje želimo proći u. 92 00:05:15,590 --> 00:05:19,970 I Objective-C, jer je sve je objekt ili klasa - 93 00:05:19,970 --> 00:05:23,970 pa klase i objekt su dva pojma koja uglavnom sinonim međusobno 94 00:05:23,970 --> 00:05:28,270 pa sam ih rabe kao sinonimi tijekom seminara. 95 00:05:28,270 --> 00:05:34,090 >> No, vidjet ćete da imamo metode u Objective-C, a ne funkcionira. 96 00:05:34,090 --> 00:05:36,390 I metode pripadaju objekata. 97 00:05:36,390 --> 00:05:38,950 Dakle, baš kao što, možda uzeti na primjer, čvor - 98 00:05:38,950 --> 00:05:40,250 naša vrsta [nečujan] 99 00:05:40,250 --> 00:05:44,390 čvora iz pset 6 ili 5 - 100 00:05:44,390 --> 00:05:49,590 imamo riječ, imovine, ili pored čvora pointer. 101 00:05:49,590 --> 00:05:53,880 Metode su jednostavno djeluje unutar od neke vrste strukture. 102 00:05:53,880 --> 00:05:57,510 >> Dakle, u tom slučaju, struktura bi objekta, te metoda 103 00:05:57,510 --> 00:05:59,260 nešto što pripada nekom objektu. 104 00:05:59,260 --> 00:06:02,650 I to je način na koji će izjaviti, vrsta, metoda. 105 00:06:02,650 --> 00:06:07,990 Ti bi početi sa, opet, povratak tipa - pa, pokušao sam se boji 106 00:06:07,990 --> 00:06:12,990 Kodeks za ključne riječi ovdje, tako da vi momci vidi se, barem, oblikovanje 107 00:06:12,990 --> 00:06:17,650 Sličnosti između funkcije deklaracije i metoda deklaracije. 108 00:06:17,650 --> 00:06:21,990 Dakle, što počnete s, znate, povratak tipa - u ovom slučaju, to je polje, ili 109 00:06:21,990 --> 00:06:23,910 NSArray pokazivač - 110 00:06:23,910 --> 00:06:26,710 i onda imate ovu metodu. 111 00:06:26,710 --> 00:06:30,900 A onda, što je zanimljivo je da umjesto da zagrade, mi 112 00:06:30,900 --> 00:06:32,900 imati ove dvotočke. 113 00:06:32,900 --> 00:06:38,450 I onda, pred našim argumentima, možemo rečeno, opet, u zagradama tip 114 00:06:38,450 --> 00:06:39,370 našeg argumenta. 115 00:06:39,370 --> 00:06:43,160 >> Dakle, u ovom trenutku ja pokušavam napraviti Usporedba, znate, n i 116 00:06:43,160 --> 00:06:45,450 broj, jer oni su Oboje vole Ints. 117 00:06:45,450 --> 00:06:49,580 I zatim, drugi je tip NSUInteger. 118 00:06:49,580 --> 00:06:56,390 A onda, s Objective-C, kad vam žele imati više argumenata u 119 00:06:56,390 --> 00:07:00,030 Vaš način klauzulu, što, na neki način, odvojite ih nekako ovako - 120 00:07:00,030 --> 00:07:03,790 Nisam posve siguran kako bih to opisao, ali ovo je dobar primjer kako se 121 00:07:03,790 --> 00:07:06,530 može imati više argumenata tamo. 122 00:07:06,530 --> 00:07:10,360 >> Možete, naravno, samo totalno ignorirati andArray debelo NSArray 123 00:07:10,360 --> 00:07:13,240 Niz ako ste htjeli samo metodu koja se u jednom argumentu. 124 00:07:13,240 --> 00:07:13,677 Da, pitanje. 125 00:07:13,677 --> 00:07:18,701 >> PUBLIKA: Jesu li i NSUInteger i NSArray argumenata koji se mogu uzeti u 126 00:07:18,701 --> 00:07:21,530 u NSArray? 127 00:07:21,530 --> 00:07:22,060 >> RHED SHI: Da. 128 00:07:22,060 --> 00:07:23,400 Dakle, neka mi objasni. 129 00:07:23,400 --> 00:07:23,790 Dakle, da. 130 00:07:23,790 --> 00:07:30,260 Dakle, pitanje je su NSUInteger i NSArray * vrste argumenata, 131 00:07:30,260 --> 00:07:31,570 i to je točno. 132 00:07:31,570 --> 00:07:35,700 Dakle, uvijek želite odrediti što tip argumentacije je. 133 00:07:35,700 --> 00:07:41,570 I evo, ja pokušavam da vas upoznam za neke od sintaksi i Vocab od 134 00:07:41,570 --> 00:07:45,910 Objective-C, tako da oni koji su stvarni vrste da ćete se bave. 135 00:07:45,910 --> 00:07:48,970 >> I kao što ćete primijetiti, polja više nisu, na neki način, 136 00:07:48,970 --> 00:07:50,780 jednostavni nosač stvari. 137 00:07:50,780 --> 00:07:52,060 To su predmeti. 138 00:07:52,060 --> 00:07:56,700 Iako, ako ćemo ići na iduće slide, možemo vidjeti što možemo 139 00:07:56,700 --> 00:08:02,510 hard-code NSArray u Objective-C s jednostavno na simbol ispred 140 00:08:02,510 --> 00:08:04,190 zagrade. 141 00:08:04,190 --> 00:08:08,650 Nisam, zapravo, sasvim sigurni je li Ja sintaktički hard-kodirane niz 142 00:08:08,650 --> 00:08:16,020 ispravno za C verziju, ali to je Trebao bi biti u C lepezu. 143 00:08:16,020 --> 00:08:19,760 >> Dakle, to je kako bi, da znate, možda koristiti funkcije ili 144 00:08:19,760 --> 00:08:21,990 Metode koje smo stvorili ranije. 145 00:08:21,990 --> 00:08:22,250 Zar ne? 146 00:08:22,250 --> 00:08:25,340 Dakle, ovo je mjesto gdje iskazujemo svoju funkcija i naša metoda. 147 00:08:25,340 --> 00:08:28,020 I sada želimo da ih koriste u naš program, a to je 148 00:08:28,020 --> 00:08:29,450 Kako bismo to učinili. 149 00:08:29,450 --> 00:08:32,400 Dakle, u C, što bi, znate, možda, bool b, te ga postavite na 150 00:08:32,400 --> 00:08:36,549 jednak funkciju, a zatim prođe u argumentima. 151 00:08:36,549 --> 00:08:39,190 >> U Objective-C, to je prilično koliko ista stvar. 152 00:08:39,190 --> 00:08:43,370 Imate NSArray * my_array, a to je će biti jednaka - sad, samo 153 00:08:43,370 --> 00:08:47,460 Razlika je to predmet stvar, koji je sam istaknuo u žuto, a 154 00:08:47,460 --> 00:08:51,180 kao što možete vidjeti, u C, postoji nema druge žute riječi. 155 00:08:51,180 --> 00:08:54,170 A to je zato što metode spadaju u određenom objektu. 156 00:08:54,170 --> 00:08:59,800 Dakle, to je razlog zašto moram imati objekt da, na neki način, naziva ovu metodu na 157 00:08:59,800 --> 00:09:04,360 broj nula, i onda NSArray, b, c, d. 158 00:09:04,360 --> 00:09:05,350 Sva pitanja o tome? 159 00:09:05,350 --> 00:09:12,190 >> Vidjet ćemo ove koncepte u akciji uskoro kad idemo u demo. 160 00:09:12,190 --> 00:09:13,400 OK. 161 00:09:13,400 --> 00:09:17,170 Sada, želim malo govoriti kratko O Xcode 5, koja je 162 00:09:17,170 --> 00:09:21,160 integrirano razvojno okruženje da ćete raditi s. 163 00:09:21,160 --> 00:09:26,160 Znam puno o vama, ili neki od vas, nemaju MACS, što je problem 164 00:09:26,160 --> 00:09:30,490 zato Xcode nije dostupan za Windows i PC. 165 00:09:30,490 --> 00:09:32,785 Nemojte me pitati zašto, ali vjerojatno - 166 00:09:32,785 --> 00:09:33,730 Da, korporativni. 167 00:09:33,730 --> 00:09:35,290 God. 168 00:09:35,290 --> 00:09:39,360 No, svejedno, tako, ispričavam se ako je neki od vi morate preuzeti nekakvu 169 00:09:39,360 --> 00:09:43,000 virtualni stroj za Mac u Kako bi se pokrenuti Xcode 5. 170 00:09:43,000 --> 00:09:46,460 Ali, to je prilično divan softver za korištenje. 171 00:09:46,460 --> 00:09:51,280 >> I tako, prije nego što zaronite u bilo kakve od demo, ja samo želim da vam se prikazati 172 00:09:51,280 --> 00:09:55,700 slika onoga Xcode izgleda u svoj prozor, a potom i razgovarati o 173 00:09:55,700 --> 00:09:57,670 ono što je cijeli ovaj prostor. 174 00:09:57,670 --> 00:10:01,600 Dakle, to je vrsta kao što su učenje kako koristiti Microsoft Word, osim što žele 175 00:10:01,600 --> 00:10:04,675 se upoznati sa svim različitih stvari koje 176 00:10:04,675 --> 00:10:06,250 se ovdje događa. 177 00:10:06,250 --> 00:10:11,160 >> Dakle, prvo, želim vam ukazati na alatnoj traci na vrhu. 178 00:10:11,160 --> 00:10:14,450 Vidjet ćete da je, na vrhu, imat ćete naziv datoteke - 179 00:10:14,450 --> 00:10:18,100 ili, zapravo, zoveš projekt a zatim vaše ime datoteke. 180 00:10:18,100 --> 00:10:20,940 Uzmi u obzir predstave i Zaustavni tipke. 181 00:10:20,940 --> 00:10:24,210 Oni su ti koji ćete biti koristeći se pokrenuti aplikaciju 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 automatski dolazi s Xcode 5, , tako da ne morate brinuti o tome 185 00:10:29,940 --> 00:10:32,070 skidanje nekakav simulator. 186 00:10:32,070 --> 00:10:34,700 Vi samo pritisnite play i onda radi svoj app. 187 00:10:34,700 --> 00:10:39,230 A možete se poigrati s tobom, i vidjet ćete kako se to radi kasnije. 188 00:10:39,230 --> 00:10:42,690 >> A onda, u centru, naravno, gdje je sve svoje prekrasne kod je 189 00:10:42,690 --> 00:10:44,240 ići. 190 00:10:44,240 --> 00:10:48,340 A onda, na lijevoj strani, vi ćete ima to, na neki način, mape - 191 00:10:48,340 --> 00:10:50,340 orijentacija - 192 00:10:50,340 --> 00:10:53,970 a onda, također ćete vidjeti da je, zajedno s ikonom mape, postoje 193 00:10:53,970 --> 00:10:57,680 hrpa drugih ikona ima koji će biti korisna kasnije. 194 00:10:57,680 --> 00:11:04,710 >> A onda, na desnoj strani je program Područje u kojem možete raditi s 195 00:11:04,710 --> 00:11:09,620 neki od objekata i odrediti, te Znaš, ono što bi trebao biti u boji, što 196 00:11:09,620 --> 00:11:12,040 Font tekst bi trebao biti, i tako dalje. 197 00:11:12,040 --> 00:11:15,890 Iako, sve što vam je činiti u komunalnom području, možete 198 00:11:15,890 --> 00:11:17,480 učiniti u kodu kao dobro. 199 00:11:17,480 --> 00:11:21,630 I tako, ja ću se kroz dva primjeri korištenja, jednostavno, nema kod na 200 00:11:21,630 --> 00:11:23,730 svi - ili vrlo minimalan broj - 201 00:11:23,730 --> 00:11:28,290 stihovi sve koda, tek toliko da ti dečki Znaš ono što može i ne može učiniti u 202 00:11:28,290 --> 00:11:29,260 Xcode i Objective-C. 203 00:11:29,260 --> 00:11:32,770 >> A onda, na kraju, na dnu, imate debug područje. 204 00:11:32,770 --> 00:11:37,270 Dakle, više ne morate pokrenuti gdb, et cetera, na svoje programe. 205 00:11:37,270 --> 00:11:39,180 To ga automatski radi za vas. 206 00:11:39,180 --> 00:11:42,880 A također možete ispisati stvari na ovom području. 207 00:11:42,880 --> 00:11:46,790 Pa zapravo, kasnije ćemo proći kroz mario.c, ako ti dečki se još uvijek sjećaju 208 00:11:46,790 --> 00:11:49,000 da, u Xcode. 209 00:11:49,000 --> 00:11:50,360 Tako da bi trebalo biti zabavno. 210 00:11:50,360 --> 00:11:55,870 >> A onda, samo da ga dovede natrag Objective-C, želim istaknuti ono 211 00:11:55,870 --> 00:11:57,440 možete učiniti s ako izjave. 212 00:11:57,440 --> 00:12:03,160 Pa, znate, jer Objective-C je nadskup C, sve što trebate učiniti je, 213 00:12:03,160 --> 00:12:06,890 doslovno, isto kao i C. Vi samo imaju male razlike. 214 00:12:06,890 --> 00:12:10,810 Dakle, primijetit ćete obrazac za li Izjava je uvijek isti - imate 215 00:12:10,810 --> 00:12:14,280 ako je, a onda imate zagrade s stanje unutar, a zatim ga 216 00:12:14,280 --> 00:12:17,150 kovrčava aparatić za sve što želite učiniti unutar postoje. 217 00:12:17,150 --> 00:12:21,680 >> Međutim, želio bih da se taj slide up Ovdje, jednostavno pokazuju da, 218 00:12:21,680 --> 00:12:25,680 zato što smo se bave predmetima sada, ćemo morati koristiti ove stvari 219 00:12:25,680 --> 00:12:31,240 zove kao, jednak niz, koji je je, slučajno, metoda 220 00:12:31,240 --> 00:12:33,710 string ili NSString objekt. 221 00:12:33,710 --> 00:12:38,600 Dakle, riječ, u ovom slučaju, je NSString prigovoriti, a ima metoda zove se 222 00:12:38,600 --> 00:12:44,150 jednaka string, a zatim smo prolazu u hard-coded string vidjeti 223 00:12:44,150 --> 00:12:48,110 jesu li oni koji su jednaki jedna s drugom. 224 00:12:48,110 --> 00:12:51,580 >> Bilo kakva pitanja do sada? 225 00:12:51,580 --> 00:12:52,440 OK. 226 00:12:52,440 --> 00:12:56,190 A, ja želim ići preko za priopćenju također. 227 00:12:56,190 --> 00:13:01,420 >> Tako, primjerice, ako smo htjeli petlji preko duljine niza u C, to 228 00:13:01,420 --> 00:13:03,710 bi trebao biti upoznat s tobom. 229 00:13:03,710 --> 00:13:07,840 A, u Objective-C, ja ne želim istaknuti to, na neki način, 230 00:13:07,840 --> 00:13:09,235 metoda zove računati. 231 00:13:09,235 --> 00:13:13,260 232 00:13:13,260 --> 00:13:15,550 Pa, zapravo, neka mi samo tu rečenicu. 233 00:13:15,550 --> 00:13:17,200 Brojač je metoda polja. 234 00:13:17,200 --> 00:13:21,070 Međutim, to je točnije svojstvo polja, što je razlog zašto vam 235 00:13:21,070 --> 00:13:22,380 Možete koristiti dot zapis. 236 00:13:22,380 --> 00:13:25,870 Ali ja ne želim ulaziti u previše ovaj konceptualni stvari, ja samo želim 237 00:13:25,870 --> 00:13:30,140 da vam pokazati kako bi stvari izgledaju kao u Objective-C u odnosu na C. 238 00:13:30,140 --> 00:13:35,400 >> A isto tako, ja želim istaknuti da iako sam bio koristeći NSUInteger 239 00:13:35,400 --> 00:13:39,860 pred svim mojim Ja je u Objective-C, također možete koristiti int, int, jer je 240 00:13:39,860 --> 00:13:42,290 potpuno vrijede u Objective-C, također. 241 00:13:42,290 --> 00:13:42,475 Da? 242 00:13:42,475 --> 00:13:44,350 >> PUBLIKA: Je li to samo stilsku, ili je - 243 00:13:44,350 --> 00:13:44,760 >> RHED SHI: Da. 244 00:13:44,760 --> 00:13:46,060 Dakle, kao što ćete vidjeti - 245 00:13:46,060 --> 00:13:49,390 Dakle, pitanje je bilo je da samo stilska problem. 246 00:13:49,390 --> 00:13:54,820 Kao što ćete vidjeti, imam, na neki način, zvijezdu Zvjezdica stvar dolje na dnu, a 247 00:13:54,820 --> 00:13:59,870 da link vodi vas na Stack Overflow formirati, gdje je netko objašnjava 248 00:13:59,870 --> 00:14:03,640 Razlika između int u NSInteger i NSUInteger. 249 00:14:03,640 --> 00:14:05,540 I tako, možete pročitati o tome malo kasnije. 250 00:14:05,540 --> 00:14:07,640 Slajdovima će, naravno, dostupne za vas. 251 00:14:07,640 --> 00:14:10,300 252 00:14:10,300 --> 00:14:11,280 >> Idemo vidjeti. 253 00:14:11,280 --> 00:14:12,150 OK, super. 254 00:14:12,150 --> 00:14:15,410 Dakle, to je također uključeno u slide jer sam mislio da je to super 255 00:14:15,410 --> 00:14:19,370 Web stranice koje vas uvodi na Objective-C sintaksom. 256 00:14:19,370 --> 00:14:24,410 Dakle, zapravo, zašto ne bismo preseliti u Chrome i check out ove web stranice? 257 00:14:24,410 --> 00:14:30,650 258 00:14:30,650 --> 00:14:31,300 >> Točno. 259 00:14:31,300 --> 00:14:36,670 Dakle, ono što vam želim pokazati dečki ovdje je ova slika. 260 00:14:36,670 --> 00:14:41,630 Dakle, to je, na neki način, će biti ono što ti ćeš vidjeti što je unutra bilo 261 00:14:41,630 --> 00:14:42,890 Xcode sliku. 262 00:14:42,890 --> 00:14:47,400 263 00:14:47,400 --> 00:14:51,430 Zapravo, zašto ne bismo samo uzeti trenutak da, na neki način, uzeti u. 264 00:14:51,430 --> 00:14:53,470 >> Dakle, ova knjiga - 265 00:14:53,470 --> 00:14:55,880 to je predmet koji imamo posla. 266 00:14:55,880 --> 00:14:59,680 I onda, očito će biti naslijedio od nekog drugog objekta, ali 267 00:14:59,680 --> 00:15:01,810 ne morate brinuti o tome. 268 00:15:01,810 --> 00:15:04,430 A onda, što, možda, ima neke varijable članice. 269 00:15:04,430 --> 00:15:09,160 >> Važno želim vam pokazati je metode primjer, ovdje. 270 00:15:09,160 --> 00:15:12,670 Dakle, prvostupanjski postupci su obilježeni ovim negativnim predznakom. 271 00:15:12,670 --> 00:15:15,550 A onda, kao što ćete primijetiti, mi smo već počinju vidjeti paradigmu 272 00:15:15,550 --> 00:15:17,670 za metodu deklaracije, zar ne? 273 00:15:17,670 --> 00:15:22,670 Povratni tip, ime metoda, te onda tip argumenta, a 274 00:15:22,670 --> 00:15:24,660 zatim naziv argumenta. 275 00:15:24,660 --> 00:15:29,090 A to minus znači da je Postupak stupnja, što znači da se 276 00:15:29,090 --> 00:15:32,270 ove metode su dostupni samo predmeti koji su instancinirana. 277 00:15:32,270 --> 00:15:35,050 278 00:15:35,050 --> 00:15:39,100 >> Da kontrast koji, metode s plus Prijavite se ispred njih su klase 279 00:15:39,100 --> 00:15:43,640 metode, što znači da možete nazvati ove metode, čak i ako nemate 280 00:15:43,640 --> 00:15:45,970 Objekt je stvorio još. 281 00:15:45,970 --> 00:15:51,600 Dakle, za jasan primjer, NSString je klasa. 282 00:15:51,600 --> 00:15:55,850 I vi možete zvati, primjerice, metode klase na NSString - 283 00:15:55,850 --> 00:15:58,660 stvarna, kao, riječ NSString. 284 00:15:58,660 --> 00:16:02,050 >> Međutim, kako bi se koristiti ove metode, što zapravo 285 00:16:02,050 --> 00:16:03,460 potrebno je stvoriti niz. 286 00:16:03,460 --> 00:16:08,980 Na primjer, NSString zvijezda string jednak na navodnika, hello world. 287 00:16:08,980 --> 00:16:10,910 A onda, možete koristiti ove metode - 288 00:16:10,910 --> 00:16:11,990 instance metode - 289 00:16:11,990 --> 00:16:14,790 Na tom Hello World nizu. 290 00:16:14,790 --> 00:16:17,825 Dakle, to je razlika između instance metode i metode klase. 291 00:16:17,825 --> 00:16:20,390 292 00:16:20,390 --> 00:16:21,930 >> A, upravo smo pokriveni ovaj dio. 293 00:16:21,930 --> 00:16:25,300 294 00:16:25,300 --> 00:16:33,750 Nekretnine su još jedna stvar koja se unutar objekata, u osnovi. 295 00:16:33,750 --> 00:16:37,530 A ti ih proglasiti s po ključnoj riječi vlasništva. 296 00:16:37,530 --> 00:16:39,940 Imate ove mogućnosti, ovdje, da ću objasniti kasnije, kada 297 00:16:39,940 --> 00:16:43,110 idemo u demo. 298 00:16:43,110 --> 00:16:43,660 Da? 299 00:16:43,660 --> 00:16:43,950 Bok. 300 00:16:43,950 --> 00:16:45,440 >> PUBLIKA: Možete li zumirati, molim te? 301 00:16:45,440 --> 00:16:46,130 >> RHED SHI: O da. 302 00:16:46,130 --> 00:16:46,560 Oprostite. 303 00:16:46,560 --> 00:16:49,140 >> Ivanković: Hvala vam. 304 00:16:49,140 --> 00:16:50,005 >> RHED SHI: To bi trebalo biti puno bolje. 305 00:16:50,005 --> 00:16:51,240 >> Publika: Da. 306 00:16:51,240 --> 00:16:53,940 Hvala Vam. 307 00:16:53,940 --> 00:16:56,815 >> RHED SHI: Da, molim te podsjeti me ako Zaboravio sam za povećavanje ili smanjivanje. 308 00:16:56,815 --> 00:17:00,590 309 00:17:00,590 --> 00:17:03,570 Dakle, to je sve što sam htio da vam pokazati - 310 00:17:03,570 --> 00:17:05,970 hej, to je puno - 311 00:17:05,970 --> 00:17:06,790 za ovu web stranicu. 312 00:17:06,790 --> 00:17:12,210 Dakle, vratimo se na naše slajdovima. 313 00:17:12,210 --> 00:17:17,819 >> Zapravo, sada neka je uzme trenutak zaroniti u demo. 314 00:17:17,819 --> 00:17:25,490 Dakle, mi ćemo početi s Nova Xcode projekt. 315 00:17:25,490 --> 00:17:33,040 Dakle, ako ćete otvoriti Xcode na sve svoje strojeve, to bi trebalo poduzeti neke 316 00:17:33,040 --> 00:17:36,720 stranica na kojoj piše, kao ni otvorene se postojeći projekt ili novi 317 00:17:36,720 --> 00:17:39,230 Projekt, i trebali kliknite novi projekt. 318 00:17:39,230 --> 00:17:41,477 I onda, to bi trebalo potrajati li na ovaj zaslon. 319 00:17:41,477 --> 00:17:41,593 Da? 320 00:17:41,593 --> 00:17:44,279 >> Ivanković: Ako nemamo Mac, nemojte mi samo vrsta odmarati? 321 00:17:44,279 --> 00:17:46,870 >> RHED SHI: Ili gledati na s nekim, da. 322 00:17:46,870 --> 00:17:47,740 Da. 323 00:17:47,740 --> 00:17:50,660 Možete se opusti, previše. 324 00:17:50,660 --> 00:17:51,570 OK. 325 00:17:51,570 --> 00:17:55,410 >> Dakle, ono što ćemo učiniti prvi, sada, je, zapravo, idemo raditi 326 00:17:55,410 --> 00:17:56,600 jedan pogled prijava. 327 00:17:56,600 --> 00:18:01,340 Dakle, ako ćete primijetiti, što je super o Xcode i Apple podrškom za 328 00:18:01,340 --> 00:18:05,690 razvijen je da imate puno predlošci za rad s već. 329 00:18:05,690 --> 00:18:09,210 Moglo bi se, primjerice, da master-detail prijava. 330 00:18:09,210 --> 00:18:10,920 Možete napraviti igru ​​- 331 00:18:10,920 --> 00:18:13,860 i zapravo, neću ići u igrama, jer igre su druga priča 332 00:18:13,860 --> 00:18:15,320 za iOS razvoj. 333 00:18:15,320 --> 00:18:18,930 I oni su neka vrsta razdvojiti, pa neću ulaziti u to. 334 00:18:18,930 --> 00:18:22,580 >> Onda, što ste stranica bazi aplikacije. 335 00:18:22,580 --> 00:18:24,010 Imate karticu primjenu - 336 00:18:24,010 --> 00:18:29,350 Dakle, kao što je, na primjer, Bank of America Vjerojatno ima, kao što je, na karticama aplikaciju. 337 00:18:29,350 --> 00:18:32,140 To je one u kojima imate tipke na dnu. 338 00:18:32,140 --> 00:18:34,750 I onda, imate Sprite Kit igru. 339 00:18:34,750 --> 00:18:38,670 >> Ili možete raditi od nule, što je ono što ćemo učiniti kasnije. 340 00:18:38,670 --> 00:18:42,470 Ali neka je, prvi put, počnite s jedan pogled prijava. 341 00:18:42,470 --> 00:18:48,590 Onda, što ćete pitati za ime proizvoda, a mi samo možemo napraviti test. 342 00:18:48,590 --> 00:18:50,190 Naziv organizacije - 343 00:18:50,190 --> 00:18:54,140 Dakle, naziv organizacije, identifikator tvrtka - 344 00:18:54,140 --> 00:18:58,100 one su važne, ako idete staviti svoju aplikaciju na App Store. 345 00:18:58,100 --> 00:19:01,110 346 00:19:01,110 --> 00:19:05,116 Osim toga, vaš broj će se izvoditi apsolutno u redu bez toga. 347 00:19:05,116 --> 00:19:09,940 >> To će biti važno ako vam žele - pa, samo po sebi, kao što je, stavio svoj app 348 00:19:09,940 --> 00:19:14,080 na telefon ili nešto, a testiranje to se, znate, u stvarnom životu - 349 00:19:14,080 --> 00:19:15,360 to će biti važno. 350 00:19:15,360 --> 00:19:20,110 To je uglavnom obično je povezan s neka vrsta razvojnog obzir 351 00:19:20,110 --> 00:19:20,970 s Appleom. 352 00:19:20,970 --> 00:19:24,740 >> I tako, znam, vjerojatno, puno vas neće imati račune razvojnog. 353 00:19:24,740 --> 00:19:26,460 Znam sveučilište ima jednu. 354 00:19:26,460 --> 00:19:27,630 Mislim da CS ima jednu. 355 00:19:27,630 --> 00:19:32,770 No, možete mi e-mail, a ja ću pokušati shvatiti da se za vas. 356 00:19:32,770 --> 00:19:38,210 Ali upravo sada, upravo sam stavio u neki placeholder stvari ovdje. 357 00:19:38,210 --> 00:19:41,250 >> A što se, naravno, ovdje, odaberite želite li da to bude isključivo u 358 00:19:41,250 --> 00:19:44,410 iPhone, iPad u, ili oboje - 359 00:19:44,410 --> 00:19:46,630 univerzalna primjena. 360 00:19:46,630 --> 00:19:56,170 Dakle, za sada, idemo napraviti univerzalna, samo vidjeti obje strane platforme. 361 00:19:56,170 --> 00:19:57,120 >> Idemo vidjeti. 362 00:19:57,120 --> 00:20:01,510 Dakle, u ovom trenutku, ja ću spasiti to je u neku vrstu mape. 363 00:20:01,510 --> 00:20:04,500 Nije važno gdje - vas Uvijek možete ga premjestiti kasnije. 364 00:20:04,500 --> 00:20:09,380 I, sad, mi smo donijeli našem Xcode projekt. 365 00:20:09,380 --> 00:20:12,890 Ne bih brinuti o svemu tome. 366 00:20:12,890 --> 00:20:17,510 Ja bih predložiti ne dira bilo koji od to, ako ne znate točno što 367 00:20:17,510 --> 00:20:18,260 što radite. 368 00:20:18,260 --> 00:20:21,750 Dakle, sve to, samo ignorirati za najveći dio. 369 00:20:21,750 --> 00:20:26,940 Nećete morati dirati, a ako Imate li nered neke stvari ovdje, to 370 00:20:26,940 --> 00:20:28,600 dobiva malo lukav. 371 00:20:28,600 --> 00:20:32,480 >> Dakle, zašto ne bismo gledati u spisi o 372 00:20:32,480 --> 00:20:34,700 na lijevoj strani u našem navigator. 373 00:20:34,700 --> 00:20:37,060 Evo, imamo AppDelegate.h. 374 00:20:37,060 --> 00:20:43,430 Imamo AppDelegate.m Dakle, kao što ćete obavijest, mi smo header datoteke, koje 375 00:20:43,430 --> 00:20:45,720 završiti u dot h, a imamo Provedba - 376 00:20:45,720 --> 00:20:46,970 zapravo, neka mi povećali u. 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 Dopustite mi da povećavanje u. 380 00:20:59,940 --> 00:21:05,810 >> Točno, tako da su header datoteke i imate provedbenih datoteke. 381 00:21:05,810 --> 00:21:07,060 Zapravo - 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, ali medvjed sa mnom. 385 00:21:11,800 --> 00:21:16,140 Zatim, jer smo izabrali jedan pogled Zahtjev, idemo se 386 00:21:16,140 --> 00:21:17,340 rad s scenarija. 387 00:21:17,340 --> 00:21:22,140 >> Dakle, storyboard je nešto što Apple je došao gore sa stvarno pomoći 388 00:21:22,140 --> 00:21:26,550 programeri brzo prototip njihova primjena. 389 00:21:26,550 --> 00:21:29,410 Dakle, ovo je mjesto gdje možete stvoriti app bez pisanja 390 00:21:29,410 --> 00:21:31,710 jedna linija koda. 391 00:21:31,710 --> 00:21:35,390 Međutim, u našem pojedinačnom prikazu primjene, mi, naravno, imaju 392 00:21:35,390 --> 00:21:41,270 podnijeti za naš pogled, koji je pogled na kontroler. 393 00:21:41,270 --> 00:21:45,150 Dakle, imamo zaglavlje i Provedba file, ovdje. 394 00:21:45,150 --> 00:21:52,350 >> A, ja idem za smanjivanje sada, jer ćemo morati raditi u storyboard. 395 00:21:52,350 --> 00:21:55,190 Dakle, ovdje je naš pogled. 396 00:21:55,190 --> 00:22:00,120 Ako smo, jednostavno, pokrenuti aplikaciju upravo sada, nema ih puno uzbudljivo događa. 397 00:22:00,120 --> 00:22:03,270 398 00:22:03,270 --> 00:22:05,040 Dakle, vidjet ćete ovaj bijeli zaslon. 399 00:22:05,040 --> 00:22:06,110 OK? 400 00:22:06,110 --> 00:22:14,010 >> A, u našem komunalnom području, možemo dodati hrpa različitih stvari za njega. 401 00:22:14,010 --> 00:22:19,290 Dakle, kada ste se bave s ekranima u iOS, pogled kontroleri 402 00:22:19,290 --> 00:22:23,150 predmeti koji ukratko opisali, vrsta, svoje stavove. 403 00:22:23,150 --> 00:22:26,980 Dakle, pogled na kontroler uvijek ima svojstvo zove pogled. 404 00:22:26,980 --> 00:22:29,610 I to pogled, obično, sadrži, znate, ono što 405 00:22:29,610 --> 00:22:30,810 Želim vidjeti na zaslonu. 406 00:22:30,810 --> 00:22:39,210 >> Dakle, dobro, neka je samo početak stavljajući, možda, možda oznaka. 407 00:22:39,210 --> 00:22:41,450 Dakle, neka je stavi naljepnicu na tu - 408 00:22:41,450 --> 00:22:44,080 staviti ga u sredini. 409 00:22:44,080 --> 00:22:49,560 Dakle, sad kad sam kliknuo na etiketi, ja Možete ići u svojstva inspektora 410 00:22:49,560 --> 00:22:51,510 i početi mijenjati svoju vrijednost. 411 00:22:51,510 --> 00:22:55,040 Nazovimo ga CS50 Boje. 412 00:22:55,040 --> 00:22:58,220 >> A, ja također mogu promijeniti font. 413 00:22:58,220 --> 00:23:02,630 Dakle, umjesto da radi sustava, koji je default, možemo napraviti prilagođeni jedan. 414 00:23:02,630 --> 00:23:03,770 Mi možemo promijeniti - 415 00:23:03,770 --> 00:23:06,453 znate, ultralight, čine ga 32. 416 00:23:06,453 --> 00:23:09,000 417 00:23:09,000 --> 00:23:11,370 I onda, možemo učiniti naš box veći. 418 00:23:11,370 --> 00:23:14,410 >> PUBLIKA: Mislite li da možete zumirati u samo malo više, možda? 419 00:23:14,410 --> 00:23:14,810 >> RHED SHI: Da? 420 00:23:14,810 --> 00:23:16,196 OK. 421 00:23:16,196 --> 00:23:17,450 >> PUBLIKA: Samo ga iskoristiti? 422 00:23:17,450 --> 00:23:19,020 >> RHED SHI: Idemo vidjeti. 423 00:23:19,020 --> 00:23:20,382 Ovo radi? 424 00:23:20,382 --> 00:23:22,270 >> PUBLIKA: Samo prođe Xcode? 425 00:23:22,270 --> 00:23:23,520 >> RHED SHI: Naravno. 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 Strašan. 429 00:23:26,275 --> 00:23:27,072 >> PUBLIKA: label pod? 430 00:23:27,072 --> 00:23:28,920 Oznaka? 431 00:23:28,920 --> 00:23:29,480 >> RHED SHI: Što je to? 432 00:23:29,480 --> 00:23:32,050 >> PUBLIKA: Što padajući Bio etiketa ispod? 433 00:23:32,050 --> 00:23:35,170 >> RHED SHI: Dakle, pitanje je, što se Padajući je etiketa ispod? 434 00:23:35,170 --> 00:23:37,260 To treba, jednostavno, biti pod ovdje. 435 00:23:37,260 --> 00:23:39,330 Mislim da je to kocka stvar. 436 00:23:39,330 --> 00:23:40,910 Ali obično, to je zadana - 437 00:23:40,910 --> 00:23:43,250 Samo ću ovdje dok ne nađem naljepnicu. 438 00:23:43,250 --> 00:23:45,800 439 00:23:45,800 --> 00:23:47,730 Da. 440 00:23:47,730 --> 00:23:48,950 >> Tako sada, mi imamo naljepnicu. 441 00:23:48,950 --> 00:23:51,040 Budimo centra. 442 00:23:51,040 --> 00:23:56,410 I Xcode nam daje smjernice za centriranje objekata. 443 00:23:56,410 --> 00:23:59,510 444 00:23:59,510 --> 00:24:01,480 Dakle, sad idemo ponovo pokrenuti naš kod. 445 00:24:01,480 --> 00:24:08,110 446 00:24:08,110 --> 00:24:08,800 >> Tu smo. 447 00:24:08,800 --> 00:24:10,310 Dakle, imamo CS50 boje. 448 00:24:10,310 --> 00:24:13,720 449 00:24:13,720 --> 00:24:15,420 A sada, idemo staviti gumb tamo, zar ne? 450 00:24:15,420 --> 00:24:17,480 Zato želimo napraviti Ovaj interaktivni. 451 00:24:17,480 --> 00:24:19,410 Dakle, neka je stavi gumb ovdje. 452 00:24:19,410 --> 00:24:39,020 A mi ćemo nazvati ovaj gumb "tap ovdje nastaviti. "Mi ćemo ga u sredinu, također 453 00:24:39,020 --> 00:24:39,990 Zapravo, to je već usmjeren. 454 00:24:39,990 --> 00:24:40,630 Da. 455 00:24:40,630 --> 00:24:43,130 >> Dakle, sad imamo gumb. 456 00:24:43,130 --> 00:24:53,000 A ako ćemo pokrenuti ovo opet, idemo imati lijep mali gumb ovdje. 457 00:24:53,000 --> 00:24:56,520 I ja mogu kliknuti, ali to ne čini ništa, jer nismo učinili 458 00:24:56,520 --> 00:24:58,500 ništa s gumbom još. 459 00:24:58,500 --> 00:25:01,740 >> Dakle, neka je stvoriti još jedan pogled, zar ne? 460 00:25:01,740 --> 00:25:04,160 Dakle, recimo da želim iskoristiti koji gumb i želim 461 00:25:04,160 --> 00:25:05,730 prijeći na drugu stranicu - 462 00:25:05,730 --> 00:25:06,820 još jedan pogled. 463 00:25:06,820 --> 00:25:14,440 Ono što ću učiniti je, ja mogu stvoriti Pogled kontroler, zar ne? 464 00:25:14,440 --> 00:25:19,690 Sada ću kliknite na moj gumb, a zatim, Važno je, ja ću 465 00:25:19,690 --> 00:25:20,910 klik - ili - 466 00:25:20,910 --> 00:25:23,660 Da, pritisnite kontrolu na mojoj tipkovnici. 467 00:25:23,660 --> 00:25:24,880 Kontrola. 468 00:25:24,880 --> 00:25:27,005 Klikom na gumb, a zatim povucite. 469 00:25:27,005 --> 00:25:29,960 470 00:25:29,960 --> 00:25:33,550 >> Dakle, ne zaboravite da zadržite kontrolnu tipku. 471 00:25:33,550 --> 00:25:35,160 Učinimo to opet. 472 00:25:35,160 --> 00:25:40,930 Dakle, držite kontrolu, kliknite i povucite na ono što želite učiniti. 473 00:25:40,930 --> 00:25:41,520 OK. 474 00:25:41,520 --> 00:25:43,610 >> I sad, imam nekoliko opcija ovdje. 475 00:25:43,610 --> 00:25:47,900 Ja mogu ili gurati, ili ja mogu učiniti modalna, ili ja mogu napraviti običaj. 476 00:25:47,900 --> 00:25:50,900 Push je samo ako imate navigacijski kontroler. 477 00:25:50,900 --> 00:25:54,270 Upravo sada, naš prvi pogled kontroler nije unutar bilo 478 00:25:54,270 --> 00:25:55,610 navigacijski kontroler. 479 00:25:55,610 --> 00:25:59,500 Dakle, navigacijski kontroler je jedan koji vam daje leđa gumb na 480 00:25:59,500 --> 00:26:03,910 iOS app gdje imate, znate, da je vrh, vrsta, debela bar - 481 00:26:03,910 --> 00:26:06,480 gdje se može vratiti, ili naprijed, i tako dalje. 482 00:26:06,480 --> 00:26:07,740 Upravo sada, nemam to. 483 00:26:07,740 --> 00:26:11,050 I tako, to je razlog zašto ja ne mogu učiniti push. 484 00:26:11,050 --> 00:26:12,480 >> Dakle, kliknuo sam na guranje slučajno, ovdje. 485 00:26:12,480 --> 00:26:16,480 I doista, neka je pokretanje koda, i to bi trebalo srušiti na mene. 486 00:26:16,480 --> 00:26:19,770 487 00:26:19,770 --> 00:26:22,960 Samo ako sam pritisnite gumb ipak, tako da - 488 00:26:22,960 --> 00:26:23,420 u pravu. 489 00:26:23,420 --> 00:26:26,480 Dakle, to je loše. 490 00:26:26,480 --> 00:26:31,330 >> I, kao što možete vidjeti, ovdje ćemo imaju poruku o pogrešci. 491 00:26:31,330 --> 00:26:35,460 Dakle, "Push segues mogu se koristiti samo kada Izvor kontroler upravlja 492 00:26:35,460 --> 00:26:40,700 instanca UI navigacijski kontroler. " Dakle, zato što to nije bilo u 493 00:26:40,700 --> 00:26:44,030 navigacijski kontroler, Nisam to mogla učiniti. 494 00:26:44,030 --> 00:26:48,782 >> Dakle, upravo sada, idem natrag mape, ide natrag u knjigu snimanja. 495 00:26:48,782 --> 00:26:51,680 >> Publika: Što je navigacijski kontroler, opet? 496 00:26:51,680 --> 00:26:55,260 >> RHED SHI: Dakle, sad ću vam pokazati. 497 00:26:55,260 --> 00:26:56,200 Idemo vidjeti. 498 00:26:56,200 --> 00:27:00,510 Dakle, idem kliknuti na ovom prikazu kontroler, a onda ću otići 499 00:27:00,510 --> 00:27:03,920 do proizvoda - 500 00:27:03,920 --> 00:27:06,240 Zapravo, ne, mi - urednik. 501 00:27:06,240 --> 00:27:08,360 I ja ću ići u - 502 00:27:08,360 --> 00:27:09,350 Zapravo, nije mi kliknite na njega? 503 00:27:09,350 --> 00:27:10,070 Ne. 504 00:27:10,070 --> 00:27:11,080 Tu smo. 505 00:27:11,080 --> 00:27:16,270 Ja ću otići gore u editor, silaze ugraditi u, a zatim navigaciju 506 00:27:16,270 --> 00:27:17,520 kontroler. 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 A, moj radni prostor izgleda jako neuredno, pa neka je počistiti. 510 00:27:27,750 --> 00:27:29,000 Dakle, sve je to storyboard. 511 00:27:29,000 --> 00:27:32,510 512 00:27:32,510 --> 00:27:33,760 I na taj način - 513 00:27:33,760 --> 00:27:37,030 514 00:27:37,030 --> 00:27:38,280 OK, zaustavi - 515 00:27:38,280 --> 00:27:49,320 516 00:27:49,320 --> 00:27:50,860 Ja se brzo izgraditi nešto kao što je ovaj. 517 00:27:50,860 --> 00:27:53,020 I onda, sad sam se vratiti, znaš? 518 00:27:53,020 --> 00:27:55,730 >> No, to je vrsta dosadna, zar ne? 519 00:27:55,730 --> 00:28:03,020 Dakle, ono što želim učiniti je, ne želim da, jednostavno, pogled 520 00:28:03,020 --> 00:28:03,870 kontroler. 521 00:28:03,870 --> 00:28:07,720 Recimo da sam htio zapravo čine Pogled na tablicu kontroler, tako da mogu staviti u 522 00:28:07,720 --> 00:28:12,110 neke lijepe boje, u tablicu. 523 00:28:12,110 --> 00:28:16,210 >> Dakle, sad kad sam stavio u moj pogled stola kontroler, trebam ga spojiti natrag 524 00:28:16,210 --> 00:28:18,560 iz ovog gumb Pogled kontroler. 525 00:28:18,560 --> 00:28:21,780 Zato moram raditi svoj nadzor, klik, povucite stvar opet. 526 00:28:21,780 --> 00:28:27,318 I sad ja mogu učiniti gurati, jer sam položiti to unutar navigacijski kontroler. 527 00:28:27,318 --> 00:28:32,210 >> PUBLIKA: Nalazite kontroler samo omogućuje vam ići od mjesta do mjesta? 528 00:28:32,210 --> 00:28:33,540 >> RHED SHI: Da. 529 00:28:33,540 --> 00:28:38,670 Dakle, više tehnički, to je Objekt u kojem - 530 00:28:38,670 --> 00:28:43,150 Dakle, unutar plovidbe kontroler objekt, što 531 00:28:43,150 --> 00:28:44,780 prati niz. 532 00:28:44,780 --> 00:28:48,300 I to polje ima sve naknadne vidjeli kontrolora. 533 00:28:48,300 --> 00:28:51,560 Zato kad pritisnete natrag, to seže na prethodnu stranicu. 534 00:28:51,560 --> 00:28:55,260 Zbog navigacijski kontroler objekt, ili kod koji se brine o 535 00:28:55,260 --> 00:28:58,890 ovaj objekt, ima niz koji čuva praćenje tih pogled kontrolora, a 536 00:28:58,890 --> 00:29:01,870 može onda, znate, DQ pogled kontroler i dati vam natrag 537 00:29:01,870 --> 00:29:02,750 Prethodni. 538 00:29:02,750 --> 00:29:05,200 >> Dakle, to je tehnička stvar, ali - 539 00:29:05,200 --> 00:29:07,505 a ja ću vam pokazati kasnije u code, ako imamo vremena. 540 00:29:07,505 --> 00:29:10,270 Ja sam vrsta istječe na vrijeme, ali - 541 00:29:10,270 --> 00:29:15,610 >> Dakle, s pogledom na stolu, ono što možemo učiniti je - 542 00:29:15,610 --> 00:29:18,440 To je obično automatski podešavaju dinamičnim Prototype - 543 00:29:18,440 --> 00:29:20,640 ćemo to Statički Stanice bi, inače ti ćemo 544 00:29:20,640 --> 00:29:22,920 upasti u neke probleme. 545 00:29:22,920 --> 00:29:28,470 >> I onda, recimo idem imati jedan dio. 546 00:29:28,470 --> 00:29:31,000 Dakle, rezovi je kao - 547 00:29:31,000 --> 00:29:35,160 Ako ste ikada vidjeli glazbenu aplikaciju, kada imate umjetnika, dijelovi bi 548 00:29:35,160 --> 00:29:37,830 biti je kroz Z's - 549 00:29:37,830 --> 00:29:38,780 slova - 550 00:29:38,780 --> 00:29:42,600 i onda, znate, pojedinac redovi će biti umjetnik imena. 551 00:29:42,600 --> 00:29:47,460 I tako, ono što je cool ovdje, da mogu pristup svim objektima unutar 552 00:29:47,460 --> 00:29:50,430 moje knjige snimanja kroz ovo padajući izbornik, previše. 553 00:29:50,430 --> 00:29:56,600 >> Dakle, idem kliknuti na mom dijelu, i ja želim, znate, možda pet redaka. 554 00:29:56,600 --> 00:30:00,770 I onda, unutar svakog reda, Želim staviti oznaku. 555 00:30:00,770 --> 00:30:04,080 556 00:30:04,080 --> 00:30:06,340 A ja ću nazvati ova plava. 557 00:30:06,340 --> 00:30:09,530 558 00:30:09,530 --> 00:30:15,630 I onda, želim staviti pogled UI, što Znam, možda za, kao, malu kutiju. 559 00:30:15,630 --> 00:30:23,840 560 00:30:23,840 --> 00:30:28,710 >> Tako da mogu pokazati ljudima Pregled boje. 561 00:30:28,710 --> 00:30:34,150 I ja ću se vratiti na imovinu i promijeniti tu boju da, oh, ne znam 562 00:30:34,150 --> 00:30:35,510 Znam, ovaj jedan. 563 00:30:35,510 --> 00:30:38,630 564 00:30:38,630 --> 00:30:43,150 >> A onda, također primijetiti, ovdje, kad imam pribor, mogu imati puno 565 00:30:43,150 --> 00:30:46,160 različitih dodataka koje obično vidimo. 566 00:30:46,160 --> 00:30:55,250 Indikator objavljivanje, detalj ili kvačica, ili jednostavno samo detalj. 567 00:30:55,250 --> 00:30:59,080 Dakle, možda bismo mogli učiniti, kao što je, na otkrivanje indikator, na primjer. 568 00:30:59,080 --> 00:31:03,540 >> I onda, zašto ne uzmemo ove, kopiju zalijepiti ih, i staviti ih u 569 00:31:03,540 --> 00:31:06,740 Sljedeći redak tablice. 570 00:31:06,740 --> 00:31:08,115 Dakle, možemo nazvati ovu žutu. 571 00:31:08,115 --> 00:31:10,620 572 00:31:10,620 --> 00:31:12,155 I možda bih proširiti to. 573 00:31:12,155 --> 00:31:15,730 574 00:31:15,730 --> 00:31:17,290 Učinimo to žuta. 575 00:31:17,290 --> 00:31:20,610 I na ovaj način, možemo kopirati zalijepite naš put prema dolje. 576 00:31:20,610 --> 00:31:24,910 577 00:31:24,910 --> 00:31:25,370 Što je to bilo? 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 >> Dakle, to su sve tipične CS50 boje koje ste vidjeli u razredu - 581 00:31:34,740 --> 00:31:37,160 Zapravo, mi - 582 00:31:37,160 --> 00:31:38,410 ili na web stranici. 583 00:31:38,410 --> 00:31:49,700 584 00:31:49,700 --> 00:31:51,260 Nadam se da dečki mogu vidjeti što radim ovdje. 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 Zadnji put. 588 00:31:58,490 --> 00:32:02,040 >> PUBLIKA: Kako ste dodali red u početku? 589 00:32:02,040 --> 00:32:04,740 >> RHED SHI: Dakle, pitanje je, koliko je jesam li dodati redak u početku? 590 00:32:04,740 --> 00:32:07,500 Otišao sam u ovom dijelu stola - ili ipak mogu 591 00:32:07,500 --> 00:32:09,200 odaberite sekciju stol - 592 00:32:09,200 --> 00:32:11,250 i onda, evo, ja izmijenjena Broj redova. 593 00:32:11,250 --> 00:32:19,920 594 00:32:19,920 --> 00:32:22,505 >> A, neka mi se nadamo da se to radi. 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 Da vidimo je li se to radi. 598 00:32:32,870 --> 00:32:34,000 Oh, savršena, strašan. 599 00:32:34,000 --> 00:32:35,300 OK. 600 00:32:35,300 --> 00:32:40,330 Dok sam gradio moj demo, neki stvari nisu bile usklađene, tako, hvala 601 00:32:40,330 --> 00:32:42,510 pljesak. 602 00:32:42,510 --> 00:32:42,920 >> Da. 603 00:32:42,920 --> 00:32:44,770 Dakle, da vidimo. 604 00:32:44,770 --> 00:32:47,550 Napravit ćemo to devet samo da bi sve - ili zapravo, neka je samo 605 00:32:47,550 --> 00:32:51,420 okrenuti sve one u otkrivanju pokazatelja. 606 00:32:51,420 --> 00:32:55,790 A onda, što vam želim pokazati, također, bilo kako ja mogu uzeti svaki od onih 607 00:32:55,790 --> 00:32:59,230 redove tablice i ima ih u interakciji - 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 Također, želim vam pokazati - 613 00:33:07,230 --> 00:33:13,080 ovdje, ja mogu staviti naslov moje navigacijski kontroler, zar ne? 614 00:33:13,080 --> 00:33:17,090 Pa zapravo, primijetit ćete, čim sam ugrađen ovaj pogled kontroler unutar 615 00:33:17,090 --> 00:33:22,010 navigacijske kontroler, vidimo Ovaj navigacijski bar na vrhu naše 616 00:33:22,010 --> 00:33:25,340 storyboard reprezentacije pogleda kontroler. 617 00:33:25,340 --> 00:33:29,270 I tako, to nam daje, kao što je, vizualne, vrsta, voditi na našoj vidljivom zaslonu. 618 00:33:29,270 --> 00:33:34,360 To očito će biti navigacije. 619 00:33:34,360 --> 00:33:40,950 >> I ono što želim učiniti brzo, Sada, je stavio u drugi - 620 00:33:40,950 --> 00:33:45,880 tako da je ovo stol pogled kontroler sam učinio uzimanje jednog od njih i povlačenjem 621 00:33:45,880 --> 00:33:49,800 ovdje, i to je ono što mi je omogućilo da brzo, zapravo, stvoriti pogled tablice 622 00:33:49,800 --> 00:33:50,850 kontroler. 623 00:33:50,850 --> 00:33:54,100 Ako imate vremena, iako, da ćete vidjeti da, programatski, to je 624 00:33:54,100 --> 00:33:57,660 malo više lukav stvoriti tablicu Pogled kontroler, jer postoji 625 00:33:57,660 --> 00:34:02,520 su nekoliko metoda koje potrebno za vas da, na neki način, pisati 626 00:34:02,520 --> 00:34:07,130 u cilju za prikazu tablice Regulator bi biti točne. 627 00:34:07,130 --> 00:34:15,340 >> Međutim, ja samo želim da vam pokazati, sada, primjer gdje je, ako uzmem taj, 628 00:34:15,340 --> 00:34:15,920 primjerice - 629 00:34:15,920 --> 00:34:18,290 Ja sam stavio u drugi pogled kontroler. 630 00:34:18,290 --> 00:34:27,320 I sad, recimo da želim kontrolirati alt moj prvi plava 631 00:34:27,320 --> 00:34:28,980 redak tablice za ovdje. 632 00:34:28,980 --> 00:34:31,070 I želim nazvati ova plava. 633 00:34:31,070 --> 00:34:32,570 A onda - 634 00:34:32,570 --> 00:34:34,159 da vidimo. 635 00:34:34,159 --> 00:34:41,050 Ja sam na pregledu danas, a ja mogu promijeniti pozadina plava. 636 00:34:41,050 --> 00:34:45,945 >> I tako, obavijest, ovdje, taj padajući Izbornik je također vam daje hijerarhiju sve 637 00:34:45,945 --> 00:34:47,040 tih objekata. 638 00:34:47,040 --> 00:34:50,530 Dakle, važno je imati na umu, ovdje, je da su sve te stvari, ovdje - 639 00:34:50,530 --> 00:34:54,330 ovaj stol pogled kontroler, stolni Pogled, pogled na tablicu dio, pogled na tablicu 640 00:34:54,330 --> 00:34:57,169 stanica - sve su to objektima, u kodu. 641 00:34:57,169 --> 00:35:03,752 Pa, znate, naljepnice upravo sada je pod Pogled sadržaja, et cetera. 642 00:35:03,752 --> 00:35:05,020 Tako dalje i tako dalje. 643 00:35:05,020 --> 00:35:08,765 >> Dakle, ako smo pokrenuti ovaj kod, mi trebali vidjeti nešto - 644 00:35:08,765 --> 00:35:15,816 645 00:35:15,816 --> 00:35:17,870 Da vidimo je li to - da. 646 00:35:17,870 --> 00:35:18,670 Dakle, tu smo. 647 00:35:18,670 --> 00:35:22,120 Ali, ako mi to ne rade, niti jedan od ove druge stvari raditi. 648 00:35:22,120 --> 00:35:22,500 Zar ne? 649 00:35:22,500 --> 00:35:23,800 Dakle, samo to netko radi. 650 00:35:23,800 --> 00:35:29,100 A, zbog vremena, neću ići u, znaš, stavljajući 651 00:35:29,100 --> 00:35:29,770 niz drugih. 652 00:35:29,770 --> 00:35:32,020 I to je kraj, vrsta, storyboard - 653 00:35:32,020 --> 00:35:33,400 ono što sam htio pokazati što za storyboard. 654 00:35:33,400 --> 00:35:36,330 655 00:35:36,330 --> 00:35:43,490 >> I, imam razrađen primjer, Zapravo, upravo ovdje. 656 00:35:43,490 --> 00:35:48,090 Dakle, ovo je storyboard da sam napravio ranije. 657 00:35:48,090 --> 00:35:52,740 Dakle, kao što možete vidjeti, to je moja orijentacija kontroler. 658 00:35:52,740 --> 00:35:57,040 Tada sam imao svoj prvi pogled kontroler, onda sam imao moj pogled na tablicu kontroler, 659 00:35:57,040 --> 00:35:58,980 i onda sam imala sve ove - 660 00:35:58,980 --> 00:36:01,180 kako je ranije, radim nešto vrlo različite. 661 00:36:01,180 --> 00:36:04,450 Dakle, oprostite one stvari. 662 00:36:04,450 --> 00:36:07,930 Vjerojatno ću ga počistiti kasnije pred I pošaljite na proizvodnju. 663 00:36:07,930 --> 00:36:12,800 >> Ali, ako ćemo raditi ovo, vidjet ćemo da su sve opcije su 664 00:36:12,800 --> 00:36:14,050 nam na raspolaganju. 665 00:36:14,050 --> 00:36:18,540 666 00:36:18,540 --> 00:36:21,320 Osim Nisam napraviti pozadine te boje. 667 00:36:21,320 --> 00:36:26,510 Dakle, lijepo jednostavna aplikacija. 668 00:36:26,510 --> 00:36:28,340 >> Sada, idemo pokušati uhvatiti u koštac programatski. 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 Dakle, za to, mi smo samo ide započeti novi Xcode projekt. 672 00:36:37,570 --> 00:36:41,920 Mi ćemo to učiniti sada prazna prijava, jer mi ne želimo imati 673 00:36:41,920 --> 00:36:42,380 storyboard. 674 00:36:42,380 --> 00:36:46,590 Dakle, ja jednostavno sam sebe ograničava na ne koristiti bilo koji od knjige snimanja, a 675 00:36:46,590 --> 00:36:49,170 prazna zahtjev neće daj mi storyboard. 676 00:36:49,170 --> 00:36:52,256 Ovo je samo kako bi se spriječilo ja od varanja. 677 00:36:52,256 --> 00:36:54,428 Idemo vidjeti. 678 00:36:54,428 --> 00:36:55,360 Čekaj. 679 00:36:55,360 --> 00:36:55,960 Jesam - 680 00:36:55,960 --> 00:36:56,448 Da. 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 >> Točno. 684 00:37:09,180 --> 00:37:16,790 Dakle, ovdje, mi smo s lijeve ništa drugo, ali kod. 685 00:37:16,790 --> 00:37:19,460 Dakle, dopustite mi da se presele ovaj prozor nešto više. 686 00:37:19,460 --> 00:37:22,020 687 00:37:22,020 --> 00:37:22,260 Točno. 688 00:37:22,260 --> 00:37:28,160 Kao što možete vidjeti ovdje, samo slika smo dati su AppDelegate.h i točka 689 00:37:28,160 --> 00:37:30,500 m, a nemamo storyboard više. 690 00:37:30,500 --> 00:37:39,580 >> Dakle, ako ćemo raditi ovo, mi smo još uvijek ide doći na bijeli zaslon, hvala Bogu. 691 00:37:39,580 --> 00:37:42,280 OK - bijeli zaslon, ali ništa drugo. 692 00:37:42,280 --> 00:37:45,260 A, ovdje je važan dio. 693 00:37:45,260 --> 00:37:47,810 Ovo je mjesto gdje se radnja događa. 694 00:37:47,810 --> 00:37:51,410 U prethodnim verzijama, postoji obično nema kod ovdje, ali 695 00:37:51,410 --> 00:37:55,600 storyboard osnovi pruža Šifra za ovaj dio. 696 00:37:55,600 --> 00:37:57,470 Neću ići u detalje o tome. 697 00:37:57,470 --> 00:38:02,890 >> I ono što želimo učiniti je sada, želimo ići ovdje, i to malo prostora 698 00:38:02,890 --> 00:38:05,050 ponovno počinje stvaranje našu aplikaciju. 699 00:38:05,050 --> 00:38:06,092 Dakle - 700 00:38:06,092 --> 00:38:06,318 Da? 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 Da, sigurno. 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 Ja ću biti na gumb, tako da to ne bi trebalo smeta previše. 707 00:38:17,380 --> 00:38:17,940 OK. 708 00:38:17,940 --> 00:38:22,720 >> Dakle, prvo, zapamtite što smo željeli stvoriti navigacijski kontroler, zar ne? 709 00:38:22,720 --> 00:38:27,090 A isto tako, kao što možete vidjeti ovdje, Xcode ne stvarno velik posao 710 00:38:27,090 --> 00:38:28,070 self-punjenje. 711 00:38:28,070 --> 00:38:31,650 Dakle, kao što ćete primijetiti, imena sve su to puno više nego 712 00:38:31,650 --> 00:38:33,910 inače, ali Xcode ga popunjava za vas. 713 00:38:33,910 --> 00:38:35,710 Dakle, ja mogu samo pritisnite Enter. 714 00:38:35,710 --> 00:38:40,180 >> Dakle, želim stvoriti UI navigaciju Kontrolor pointer, a ja ga mogu nazvati 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 Sad, što da radim sada? 718 00:38:44,470 --> 00:38:49,510 Nakon ovog znaka jednakosti, trebam, prvo, napravite ga unutar memorije. 719 00:38:49,510 --> 00:38:53,790 Dakle, ja ću učiniti NavigationController Alloc - 720 00:38:53,790 --> 00:38:56,640 Dakle, ovo je slično malloc, da ti dečki koji se koriste u C - 721 00:38:56,640 --> 00:38:58,400 i onda, ja ću ga init. 722 00:38:58,400 --> 00:39:03,670 >> Dakle, jako je važno da bilo Objekt koji ste stvorili, želite 723 00:39:03,670 --> 00:39:04,940 Alloc i init ga. 724 00:39:04,940 --> 00:39:08,600 To će stvoriti i instantialize ga unutar memorije, te 725 00:39:08,600 --> 00:39:10,480 Sada možete ga koristiti. 726 00:39:10,480 --> 00:39:10,780 U redu? 727 00:39:10,780 --> 00:39:14,360 Ako ne učinite, vaš objekt ne ne postoji, a vi ćete upasti u gomilu 728 00:39:14,360 --> 00:39:17,290 problema. 729 00:39:17,290 --> 00:39:20,250 >> I onda, želim stvoriti Pogled kontroler, zar ne? 730 00:39:20,250 --> 00:39:25,580 Dakle, želim stvoriti UIViewController Zvijezda - 731 00:39:25,580 --> 00:39:29,620 Dakle, sve je pokazivač u Objective-C, a ja ću učiniti 732 00:39:29,620 --> 00:39:31,600 nešto slično, ovdje - 733 00:39:31,600 --> 00:39:32,850 Alloc, init. 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 >> A ono što ću učiniti je onda, ja sam će - tako, sjećam se kad smo radili 737 00:39:43,450 --> 00:39:45,360 Postavi u navigacijski kontroler? 738 00:39:45,360 --> 00:39:46,920 Ovo je način kako ste to učiniti u kodu. 739 00:39:46,920 --> 00:39:54,550 Ti ćeš učiniti navigationController 740 00:39:54,550 --> 00:39:55,780 pushViewController - 741 00:39:55,780 --> 00:39:57,636 >> PUBLIKA: [nečujan]. 742 00:39:57,636 --> 00:39:59,030 Hoće li se to dogoditi za nas, ili -? 743 00:39:59,030 --> 00:40:00,080 >> RHED SHI: Oh, da. 744 00:40:00,080 --> 00:40:00,550 Ne. 745 00:40:00,550 --> 00:40:02,740 To mi je draži. 746 00:40:02,740 --> 00:40:04,670 No, to će raditi za vas, previše. 747 00:40:04,670 --> 00:40:06,700 Dakle, to su sve metode. 748 00:40:06,700 --> 00:40:10,400 Tako pushViewController je metoda, i i, točnije, to 749 00:40:10,400 --> 00:40:13,590 instance metoda UI navigacijski kontroler. 750 00:40:13,590 --> 00:40:20,030 Zato sam morao napraviti moj UI navigaciju Kontrolor zvijezda, a onda sam 751 00:40:20,030 --> 00:40:24,510 može nazvati ovu pushViewController na mom specifičan primjerak UI plovidbe 752 00:40:24,510 --> 00:40:25,010 kontroler. 753 00:40:25,010 --> 00:40:29,490 >> Ivanković: Ne moramo napraviti točan Riječ, ili to već postoji za to? 754 00:40:29,490 --> 00:40:31,380 >> RHED SHI: Da, zato što je metoda. 755 00:40:31,380 --> 00:40:32,200 To je poput ovisnosti. 756 00:40:32,200 --> 00:40:33,330 To je kao i printf. 757 00:40:33,330 --> 00:40:34,390 To je kao scanf. 758 00:40:34,390 --> 00:40:36,250 To je kao strcompare. 759 00:40:36,250 --> 00:40:40,310 Osim što zna što možda želite tipa, i primijetiti da ću uvijek 760 00:40:40,310 --> 00:40:42,740 dolazi do stvari koje su zakonski dopušteno za vas. 761 00:40:42,740 --> 00:40:47,620 Dakle, ako se ništa ne pojavi ovdje, onda nešto nije u redu. 762 00:40:47,620 --> 00:40:50,550 >> Dakle, pushViewController. 763 00:40:50,550 --> 00:40:52,580 Dakle, sada, želim gurati moj novostvorena 764 00:40:52,580 --> 00:40:56,850 UIViewController, a zatim, animirani - 765 00:40:56,850 --> 00:40:57,470 možda i ne. 766 00:40:57,470 --> 00:41:00,110 Zbog toga će biti Prvi pogled na kontroler. 767 00:41:00,110 --> 00:41:03,210 Mislim, čak i ako sam napraviti animirani, to vjerojatno neće pojaviti, jer 768 00:41:03,210 --> 00:41:05,050 to je prvi zaslon. 769 00:41:05,050 --> 00:41:06,540 >> I zapamtite nosače. 770 00:41:06,540 --> 00:41:08,850 Dakle, sjetite se kako smo koristili nosače? 771 00:41:08,850 --> 00:41:11,870 A unutar zagrada, Predmet poziva na metodi - 772 00:41:11,870 --> 00:41:15,910 tako je i naš cilj je za navigaciju kontroler, a metoda je pritisak 773 00:41:15,910 --> 00:41:17,210 Pogled kontroler animirani. 774 00:41:17,210 --> 00:41:21,920 A vidite kako je potrebno u dva argumenta, i oni odvojeni, vrsta, 775 00:41:21,920 --> 00:41:24,390 riječi i debelog crijeva. 776 00:41:24,390 --> 00:41:28,300 Dakle, Objective-C pokušava da je lijepo i lako za vas da pročitate naglas - 777 00:41:28,300 --> 00:41:33,020 vaš broj - i to polu, vrsta, ima smisla. 778 00:41:33,020 --> 00:41:37,150 >> Međutim, radi upravo to nije dovoljno. 779 00:41:37,150 --> 00:41:39,780 Dopustite mi udaljili sada. 780 00:41:39,780 --> 00:41:44,210 Radi samo to nije dovoljno da dobili ono što smo dobili na prethodno. 781 00:41:44,210 --> 00:41:48,580 Pa evo, primijetit ćete da postoji zapravo neće biti bilo kakve 782 00:41:48,580 --> 00:41:50,190 bar, ovdje, zar ne? 783 00:41:50,190 --> 00:41:54,680 Nema navigacije, što znači da još uvijek nismo ga stečen. 784 00:41:54,680 --> 00:41:58,850 >> I možemo testirati da se, također, od strane, možda, mijenja pozadinu 785 00:41:58,850 --> 00:42:00,460 ViewController, zar ne? 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 Dakle, vidimo kako ViewController nisu imali boja pozadine, iako sam 790 00:42:07,690 --> 00:42:08,780 Htio mu pristupiti? 791 00:42:08,780 --> 00:42:14,080 A to je zato što ViewController je spremnik za prikaz. 792 00:42:14,080 --> 00:42:19,490 Dakle, ona ima svojstvo pogled, koji onda ima boju pozadine. 793 00:42:19,490 --> 00:42:25,510 >> A, ja mogu postaviti, vrsta tediously, pozivom boju 794 00:42:25,510 --> 00:42:28,130 Na UIColor objekt. 795 00:42:28,130 --> 00:42:33,210 Dakle, obavijest ovdje, redColor je metoda. 796 00:42:33,210 --> 00:42:36,750 To je klasa metoda UIcolor. 797 00:42:36,750 --> 00:42:40,820 Budući da nisam imao stvoriti Stvarni instanca UIColor kako 798 00:42:40,820 --> 00:42:42,020 pozvati metodu na njemu. 799 00:42:42,020 --> 00:42:45,050 Upravo sam, jednostavno, nazvao ga na tipa poput imena. 800 00:42:45,050 --> 00:42:49,620 I, kao što je, pozvao ga na int, int, ako je imao, slično, metoda za to, na primjer. 801 00:42:49,620 --> 00:42:52,380 >> I tako, ako smo pokrenuti ovaj kod, mi ćemo primijetiti da je pozadina 802 00:42:52,380 --> 00:42:53,540 zapravo nije crvena. 803 00:42:53,540 --> 00:42:54,790 To je još uvijek bijela. 804 00:42:54,790 --> 00:42:57,720 805 00:42:57,720 --> 00:43:04,550 I kako možemo dobiti oko koje je, primijetiti kako postoji self.window. 806 00:43:04,550 --> 00:43:08,260 To je, kao što je, krajnji spremnik za prijavu. 807 00:43:08,260 --> 00:43:11,630 To je krajnji stvar koja sadrži sve na ekranu, za 808 00:43:11,630 --> 00:43:13,650 iPhone ili iPad aplikacija. 809 00:43:13,650 --> 00:43:20,970 >> A, povoljno, self.window ima to svojstvo zove 810 00:43:20,970 --> 00:43:22,650 rootViewController. 811 00:43:22,650 --> 00:43:26,480 I to će biti pokazivač Prvi pogled na kontroler unutar 812 00:43:26,480 --> 00:43:27,270 vašeg app. 813 00:43:27,270 --> 00:43:32,000 Dakle, ono što želite učiniti ovdje, sada, je postaviti da je jednaka našoj navigaciju 814 00:43:32,000 --> 00:43:32,710 kontroler. 815 00:43:32,710 --> 00:43:33,760 Zar ne? 816 00:43:33,760 --> 00:43:37,490 Jer, tehnički, navigacija Regulator je naš prvi pogled 817 00:43:37,490 --> 00:43:38,770 kontroler. 818 00:43:38,770 --> 00:43:46,160 Bilježi niz drugih gledišta kontroleri, a mi gurnula to 819 00:43:46,160 --> 00:43:49,810 Pogled kontroler u tom polju u navigacijski kontroler. 820 00:43:49,810 --> 00:43:52,640 >> Dakle, ne želite to učiniti. 821 00:43:52,640 --> 00:43:54,225 To stvarno ne bi vam pomoći. 822 00:43:54,225 --> 00:43:58,040 Želite li to učiniti, ako ste htjeli učiniti navigacijski kontroler, kojih je većina 823 00:43:58,040 --> 00:44:01,100 od vas će se vjerojatno zato što ćete željeti da, na neki način, imaju nekakvu, 824 00:44:01,100 --> 00:44:04,840 kao, izbornik se vratiti u ili nekom stranica se vratiti u, nego 825 00:44:04,840 --> 00:44:05,470 prazan ekran. 826 00:44:05,470 --> 00:44:05,920 Da? 827 00:44:05,920 --> 00:44:11,460 >> PUBLIKA: Je li to neugodno za vas za uvećanje na - 828 00:44:11,460 --> 00:44:12,710 >> RHED SHI: Da. 829 00:44:12,710 --> 00:44:15,310 830 00:44:15,310 --> 00:44:15,720 Dakle, da. 831 00:44:15,720 --> 00:44:22,370 To je broj, a sada ajmo to isprobati. 832 00:44:22,370 --> 00:44:27,920 >> Dakle, tu smo. 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 Dakle, u 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 Pa sad, što želimo učiniti je - tako, mi smo vrsta ograničen, ovdje, zar ne? 839 00:44:38,690 --> 00:44:45,130 Mi potencijalno mogao napisati sve unutar tog jednog funkciji. 840 00:44:45,130 --> 00:44:48,470 No, to nije način za razvoj iOS obično se radi. 841 00:44:48,470 --> 00:44:53,030 >> Dakle, ono što ćemo učiniti je, da smo će stvoriti neke nove datoteke. 842 00:44:53,030 --> 00:44:57,110 Ali, točnije, idemo u stvoriti još Objective-C klase, ili 843 00:44:57,110 --> 00:44:58,010 Još jedan predmet - 844 00:44:58,010 --> 00:45:00,700 klase i objekti su zamjenjivi ovdje. 845 00:45:00,700 --> 00:45:06,460 A, evo kako sam mogao, potencijalno, stvoriti još jednu klasu U-kontrolora. 846 00:45:06,460 --> 00:45:12,030 >> Dakle, to je pod-klase, kao što ćete primijetiti, ovdje, to je pod-klasu 847 00:45:12,030 --> 00:45:15,910 Pogled UI kontroler, ali mogu nazvati ga bilo koje drugo ime ovdje. 848 00:45:15,910 --> 00:45:19,400 Mogao sam nazvati ovaj CS50, mogao bih nazvati ovaj pogled kontroler, mogao sam nazvati 849 00:45:19,400 --> 00:45:21,640 ovaj pogled bla kontroler - 850 00:45:21,640 --> 00:45:22,400 god hoću. 851 00:45:22,400 --> 00:45:24,140 To je samo naziv za klasu. 852 00:45:24,140 --> 00:45:27,020 Međutim, to će biti važno jer, u biti, što radim 853 00:45:27,020 --> 00:45:29,720 ovdje je, ja stvaram drugo ime klase. 854 00:45:29,720 --> 00:45:34,140 Dakle, to će biti, kao, neki kakve vrste ili objekta. 855 00:45:34,140 --> 00:45:35,910 Dakle, to bi trebao biti malo općenito. 856 00:45:35,910 --> 00:45:37,225 Neće biti vrlo specifičan. 857 00:45:37,225 --> 00:45:40,410 858 00:45:40,410 --> 00:45:44,480 >> A isto tako, ja želim istaknuti iz tih dviju opcija. 859 00:45:44,480 --> 00:45:48,430 Budući da radimo sve što je unutar code, ponekad je puno lakše 860 00:45:48,430 --> 00:45:53,540 dovesti u datoteku sučelje, tako da Doslovno sam se povući i ispustiti, kao 861 00:45:53,540 --> 00:45:54,960 smo učinili ranije s storyboard - 862 00:45:54,960 --> 00:45:57,810 znate, naljepnica ili gumb, ili bilo što drugo. 863 00:45:57,810 --> 00:46:01,950 I tako, xibs su datoteke koje vam omogućuju ne da, i morate ga spojiti 864 00:46:01,950 --> 00:46:04,310 na ovu kontroler datoteku pogled. 865 00:46:04,310 --> 00:46:06,540 >> Dakle, ja ću namjerno Nije to provjerili. 866 00:46:06,540 --> 00:46:12,510 Obično bih to provjerili, a ako sam samo što je ovaj za iPhone ili iPad, sam 867 00:46:12,510 --> 00:46:16,340 bi to provjerili i jednostavno se jedan Jer, znate, iPhone ili iPad. 868 00:46:16,340 --> 00:46:19,750 No, budući da radim univerzalna, idem stvoriti dva od onih kasnije. 869 00:46:19,750 --> 00:46:22,220 Dakle, ja ću namjerno isključite to. 870 00:46:22,220 --> 00:46:23,940 >> To je također jako važno. 871 00:46:23,940 --> 00:46:27,490 Mnogo puta, ja sam imao bugova gdje to nije provjerena. 872 00:46:27,490 --> 00:46:31,930 I tako, očito, ova datoteka nije, vrsta, kao što su, uključeno ili uvozi 873 00:46:31,930 --> 00:46:33,740 unutar ove ispitne mape. 874 00:46:33,740 --> 00:46:38,180 I tako, moj broj ima apsolutno nema pojma postojanja ove datoteke, i 875 00:46:38,180 --> 00:46:41,080 koji uzrokuje puno boli i sati za ispravljanje pogrešaka. 876 00:46:41,080 --> 00:46:44,360 No, samo bi bili sigurni da je ovo provjeriti tako da, znate, cilj ovog 877 00:46:44,360 --> 00:46:47,510 datoteka je za ovu aplikaciju. 878 00:46:47,510 --> 00:46:48,310 >> OK. 879 00:46:48,310 --> 00:46:51,680 Dakle, sada smo stvorili dvije nove datoteke. 880 00:46:51,680 --> 00:46:54,050 I ove slike izgledaju prilično prazna. 881 00:46:54,050 --> 00:46:59,550 I, zapravo, da se i dalje Na stvaranjem XIb datoteke. 882 00:46:59,550 --> 00:47:03,690 Dakle, prije, bio sam u Kakao Touch padajući. 883 00:47:03,690 --> 00:47:06,880 Sada, ja ću ići na Korisnika Sučelje na dodir, a kao što možete vidjeti, ja 884 00:47:06,880 --> 00:47:08,120 Možete stvoriti storyboard. 885 00:47:08,120 --> 00:47:11,710 >> Dakle, čak sam počeo s prazna Zahtjev, ja još uvijek mogu koristiti 886 00:47:11,710 --> 00:47:12,340 storyboard. 887 00:47:12,340 --> 00:47:15,480 Iako, se dobiva lukav u smislu o tome kako se želite povezati 888 00:47:15,480 --> 00:47:16,820 da bi kodu. 889 00:47:16,820 --> 00:47:18,230 Dakle, ja ne idem tamo. 890 00:47:18,230 --> 00:47:22,160 >> No, ono što želimo učiniti Trenutno je stvoriti pogled. 891 00:47:22,160 --> 00:47:25,720 I možete odabrati za iPhone ili iPad. 892 00:47:25,720 --> 00:47:30,180 I obično, da označi Razlika - ako radite 893 00:47:30,180 --> 00:47:31,950 univerzalna primjena - 894 00:47:31,950 --> 00:47:35,980 ti bilo staviti donjom iPhone, ili možete napraviti Twiddly. 895 00:47:35,980 --> 00:47:36,980 To uopće nije važno. 896 00:47:36,980 --> 00:47:40,890 To je jednostavno za vas razlikovati koji pogled za koji uređaj. 897 00:47:40,890 --> 00:47:43,470 898 00:47:43,470 --> 00:47:44,430 >> I tako, sada izgleda. 899 00:47:44,430 --> 00:47:47,550 Imam ekran da mogu raditi. 900 00:47:47,550 --> 00:47:53,530 I tako, na primjer, ja mogu staviti oznaku ovdje, znate, i ja isto tako mogu staviti 901 00:47:53,530 --> 00:47:54,820 još jedna tipka ovdje. 902 00:47:54,820 --> 00:47:58,730 Neću gnjaviti mijenja vrijednosti ovdje. 903 00:47:58,730 --> 00:48:09,050 >> No, ono što je ovdje važno je da je datoteka je vlasnik - 904 00:48:09,050 --> 00:48:13,660 Dakle, ja sam u iPhone Pogled, iPhone XIb sliku. 905 00:48:13,660 --> 00:48:18,050 I u ovom području plovidbe ili padajući izbornik, želim ići u 906 00:48:18,050 --> 00:48:19,090 Vlasnik dokumenti su. 907 00:48:19,090 --> 00:48:22,630 A to je stvarno važan korak ovdje. 908 00:48:22,630 --> 00:48:27,780 Želim da se u pogledu klase kontroler, tako da je ova XIb datoteka 909 00:48:27,780 --> 00:48:30,030 će biti povezan s moj pogled na kontroler. 910 00:48:30,030 --> 00:48:33,590 911 00:48:33,590 --> 00:48:39,360 I sve što radim u mome mišljenju Regulator je programatski 912 00:48:39,360 --> 00:48:42,800 će se odraziti na ovdje. 913 00:48:42,800 --> 00:48:46,270 >> Dakle, međutim, primijetiti da je - 914 00:48:46,270 --> 00:48:55,995 zapravo, idemo napraviti ovaj pogled pozadini plave, na primjer. 915 00:48:55,995 --> 00:49:00,280 916 00:49:00,280 --> 00:49:01,530 Ili zelene. 917 00:49:01,530 --> 00:49:03,870 918 00:49:03,870 --> 00:49:07,950 A onda, pa ako ćete primijetiti, natrag u ovaj broj, to je mjesto gdje smo došli do naše 919 00:49:07,950 --> 00:49:09,200 navigacijski kontroler. 920 00:49:09,200 --> 00:49:12,650 921 00:49:12,650 --> 00:49:18,310 >> Iako smo učinili taj korak, to je Još uvijek će biti crvene boje, a ne zelene. 922 00:49:18,310 --> 00:49:20,350 I tu je razlog zašto. 923 00:49:20,350 --> 00:49:28,090 To je zato jer kad smo inited naš pogled kontroler, ovdje - 924 00:49:28,090 --> 00:49:30,010 Žao nam je, to je malo lud - 925 00:49:30,010 --> 00:49:34,520 kad smo inited naš pogled kontroler ovdje, ga inited općeg 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 Pa nismo ni raditi to s ovom razredu. 929 00:49:40,560 --> 00:49:42,030 >> Dakle, ne zaboravite, ovo je kao klasa sada. 930 00:49:42,030 --> 00:49:47,160 To se može shvatiti kao vrsta, samo kao UIViewController je tipa. 931 00:49:47,160 --> 00:49:51,080 A kako bi se to iskoristiti, što trebamo učiniti je uvesti - 932 00:49:51,080 --> 00:49:52,520 uvoz ViewController - 933 00:49:52,520 --> 00:49:55,750 i, kao što možete vidjeti, to to autofills za mene. 934 00:49:55,750 --> 00:49:56,570 Dakle, ViewController - 935 00:49:56,570 --> 00:50:02,070 , a sada, evo, ja to ne mogu promijeniti UIViewController da ViewController. 936 00:50:02,070 --> 00:50:05,050 A sada, evo, ja mogu promijeniti to ViewController. 937 00:50:05,050 --> 00:50:07,790 938 00:50:07,790 --> 00:50:09,250 >> Idemo raditi opet. 939 00:50:09,250 --> 00:50:16,970 940 00:50:16,970 --> 00:50:19,690 To je još uvijek crveni. 941 00:50:19,690 --> 00:50:23,370 A razlog zašto je Još uvijek je crveno, jer - 942 00:50:23,370 --> 00:50:26,230 woah, što se tamo dogodilo? 943 00:50:26,230 --> 00:50:31,500 Htjeli smo povezati ovu XI.b datoteku s pogledom na kontroleru. 944 00:50:31,500 --> 00:50:37,540 Međutim, kako bi se zapravo učiniti da, moramo ulaziti u to. 945 00:50:37,540 --> 00:50:42,980 A kad se to sve init, želimo učiniti initWithNibName, a onda želimo 946 00:50:42,980 --> 00:50:48,910 obaviti na niz View_iPhone, na primjer. 947 00:50:48,910 --> 00:50:51,700 Možete ignorirati paket ovdje. 948 00:50:51,700 --> 00:50:54,965 >> A to se događa kako bi se omogućilo nas, zapravo - 949 00:50:54,965 --> 00:51:00,620 950 00:51:00,620 --> 00:51:02,160 Uh, tu je problem. 951 00:51:02,160 --> 00:51:09,300 952 00:51:09,300 --> 00:51:09,980 Točno. 953 00:51:09,980 --> 00:51:17,670 >> I tako, tu je problem, jer, u naš pogled XIb sliku, imamo naljepnicu i 954 00:51:17,670 --> 00:51:18,720 imamo gumb. 955 00:51:18,720 --> 00:51:23,660 Međutim, iako smo povezani njih dvojica, nema ništa unutar 956 00:51:23,660 --> 00:51:27,440 ViewController.h ili ViewController.m koji odražavaju onima 957 00:51:27,440 --> 00:51:29,160 tipke ili one oznake. 958 00:51:29,160 --> 00:51:32,425 Dakle, moramo napisati onima u što svojstva pogled kontroler. 959 00:51:32,425 --> 00:51:35,290 960 00:51:35,290 --> 00:51:39,490 >> Dakle, to je, kako se proglasiti vlasništvo. 961 00:51:39,490 --> 00:51:43,422 Potrebno je u, najčešće, ove dvije opcije. 962 00:51:43,422 --> 00:51:48,690 Za potrebe nas i ovog seminara, Ja bih rekao da se, u cjelini, 963 00:51:48,690 --> 00:51:52,250 većina svojstva su nonatomic i zadržati. 964 00:51:52,250 --> 00:51:55,420 Možete pročitati by Google traži, znaš, razlika između 965 00:51:55,420 --> 00:51:58,620 nonatomic i zadržati se na, ti Znam, Google ili nešto. 966 00:51:58,620 --> 00:52:01,090 I ja ću vas odvesti u, kao što je, Stack Overflow, gdje će ljudi imati 967 00:52:01,090 --> 00:52:03,605 odgovori za razlike između onih. 968 00:52:03,605 --> 00:52:07,000 No, za sada, to je ono što smo žele da se bave. 969 00:52:07,000 --> 00:52:12,790 >> I želimo napraviti UI naljepnicu, zvijezdu, i možemo ga nazvati kako god želimo. 970 00:52:12,790 --> 00:52:15,710 Možemo nazvati to, znate, label. 971 00:52:15,710 --> 00:52:18,270 972 00:52:18,270 --> 00:52:20,110 A, mi ćemo stvoriti još jedan jedan za gumb. 973 00:52:20,110 --> 00:52:24,380 974 00:52:24,380 --> 00:52:29,910 I ne zaboravite uključiti zvjezdicu, jer se radi s pokazivačima 975 00:52:29,910 --> 00:52:36,740 skoro svugdje u od Objective-C. 976 00:52:36,740 --> 00:52:42,110 >> Međutim, kako će još uvijek nije riješio Problem je, kao što možete vidjeti ovdje. 977 00:52:42,110 --> 00:52:50,540 A razlog je zato, kad god smo želite spojiti XIb sliku naljepnicu ili 978 00:52:50,540 --> 00:52:55,690 Tipka za program, odnosno header i provedba datoteka, želimo 979 00:52:55,690 --> 00:52:58,255 dodati ovaj dio koda - 980 00:52:58,255 --> 00:53:00,610 utičnicu. 981 00:53:00,610 --> 00:53:03,600 Uočite da je ključna riječ. 982 00:53:03,600 --> 00:53:07,970 >> I, čim završim s tipkanjem koji se, to bi trebao imati te 983 00:53:07,970 --> 00:53:09,100 dva kruga, ovdje. 984 00:53:09,100 --> 00:53:11,200 Obično, oni ne ispuniti 985 00:53:11,200 --> 00:53:12,920 Nisam siguran zašto su. 986 00:53:12,920 --> 00:53:21,370 Ali obično, morat ćete ručno spojite ih tako da odete na ovu stranu 987 00:53:21,370 --> 00:53:23,530 područje komunalije. 988 00:53:23,530 --> 00:53:28,430 >> I tako, u ovom trenutku, ja imam svoju naljepnicu izabran, a ja želim povući taj novi 989 00:53:28,430 --> 00:53:33,910 upućivanjem utičnicu za moj dosje vlasnika, , a zatim kliknite na oznaku. 990 00:53:33,910 --> 00:53:40,230 Tako sada, konačno, ova oznaka je povezani s tom oznakom. 991 00:53:40,230 --> 00:53:44,950 I ova oznaka je ono što ćemo koristiti programski mijenjati svoje 992 00:53:44,950 --> 00:53:49,250 tekst, njegov font, pozadine u boji, et cetera. 993 00:53:49,250 --> 00:53:52,430 >> Dakle, zašto ne radimo Isto za gumb? 994 00:53:52,430 --> 00:53:54,770 I kao što ćete primijetiti, za gumb, to je malo kompliciranije. 995 00:53:54,770 --> 00:53:59,060 Jer, mislim, ti si trebao pritisnite na gumb, tako da ima puno 996 00:53:59,060 --> 00:54:02,950 mogućnosti za način na koji korisnici Pritiskom na gumb. 997 00:54:02,950 --> 00:54:06,570 I onda, vidjet ćemo kasnije da možemo povezati ovo naše 998 00:54:06,570 --> 00:54:09,140 koda kako bi proradio. 999 00:54:09,140 --> 00:54:12,770 >> Dakle, za sada ipak, želimo povezati da se stvarni gumb 1000 00:54:12,770 --> 00:54:13,570 unutar našeg koda. 1001 00:54:13,570 --> 00:54:19,640 Dakle, idemo na novu upućivanjem utičnicu, a zatim napraviti gumb. 1002 00:54:19,640 --> 00:54:22,068 Sada, neka je pokrenuti ovaj opet. 1003 00:54:22,068 --> 00:54:23,040 Uh. 1004 00:54:23,040 --> 00:54:23,890 OK. 1005 00:54:23,890 --> 00:54:25,140 Ne znam što se događa ovdje i sada. 1006 00:54:25,140 --> 00:54:48,450 1007 00:54:48,450 --> 00:54:49,700 Opa. 1008 00:54:49,700 --> 00:54:57,380 1009 00:54:57,380 --> 00:54:58,960 Samo jedan trenutak, ovdje. 1010 00:54:58,960 --> 00:55:02,490 >> Zapravo, zašto ne uzmemo pogled na još jedan primjer u 1011 00:55:02,490 --> 00:55:05,800 Interes vrijeme. 1012 00:55:05,800 --> 00:55:06,200 OK. 1013 00:55:06,200 --> 00:55:10,610 Dakle, ovdje je lakše pripremiti Primjer za ViewController. 1014 00:55:10,610 --> 00:55:13,230 1015 00:55:13,230 --> 00:55:17,110 Kao što možete vidjeti ovdje, ja sam uključen svojstva za 1016 00:55:17,110 --> 00:55:18,460 Oznaka i gumb. 1017 00:55:18,460 --> 00:55:20,370 A onda, ovaj dio koda ovdje - 1018 00:55:20,370 --> 00:55:21,830 ovo IBaction - 1019 00:55:21,830 --> 00:55:27,740 je veza s tom tipkom ovdje. 1020 00:55:27,740 --> 00:55:33,940 Dakle, kao što možete vidjeti ovdje, Touch iznutra spojen na selektor 1021 00:55:33,940 --> 00:55:37,390 zove tipku. 1022 00:55:37,390 --> 00:55:41,700 >> Dakle, mi zapravo može proći kroz Prijedlog opet, ovdje, uzimanjem dotjerati 1023 00:55:41,700 --> 00:55:48,750 Unutar i povučete File kao vlasnik, a zatim 1024 00:55:48,750 --> 00:55:51,570 kliknite na tipku. 1025 00:55:51,570 --> 00:55:52,820 Sada, neka je pokrenuti naš kod. 1026 00:55:52,820 --> 00:55:55,710 1027 00:55:55,710 --> 00:56:02,020 Tako sada, ovaj gumb sada radi i će nas odvesti na sljedeću stranicu. 1028 00:56:02,020 --> 00:56:08,430 >> A, što se tiče naše pogled kontroler, ovo je dio koda koji je 1029 00:56:08,430 --> 00:56:10,000 briga o tipku. 1030 00:56:10,000 --> 00:56:14,260 I važno je napomenuti da se ovdje, da Ja sam stvorio neku drugu vrstu pogledom 1031 00:56:14,260 --> 00:56:16,330 Kontrolor zove stol Pogled kontroler. 1032 00:56:16,330 --> 00:56:19,900 Dakle, to je bila slična natrag u storyboard, kad sam vukao jedan od 1033 00:56:19,900 --> 00:56:23,450 ovi stol pogled kontroleri u knjizi snimanja. 1034 00:56:23,450 --> 00:56:24,470 Ja sam kreirati drugi 1035 00:56:24,470 --> 00:56:30,000 >> Pokazivač na stol pogled kontroler, Alloc i init-ing, a zatim radi 1036 00:56:30,000 --> 00:56:34,490 samouprave dot navigacijski kontroler, gurati ViewController, ovaj novi 1037 00:56:34,490 --> 00:56:35,350 viewController. 1038 00:56:35,350 --> 00:56:39,750 I sam postaviti animaciju na yes, jer sada u mome app, i ja 1039 00:56:39,750 --> 00:56:45,670 žele zapravo vidjeti animaciju ide na početnoj stranici na stol 1040 00:56:45,670 --> 00:56:46,920 Pogled kontroler. 1041 00:56:46,920 --> 00:56:48,830 1042 00:56:48,830 --> 00:56:51,110 >> Ivanković: Još uvijek brinuti o odvoz smeća? 1043 00:56:51,110 --> 00:56:51,840 >> RHED SHI: Što je to? 1044 00:56:51,840 --> 00:56:54,740 Ne. 1045 00:56:54,740 --> 00:56:58,970 Dakle, pitanje je, da li vi imate za rad sa odvoz smeća? 1046 00:56:58,970 --> 00:57:03,470 Dakle, Xcode 4 je kao ARC, što je automatska referenca brojanje. 1047 00:57:03,470 --> 00:57:06,120 I tako, obično kad počnete novi projekt, te će provjeriti da, jer 1048 00:57:06,120 --> 00:57:09,440 nitko ne želi baviti oslobađajući sjećanje i stvari. 1049 00:57:09,440 --> 00:57:13,720 Ali mislim da je u Xcode 5, ne postoji ni ta opcija na novom projektu. 1050 00:57:13,720 --> 00:57:16,750 Dakle, on se automatski to radi za vas. 1051 00:57:16,750 --> 00:57:16,920 Da? 1052 00:57:16,920 --> 00:57:20,970 >> PUBLIKA: Možete li izvesti PDF na svoje knjige snimanja? 1053 00:57:20,970 --> 00:57:22,020 >> RHED SHI: Da, definitivno. 1054 00:57:22,020 --> 00:57:28,180 Dakle, svi oni će biti uključeni u izvorni kod, tako da dečki mogu provjeriti 1055 00:57:28,180 --> 00:57:30,730 Stvarni Xcode projekt za njega. 1056 00:57:30,730 --> 00:57:31,105 Da? 1057 00:57:31,105 --> 00:57:35,944 >> Publika: Ali, mislim, kao, može sam ispisati PDF sa mojim storyboard? 1058 00:57:35,944 --> 00:57:38,920 Ako ja samo želim da se izvoz slike pokazati nekome. 1059 00:57:38,920 --> 00:57:39,160 >> RHED SHI: Oh yeah. 1060 00:57:39,160 --> 00:57:41,980 Mislim, možda, možete samo snimku zaslona. 1061 00:57:41,980 --> 00:57:44,350 Da, i poslati im zaslon metak ili nešto. 1062 00:57:44,350 --> 00:57:45,600 Da. 1063 00:57:45,600 --> 00:57:49,170 1064 00:57:49,170 --> 00:57:50,570 >> Dakle, da vidimo. 1065 00:57:50,570 --> 00:57:56,470 U interesu vremena, mislim to je sve što ja mogu pokriti i danas. 1066 00:57:56,470 --> 00:57:59,600 No, znam da je to, zapravo, samo jedva dodiruju površinu iOS 1067 00:57:59,600 --> 00:58:00,370 razvoj. 1068 00:58:00,370 --> 00:58:05,630 Dakle, slobodno mi se obratite ukoliko Imate li pitanja o iOS 1069 00:58:05,630 --> 00:58:07,000 razvoj. 1070 00:58:07,000 --> 00:58:12,840 I, nadam se, ja ću biti u mogućnosti očistiti neke od koda za izvorom 1071 00:58:12,840 --> 00:58:16,830 kod datoteke, tako da ćete imati neke stvarno lijepih primjera raditi. 1072 00:58:16,830 --> 00:58:21,020 >> Osim toga, ako idete do CS50 Hackathon, ja mogu ili 1073 00:58:21,020 --> 00:58:25,730 Ne biti tamo, a ja mogu pomoći s nekim iOS razvoja, previše. 1074 00:58:25,730 --> 00:58:26,980 Dakle, puno hvala, dečki. 1075 00:58:26,980 --> 00:58:31,168