1 00:00:00,000 --> 00:00:07,880 2 00:00:07,880 --> 00:00:09,800 >> RHED SHI: Vítejte viz CS50 seminář - 3 00:00:09,800 --> 00:00:11,630 Úvod do iOS. 4 00:00:11,630 --> 00:00:13,290 Děkuji vám všem za účast. 5 00:00:13,290 --> 00:00:16,610 Doufám, že jste stejně nadšení jak jsem o iOS. 6 00:00:16,610 --> 00:00:22,300 V loňském roce jsem se CS50 jako druhák, a já jsem v podstatě naučil iOS for my 7 00:00:22,300 --> 00:00:23,490 konečný projekt. 8 00:00:23,490 --> 00:00:26,350 A to bylo dost - 9 00:00:26,350 --> 00:00:30,530 dobře, že to nebylo snadné, ale existuje spousta podpůrných výukových programů on-line. 10 00:00:30,530 --> 00:00:33,760 A já opravdu doufám, že se to seminář, dám ti kluci hlavu 11 00:00:33,760 --> 00:00:36,750 začít na iOS vývoje 12 00:00:36,750 --> 00:00:40,490 >> Takže, pokud jde o vývoj iOS, tam jsou dvě hlavní věci, které jsme 13 00:00:40,490 --> 00:00:42,090 chcete pokrýt dnes. 14 00:00:42,090 --> 00:00:43,290 Za prvé, jazyk - 15 00:00:43,290 --> 00:00:46,650 jazyk, bude v Objective-C. Budeme opravdu slyšet 16 00:00:46,650 --> 00:00:47,750 něco opravdu vzrušující. 17 00:00:47,750 --> 00:00:51,500 Takže, můžete se připojit celou Apple komunita vývojářů a vybudovat některé 18 00:00:51,500 --> 00:00:52,940 opravdu úžasné aplikace. 19 00:00:52,940 --> 00:00:58,670 >> Také iOS 7 je krásná, doufejme, pro některé z vás. 20 00:00:58,670 --> 00:01:01,130 Ale je to kontroverzní, já vím. 21 00:01:01,130 --> 00:01:05,349 A hlavně, co chci udělat, je průvodce můžete pomocí Objective-C, a také 22 00:01:05,349 --> 00:01:10,650 Xcode, který je integrovaný vývojové prostředí, které budete 23 00:01:10,650 --> 00:01:13,460 práce v pro iOS. 24 00:01:13,460 --> 00:01:19,140 >> A tak, jen slovo o Objective-C. V podstatě, to je přesně stejný jako C, 25 00:01:19,140 --> 00:01:22,790 ale se spoustou dalších věcí. 26 00:01:22,790 --> 00:01:27,710 A tak, přísněji, je to vlastně super-sada C. Takže cokoliv, co jste 27 00:01:27,710 --> 00:01:32,280 můžete udělat v C právě teď, což je v podstatě rád pset 0 až 6, vy 28 00:01:32,280 --> 00:01:34,170 můžete udělat v Objective-C. 29 00:01:34,170 --> 00:01:38,620 >> Takže nemusíte bát o tento nový jazyk, který se chystáte učit. 30 00:01:38,620 --> 00:01:42,120 Už jste se vztahuje mnoho z toho, protože jste vše udělali C Tento minulost 31 00:01:42,120 --> 00:01:45,880 semestr, kromě teď budeš mít mnohem více pracovat. 32 00:01:45,880 --> 00:01:49,270 A já jen tak, aby vás vedl přes Pár příkladů poukázat na některé 33 00:01:49,270 --> 00:01:53,920 z klíčových rozdílů, které jsem našel byly opravdu důležité, když jsem se dozvěděl, 34 00:01:53,920 --> 00:01:57,180 Objective-C v loňském roce. 35 00:01:57,180 --> 00:02:00,910 >> Tak vlastně tak, druhý bod je, Objective-C, je, samozřejmě, 36 00:02:00,910 --> 00:02:02,200 objektově orientované. 37 00:02:02,200 --> 00:02:06,340 A budeme diskutovat o trochu o tom, co to znamená, že později. 38 00:02:06,340 --> 00:02:11,340 V podstatě je to jako, jak jste pracovali s structs v uplynulém pset, s 39 00:02:11,340 --> 00:02:13,360 uzly a podobné další podobné věci. 40 00:02:13,360 --> 00:02:17,110 Až na to, v Objective-C, všechno je objekt, a budete mít 41 00:02:17,110 --> 00:02:20,720 procházející kolem ukazatele na objekty spíše než samotné hodnoty. 42 00:02:20,720 --> 00:02:25,050 Takže, je to prostě něco důležitého mít na paměti. 43 00:02:25,050 --> 00:02:29,140 >> Tak proč nezačít s několika rozdíly v syntaxi mezi C a 44 00:02:29,140 --> 00:02:30,540 Objective-C? 45 00:02:30,540 --> 00:02:38,310 Chci zdůraznit # include, můžete Víš, standardní io.h v C a C + +, s 46 00:02:38,310 --> 00:02:44,030 Objective-C verze, která, které je # import, a pak nějaký 47 00:02:44,030 --> 00:02:44,790 hlavičkový soubor. 48 00:02:44,790 --> 00:02:48,165 V tomto případě by bylo UIKit, Víte, lomítko UIKit.h. 49 00:02:48,165 --> 00:02:53,560 Mohlo by to také být, víte, MKMapview aby jste lomítko MKMapview.h, pokud chcete 50 00:02:53,560 --> 00:02:56,370 dělat, jako, mapu uvnitř vaší aplikace. 51 00:02:56,370 --> 00:02:57,110 Podobné věci, jako že. 52 00:02:57,110 --> 00:03:01,250 >> Takže důležité je zahrnout se nyní změnilo importovat. 53 00:03:01,250 --> 00:03:04,340 Ale myšlenka zůstává. 54 00:03:04,340 --> 00:03:10,460 Budeš se dováží nějakou z hlavičkového souboru do programu. 55 00:03:10,460 --> 00:03:14,550 >> Chci také upozornit na rozdíl mezi printf a NSLog. 56 00:03:14,550 --> 00:03:19,760 Nicméně, jak jsme řekli dříve, Objective-C je přísný super-sada 57 00:03:19,760 --> 00:03:22,800 C, což znamená, že existuje printf v Objective-C, taky. 58 00:03:22,800 --> 00:03:24,340 Ale většina lidí nepoužívá to. 59 00:03:24,340 --> 00:03:28,245 Většina lidí používá tento NSLog, protože to vám dává časové razítko, a uvidíme 60 00:03:28,245 --> 00:03:29,780 je v akci později. 61 00:03:29,780 --> 00:03:33,560 Ale, to je obecně mnohem užitečnější způsob, jak vytisknout proměnné. 62 00:03:33,560 --> 00:03:38,220 >> A chci také zdůraznit, že NSLog se v jen stejný 63 00:03:38,220 --> 00:03:41,650 zástupné hodnoty jako printf dělá - 64 00:03:41,650 --> 00:03:45,900 takže% d je pro int, % F je na plováku. 65 00:03:45,900 --> 00:03:49,750 Nicméně, já chci zdůraznit, Tento velmi poslední - 66 00:03:49,750 --> 00:03:52,960 NSLog% na znamení - 67 00:03:52,960 --> 00:03:55,390 že je zástupný symbol pro objekt. 68 00:03:55,390 --> 00:04:01,160 A jak už jsem řekl dříve, Objective-C se zabývá do značné míry především v objektech, 69 00:04:01,160 --> 00:04:05,020 a tak to přijde v použití, když chcete vytisknout, možná, možná 70 00:04:05,020 --> 00:04:08,390 NSArray, nebo NSDictionary, nebo NSString. 71 00:04:08,390 --> 00:04:13,750 >> Tak, také, Všimněte si, že v naší NSLog prohlášení, máme na znamení před 72 00:04:13,750 --> 00:04:15,380 citátu - 73 00:04:15,380 --> 00:04:20,769 která je na znamení, že řetězce, teď, v Objective-C, jsou objekty. 74 00:04:20,769 --> 00:04:23,310 Oni jsou již jen char hvězdy. 75 00:04:23,310 --> 00:04:25,530 Jsou to objekty a jsou zacházeno jako takový. 76 00:04:25,530 --> 00:04:28,690 >> Takže, je to opravdu důležité, že při Používáte NSLog trvá v NS 77 00:04:28,690 --> 00:04:32,580 řetězec, což znamená, že budete mít zahrnout AT v přední části 78 00:04:32,580 --> 00:04:34,270 uvozovky. 79 00:04:34,270 --> 00:04:38,290 A to je důvod, proč vidíte, tady, ve všech moje volání funkce tohoto NSLog, jsem 80 00:04:38,290 --> 00:04:42,400 mají AT před uvozovek, dokonce ačkoli% d a% f je jsou 81 00:04:42,400 --> 00:04:45,200 všechny stejné od C. 82 00:04:45,200 --> 00:04:47,930 >> Jakékoliv dotazy tak daleko? 83 00:04:47,930 --> 00:04:50,920 Pokusím se projít tak rychle, aby že můžeme mít více času na práci 84 00:04:50,920 --> 00:04:55,210 s Xcode a Objective-C, tak že vy můžete dostat více 85 00:04:55,210 --> 00:04:57,630 obeznámeni s tím. 86 00:04:57,630 --> 00:05:01,900 >> Dále chci upozornit na něco, koncepčně důležité. 87 00:05:01,900 --> 00:05:05,130 Takže, v C, většina věcí jsou funkce. 88 00:05:05,130 --> 00:05:06,280 Vyrábíme volání funkce. 89 00:05:06,280 --> 00:05:10,190 Prohlašujeme FUNKCE tímto způsobem, se zadejte první návrat, pak 90 00:05:10,190 --> 00:05:13,570 název funkce, závorky, a pak bez ohledu na argumenty a typ 91 00:05:13,570 --> 00:05:15,590 Tyto argumenty chceme projít dovnitř 92 00:05:15,590 --> 00:05:19,970 A Objective-C, protože všechno je objekt nebo třída - 93 00:05:19,970 --> 00:05:23,970 takže třída a objekt jsou dva pojmy, které jsou většinou synonymem s sebou, 94 00:05:23,970 --> 00:05:28,270 tak jsem jim mohou používat zaměnitelně v průběhu semináře. 95 00:05:28,270 --> 00:05:34,090 >> Ale uvidíte, že máme metody Objective-C, spíše než funkce. 96 00:05:34,090 --> 00:05:36,390 A metody patří k objektům. 97 00:05:36,390 --> 00:05:38,950 Takže stejně, možná se Například uzel - 98 00:05:38,950 --> 00:05:40,250 náš typ [neslyšitelný] 99 00:05:40,250 --> 00:05:44,390 Uzel z pset 6 nebo 5 - 100 00:05:44,390 --> 00:05:49,590 máme slovo, majetku, nebo další ukazatel uzel. 101 00:05:49,590 --> 00:05:53,880 Metody jsou prostě funguje uvnitř z nějaké struktury. 102 00:05:53,880 --> 00:05:57,510 >> Takže v tomto případě, struktura bude objekt, a pak je metoda 103 00:05:57,510 --> 00:05:59,260 něco, co patří k objektu. 104 00:05:59,260 --> 00:06:02,650 A to je, jak byste prohlásit, druh, metoda. 105 00:06:02,650 --> 00:06:07,990 Ty by začít znovu, návrat typ - tak jsem se snažil barvy 106 00:06:07,990 --> 00:06:12,990 kód klíčová slova zde, aby vy můžete vidět, alespoň, formátování 107 00:06:12,990 --> 00:06:17,650 podobnosti mezi funkcí prohlášení a metody prohlášení. 108 00:06:17,650 --> 00:06:21,990 Takže začnete s, víte, návrat typ - v tomto případě je to pole, nebo 109 00:06:21,990 --> 00:06:23,910 NSArray ukazatel - 110 00:06:23,910 --> 00:06:26,710 a pak máte tuto metodu. 111 00:06:26,710 --> 00:06:30,900 A pak, co je zajímavé je zde že namísto závorky, jsme 112 00:06:30,900 --> 00:06:32,900 mají tyto dvojtečky. 113 00:06:32,900 --> 00:06:38,450 A pak, v přední části našich argumentů, jsme řečeno, opět v závorkách typ 114 00:06:38,450 --> 00:06:39,370 našeho argumentu. 115 00:06:39,370 --> 00:06:43,160 >> Tak, teď se snažím, aby srovnání, víte, n a 116 00:06:43,160 --> 00:06:45,450 číslo, protože to oba jako ints. 117 00:06:45,450 --> 00:06:49,580 A pak, druhý je typ NSUInteger. 118 00:06:49,580 --> 00:06:56,390 A pak, s Objective-C, když vám Chcete mít více argumentů ve 119 00:06:56,390 --> 00:07:00,030 vaše metoda klauzule, vy, druh, oddělit se něco jako toto - 120 00:07:00,030 --> 00:07:03,790 Nejsem si zcela jist, jak to popsat, ale je to dobrý příklad toho, jak se 121 00:07:03,790 --> 00:07:06,530 může mít více argumentů tam. 122 00:07:06,530 --> 00:07:10,360 >> Dalo by se, samozřejmě, jen zcela ignorovat andArray tlustého střeva NSArray 123 00:07:10,360 --> 00:07:13,240 pole, pokud byste chtěli jen metody že se v jednom argumentu. 124 00:07:13,240 --> 00:07:13,677 Ano, otázka. 125 00:07:13,677 --> 00:07:18,701 >> DIVÁKŮ: Jsou i NSUInteger a NSArray argumenty, které mohou být vzaty v 126 00:07:18,701 --> 00:07:21,530 v NSArray? 127 00:07:21,530 --> 00:07:22,060 >> RHED SHI: Ano. 128 00:07:22,060 --> 00:07:23,400 Takže, dovolte mi to vysvětlit. 129 00:07:23,400 --> 00:07:23,790 Takže, ano. 130 00:07:23,790 --> 00:07:30,260 Takže, otázka zněla jsou NSUInteger a NSArray * typy argumentů, 131 00:07:30,260 --> 00:07:31,570 a to je správné. 132 00:07:31,570 --> 00:07:35,700 Takže, vždy chcete zadat, co typ vašeho argumentu. 133 00:07:35,700 --> 00:07:41,570 A tady, snažím se představit vám na některé syntaxe a Vocab 134 00:07:41,570 --> 00:07:45,910 Objective-C, tak to jsou skutečné typy že budete zabývá. 135 00:07:45,910 --> 00:07:48,970 >> A jak jste si všimli, pole už ne, tak nějak, 136 00:07:48,970 --> 00:07:50,780 jednoduché konzolové věci. 137 00:07:50,780 --> 00:07:52,060 Jsou to objekty. 138 00:07:52,060 --> 00:07:56,700 I když, pokud bychom jít na další snímek, můžeme vidět, že můžeme 139 00:07:56,700 --> 00:08:02,510 pevný kód NSArray v Objective-C se potom symbol na před 140 00:08:02,510 --> 00:08:04,190 držáky. 141 00:08:04,190 --> 00:08:08,650 Nejsem vlastně docela jisti, zda I syntakticky pevně pole 142 00:08:08,650 --> 00:08:16,020 správně pro verzi C, ale to je má být v poli C. 143 00:08:16,020 --> 00:08:19,760 >> Tak, to je to, jak byste, víte, možná použít funkce nebo 144 00:08:19,760 --> 00:08:21,990 metody, které jsme vytvořili dříve. 145 00:08:21,990 --> 00:08:22,250 Je to tak? 146 00:08:22,250 --> 00:08:25,340 Takže, toto je místo, kde jsme se vyhlásit naše Funkce a naše metoda. 147 00:08:25,340 --> 00:08:28,020 A teď chceme, aby jejich použití v náš program, a to je 148 00:08:28,020 --> 00:08:29,450 jak bychom to udělat. 149 00:08:29,450 --> 00:08:32,400 Takže, v C, měli byste mít, víte, Možná, bool b, a nastavte ji na 150 00:08:32,400 --> 00:08:36,549 rovnat funkce, a poté můžete projít v argumentech. 151 00:08:36,549 --> 00:08:39,190 >> V Objective-C, je to docela totéž. 152 00:08:39,190 --> 00:08:43,370 Máte NSArray * my_array, a to bude rovnat - teď, pouze 153 00:08:43,370 --> 00:08:47,460 Rozdíl je zde tento objekt věc, které jsem zvýrazněn žlutě, a 154 00:08:47,460 --> 00:08:51,180 Jak můžete vidět, v C, je tu žádný jiný yellow slovo. 155 00:08:51,180 --> 00:08:54,170 A je to proto, že metody patří s určitým objektem. 156 00:08:54,170 --> 00:08:59,800 Takže to je důvod, proč musím mít objekt že, druh, volání této metody na 157 00:08:59,800 --> 00:09:04,360 číslo nula, a poté NSArray, b, c, d. 158 00:09:04,360 --> 00:09:05,350 Jakékoliv dotazy na to? 159 00:09:05,350 --> 00:09:12,190 >> Uvidíme těchto pojmů v akci brzy, když jdeme do demo. 160 00:09:12,190 --> 00:09:13,400 OK. 161 00:09:13,400 --> 00:09:17,170 Teď, chci s tebou mluvit trochu stručně o Xcode 5, který je 162 00:09:17,170 --> 00:09:21,160 integrované vývojové prostředí že budete pracovat. 163 00:09:21,160 --> 00:09:26,160 Vím, že mnoho z vás, nebo některé z vás, nemají Mac, což je problém 164 00:09:26,160 --> 00:09:30,490 proto, že není k dispozici Xcode pro Windows a PC. 165 00:09:30,490 --> 00:09:32,785 Neptejte se mě proč, ale asi - 166 00:09:32,785 --> 00:09:33,730 jo, korporátní. 167 00:09:33,730 --> 00:09:35,290 Cokoliv. 168 00:09:35,290 --> 00:09:39,360 Ale tak jako tak, takže se omlouvám, pokud některé si muset stáhnout nějaký 169 00:09:39,360 --> 00:09:43,000 virtuální stroj pro Mac v Aby bylo běžet Xcode 5. 170 00:09:43,000 --> 00:09:46,460 Ale je to docela šikovný software k použití. 171 00:09:46,460 --> 00:09:51,280 >> A tak, než se ponořit do jakéhokoliv druhu demo, já jen chci, aby vám ukázat, 172 00:09:51,280 --> 00:09:55,700 obraz toho, co Xcode vypadá ve vašem okna, a pak také mluvit o 173 00:09:55,700 --> 00:09:57,670 to, co celý tento prostor. 174 00:09:57,670 --> 00:10:01,600 Takže, je to něco jako naučit se používat aplikaci Microsoft Word, s výjimkou chcete 175 00:10:01,600 --> 00:10:04,675 se seznámil se všemi různých věcí, které 176 00:10:04,675 --> 00:10:06,250 se tu děje. 177 00:10:06,250 --> 00:10:11,160 >> Tak za prvé, chci tě upozornit na panelu nástrojů v horní části. 178 00:10:11,160 --> 00:10:14,450 Uvidíte, že na vrcholu, budete mít název souboru - 179 00:10:14,450 --> 00:10:18,100 nebo, vlastně, vaše jméno projektu a pak se název vašeho souboru. 180 00:10:18,100 --> 00:10:20,940 Vezměte na vědomí, hry a tlačítka STOP. 181 00:10:20,940 --> 00:10:24,210 To jsou ty, které budete používáte pro spuštění aplikace na 182 00:10:24,210 --> 00:10:25,600 simulátor - 183 00:10:25,600 --> 00:10:26,550 simulátor iOS. 184 00:10:26,550 --> 00:10:29,940 Tím se automaticky přichází s Xcode 5, takže si nemusíte dělat starosti 185 00:10:29,940 --> 00:10:32,070 stahování nějaký simulátoru. 186 00:10:32,070 --> 00:10:34,700 Stačí stisknout tlačítko přehrávání a pak to běží vaše aplikace. 187 00:10:34,700 --> 00:10:39,230 A můžete pohrát s vámi, a uvidíte, jak to funguje později. 188 00:10:39,230 --> 00:10:42,690 >> A pak, v centru města, samozřejmě, je kde se všechny vaše krásné kódu 189 00:10:42,690 --> 00:10:44,240 jít. 190 00:10:44,240 --> 00:10:48,340 A pak, na levé straně, budete si muset vybrat mají to, druh, složka - 191 00:10:48,340 --> 00:10:50,340 navigace - 192 00:10:50,340 --> 00:10:53,970 a pak, budete také vidět, že spolu s ikonou složky, existuje 193 00:10:53,970 --> 00:10:57,680 spoustu dalších ikon, které tam budou užitečné později. 194 00:10:57,680 --> 00:11:04,710 >> A pak, na pravé straně je nástroj oblast, kde můžete pracovat s 195 00:11:04,710 --> 00:11:09,620 některé objekty a určit, vás Víte, co by mělo být barva, co 196 00:11:09,620 --> 00:11:12,040 Text písmo by mělo být, et cetera. 197 00:11:12,040 --> 00:11:15,890 I když všechno, co děláte v technické oblasti, můžete 198 00:11:15,890 --> 00:11:17,480 dělat v kódu stejně. 199 00:11:17,480 --> 00:11:21,630 A tak, budu prochází dvěma příklady použití, jednoduše, žádný kód na 200 00:11:21,630 --> 00:11:23,730 všichni - nebo velmi minimální kódu - 201 00:11:23,730 --> 00:11:28,290 verše veškerý kód, jen proto, že vy vědět, co si může a nemůže dělat v 202 00:11:28,290 --> 00:11:29,260 Xcode a Objective-C. 203 00:11:29,260 --> 00:11:32,770 >> A pak, konečně, se ve spodní části, budete mít ladění plochu. 204 00:11:32,770 --> 00:11:37,270 Takže už nemusíte běžet GDB, et cetera, vašich programů. 205 00:11:37,270 --> 00:11:39,180 Je to automaticky udělá za vás. 206 00:11:39,180 --> 00:11:42,880 A můžete také vytisknout věci v této oblasti. 207 00:11:42,880 --> 00:11:46,790 Takže vlastně, později půjdeme přes mario.c, jestli jste ještě pamatují 208 00:11:46,790 --> 00:11:49,000 , že v Xcode. 209 00:11:49,000 --> 00:11:50,360 Tak, že by měla být zábava. 210 00:11:50,360 --> 00:11:55,870 >> A pak, jen aby ho zpět do Objective-C, chci upozornit na to, co 211 00:11:55,870 --> 00:11:57,440 co můžete udělat, jestliže prohlášení. 212 00:11:57,440 --> 00:12:03,160 Takže, víte, protože Objective-C je nadmnožinou C, vše, co udělat, je, 213 00:12:03,160 --> 00:12:06,890 doslovně, stejně jako C. stačí mají drobné rozdíly. 214 00:12:06,890 --> 00:12:10,810 Takže, zjistíte formulář pro, pokud tvrzení je stále stejný - jste 215 00:12:10,810 --> 00:12:14,280 v případě, a pak máte závorky stav uvnitř, a pak 216 00:12:14,280 --> 00:12:17,150 složené závorky na cokoliv Chcete udělat uvnitř tam. 217 00:12:17,150 --> 00:12:21,680 >> Nicméně, chtěl jsem, aby tento snímek nahoru zde pouze pro ilustraci, že, 218 00:12:21,680 --> 00:12:25,680 protože máme co do činění s objekty nyní, budeme muset používat tyto věci 219 00:12:25,680 --> 00:12:31,240 s názvem, jako je rovná řetězec, který je, shodou okolností, způsob 220 00:12:31,240 --> 00:12:33,710 řetězec nebo objekt NSString. 221 00:12:33,710 --> 00:12:38,600 Tak, slovo, v tomto případě, je NSString námitky, a to má metodu nazvanou je 222 00:12:38,600 --> 00:12:44,150 rovný řetězec, a pak jsme kolem v pevném kódovaný řetězec vidět 223 00:12:44,150 --> 00:12:48,110 ať už to jsou rovné k sobě navzájem. 224 00:12:48,110 --> 00:12:51,580 >> Jakékoliv dotazy tak daleko? 225 00:12:51,580 --> 00:12:52,440 OK. 226 00:12:52,440 --> 00:12:56,190 A já chci jít přes pro prohlášení také. 227 00:12:56,190 --> 00:13:01,420 >> Tak například, pokud bychom chtěli, aby smyčky po celé délce řetězce v C, toto 228 00:13:01,420 --> 00:13:03,710 by měli být obeznámeni s vámi. 229 00:13:03,710 --> 00:13:07,840 A v Objective-C, já chci upozornit na to, tak nějak, 230 00:13:07,840 --> 00:13:09,235 metoda zvaná počet. 231 00:13:09,235 --> 00:13:13,260 232 00:13:13,260 --> 00:13:15,550 No, vlastně, dovolte mi, abych jen vzít to zpátky. 233 00:13:15,550 --> 00:13:17,200 Count je metoda pole. 234 00:13:17,200 --> 00:13:21,070 Nicméně, je to konkrétně Vlastnost pole, což je důvod, proč 235 00:13:21,070 --> 00:13:22,380 lze použít tečka notaci. 236 00:13:22,380 --> 00:13:25,870 Ale já nechci, aby se do příliš mnoho Tento koncepční věci, já jen chci, 237 00:13:25,870 --> 00:13:30,140 vám ukázat, jak by se věci vypadají jako v Objective-C oproti C 238 00:13:30,140 --> 00:13:35,400 >> A také chci poukázat na to, že i když jsem byl s použitím NSUInteger 239 00:13:35,400 --> 00:13:39,860 před všemi mými i let v Objective-C, můžete také použít int, int, protože je 240 00:13:39,860 --> 00:13:42,290 zcela platné v Objective-C, také. 241 00:13:42,290 --> 00:13:42,475 Ano? 242 00:13:42,475 --> 00:13:44,350 >> DIVÁKŮ: Je to jen stylistické, nebo je - 243 00:13:44,350 --> 00:13:44,760 >> RHED SHI: Jo. 244 00:13:44,760 --> 00:13:46,060 Takže, jak uvidíte - 245 00:13:46,060 --> 00:13:49,390 tak, otázka zněla, že jen stylistické problém. 246 00:13:49,390 --> 00:13:54,820 Jak uvidíte, mám, tak nějak, hvězda hvězdička, co se na dně, a 247 00:13:54,820 --> 00:13:59,870 že odkaz vás zavede na přetečení zásobníku tvoří, kde někdo vysvětluje 248 00:13:59,870 --> 00:14:03,640 rozdíl mezi int v NSInteger a NSUInteger. 249 00:14:03,640 --> 00:14:05,540 A tak si můžete přečíst o tom později. 250 00:14:05,540 --> 00:14:07,640 Tyto snímky budou, samozřejmě, Vám k dispozici. 251 00:14:07,640 --> 00:14:10,300 252 00:14:10,300 --> 00:14:11,280 >> Pojďme se podívat. 253 00:14:11,280 --> 00:14:12,150 OK, super. 254 00:14:12,150 --> 00:14:15,410 Tak, to je také zahrnuta do snímku protože jsem si myslel, to byla skvělá 255 00:14:15,410 --> 00:14:19,370 Webové stránky, které vás seznámí na syntaxi Objective-C. 256 00:14:19,370 --> 00:14:24,410 Takže, vlastně, proč jsme se přesunout do Chrome a podívejte se na tyto stránky? 257 00:14:24,410 --> 00:14:30,650 258 00:14:30,650 --> 00:14:31,300 >> Správně. 259 00:14:31,300 --> 00:14:36,670 Takže, co vám chci ukázat, kluci tady je to obrázek. 260 00:14:36,670 --> 00:14:41,630 Tak, to je, tak nějak, bude to, co budete vidět uvnitř některého 261 00:14:41,630 --> 00:14:42,890 Xcode soubor. 262 00:14:42,890 --> 00:14:47,400 263 00:14:47,400 --> 00:14:51,430 Vlastně, proč ne my jen tak okamžik, druh, vzít dovnitř 264 00:14:51,430 --> 00:14:53,470 >> Takže, tato kniha - 265 00:14:53,470 --> 00:14:55,880 že je objekt, který máme co do činění se. 266 00:14:55,880 --> 00:14:59,680 A pak, že to zřejmě bude dědí z jiného objektu, ale 267 00:14:59,680 --> 00:15:01,810 nemusíte se obávat, že. 268 00:15:01,810 --> 00:15:04,430 A pak, že, snad, má Některé členské proměnné. 269 00:15:04,430 --> 00:15:09,160 >> Důležitá věc, kterou chci vám ukázat, Je metody instance, zde. 270 00:15:09,160 --> 00:15:12,670 Takže, metody instance jsou označeny tímto znaménkem minus. 271 00:15:12,670 --> 00:15:15,550 A pak, jak jste si všimli, že jsme již začínají vidět vzor 272 00:15:15,550 --> 00:15:17,670 pro metody prohlášení, že jo? 273 00:15:17,670 --> 00:15:22,670 Návratový typ, název metody, a pak typ argumentu, a 274 00:15:22,670 --> 00:15:24,660 pak název argumentu. 275 00:15:24,660 --> 00:15:29,090 A to znaménko mínus znamená, že je metoda instance, což znamená, že 276 00:15:29,090 --> 00:15:32,270 Tyto metody jsou k dispozici pouze pro objekty, které byly instance. 277 00:15:32,270 --> 00:15:35,050 278 00:15:35,050 --> 00:15:39,100 >> Chcete-li kontrastní, že metody s plus přihlásit před nimi jsou třídy 279 00:15:39,100 --> 00:15:43,640 metody, což znamená, že můžete volat Tyto metody, a to i v případě, že nemáte 280 00:15:43,640 --> 00:15:45,970 objekt vytvořil ještě. 281 00:15:45,970 --> 00:15:51,600 Takže, pro jasný příklad, NSString je třída. 282 00:15:51,600 --> 00:15:55,850 A můžete volat, například, metody třídy na NSString - 283 00:15:55,850 --> 00:15:58,660 skutečný, stejně jako, slovo NSString. 284 00:15:58,660 --> 00:16:02,050 >> Nicméně, za účelem využití těchto metody, ve skutečnosti 285 00:16:02,050 --> 00:16:03,460 je třeba vytvořit řetězec. 286 00:16:03,460 --> 00:16:08,980 Například, NSString hvězda řetězec rovná v uvozovkách, hello world. 287 00:16:08,980 --> 00:16:10,910 A pak můžete použít tyto metody - 288 00:16:10,910 --> 00:16:11,990 metody instance - 289 00:16:11,990 --> 00:16:14,790 Dobrý den na této světové řetězce. 290 00:16:14,790 --> 00:16:17,825 Tak, to je ten rozdíl mezi metody instance a metody třídy. 291 00:16:17,825 --> 00:16:20,390 292 00:16:20,390 --> 00:16:21,930 >> A právě jsme se vztahuje tato část. 293 00:16:21,930 --> 00:16:25,300 294 00:16:25,300 --> 00:16:33,750 Vlastnosti jsou další věc, která jsou uvnitř objektů, v podstatě. 295 00:16:33,750 --> 00:16:37,530 A vy deklarovat s na majetku klíčového slova. 296 00:16:37,530 --> 00:16:39,940 Máte tyto možnosti, tady, že já ti to vysvětlím později, když 297 00:16:39,940 --> 00:16:43,110 jdeme do demo. 298 00:16:43,110 --> 00:16:43,660 Ano? 299 00:16:43,660 --> 00:16:43,950 Dobrý den. 300 00:16:43,950 --> 00:16:45,440 >> DIVÁKŮ: Mohl byste přiblížit, prosím? 301 00:16:45,440 --> 00:16:46,130 >> RHED SHI: Oh ano. 302 00:16:46,130 --> 00:16:46,560 Promiňte. 303 00:16:46,560 --> 00:16:49,140 >> DIVÁKŮ: Děkuji. 304 00:16:49,140 --> 00:16:50,005 >> RHED SHI: To by mělo být mnohem lepší. 305 00:16:50,005 --> 00:16:51,240 >> DIVÁKŮ: Jo. 306 00:16:51,240 --> 00:16:53,940 Děkuju. 307 00:16:53,940 --> 00:16:56,815 >> RHED SHI: Ano, prosím, připomeň mi, pokud Zapomněl jsem se přiblížit nebo oddálit. 308 00:16:56,815 --> 00:17:00,590 309 00:17:00,590 --> 00:17:03,570 Tak, to je všechno, co jsem chtěl ukázat na - 310 00:17:03,570 --> 00:17:05,970 hej, to je hodně - 311 00:17:05,970 --> 00:17:06,790 pro tento web. 312 00:17:06,790 --> 00:17:12,210 Takže, pojďme zpět k našim snímků. 313 00:17:12,210 --> 00:17:17,819 >> Vlastně, teď pojďme se na chvíli ponořit se do demo. 314 00:17:17,819 --> 00:17:25,490 Takže, začneme s nový Xcode projektu. 315 00:17:25,490 --> 00:17:33,040 Takže, pokud budete otevírat Xcode na všechny vaše stroje, měl by si vzít některé 316 00:17:33,040 --> 00:17:36,720 stránky, kde se říká, jako, jeden otevřený up existující projekt nebo nový 317 00:17:36,720 --> 00:17:39,230 projekt, a vy byste měli klepněte na nový projekt. 318 00:17:39,230 --> 00:17:41,477 A pak by se měl vzít jste na tuto obrazovku. 319 00:17:41,477 --> 00:17:41,593 Ano? 320 00:17:41,593 --> 00:17:44,279 >> DIVÁKŮ: Pokud nemáme Mac, my jen tak odpočívat? 321 00:17:44,279 --> 00:17:46,870 >> RHED SHI: Nebo se podívejme na s někým, jo. 322 00:17:46,870 --> 00:17:47,740 Jo. 323 00:17:47,740 --> 00:17:50,660 Můžete odpočívat, taky. 324 00:17:50,660 --> 00:17:51,570 OK. 325 00:17:51,570 --> 00:17:55,410 >> Takže, co budeme dělat jako první, teď, je, ve skutečnosti, jdeme na to 326 00:17:55,410 --> 00:17:56,600 jedna žádost pohled. 327 00:17:56,600 --> 00:18:01,340 Takže, pokud si všimnete, co je skvělé o Xcode a podpory Apple pro 328 00:18:01,340 --> 00:18:05,690 Vývojáři se, že máte spoustu šablony pro práci s již. 329 00:18:05,690 --> 00:18:09,210 Dalo by se, například, aby master-detail aplikace. 330 00:18:09,210 --> 00:18:10,920 Můžete udělat hru - 331 00:18:10,920 --> 00:18:13,860 a vlastně jsem se jít do hry, protože hry jsou jiný příběh 332 00:18:13,860 --> 00:18:15,320 pro iOS vývoje. 333 00:18:15,320 --> 00:18:18,930 A oni jsou trochu oddělit, tak jsem se jít do toho. 334 00:18:18,930 --> 00:18:22,580 >> Pak jste strana založená na aplikace. 335 00:18:22,580 --> 00:18:24,010 Máte aplikaci kartu - 336 00:18:24,010 --> 00:18:29,350 tak líbí, například Bank of America Asi má, stejně jako, s kartami aplikace. 337 00:18:29,350 --> 00:18:32,140 To jsou ty, kde máte tlačítka ve spodní části. 338 00:18:32,140 --> 00:18:34,750 A pak, máte Sprite Kit hru. 339 00:18:34,750 --> 00:18:38,670 >> Nebo můžete pracovat od nuly, což je to, co budeme dělat později. 340 00:18:38,670 --> 00:18:42,470 Ale pojďme nejprve začít s jedna žádost pohled. 341 00:18:42,470 --> 00:18:48,590 Poté, bude to požádat o název produktu, a my můžeme jen dělat zkoušku. 342 00:18:48,590 --> 00:18:50,190 Název organizace - 343 00:18:50,190 --> 00:18:54,140 tak, název organizace, identifikátor firmy - 344 00:18:54,140 --> 00:18:58,100 ty jsou důležité, pokud se chystáte aby vaše aplikace na App Store. 345 00:18:58,100 --> 00:19:01,110 346 00:19:01,110 --> 00:19:05,116 Jiné, než to, že váš kód bude běžet naprosto v pořádku, aniž by to. 347 00:19:05,116 --> 00:19:09,940 >> To bude důležité, pokud vám chci - to samo o sobě, stejně jako, dejte aplikace 348 00:19:09,940 --> 00:19:14,080 na telefonu, nebo tak něco, a zkouška to se, víte, v reálném životě - 349 00:19:14,080 --> 00:19:15,360 to bude důležité. 350 00:19:15,360 --> 00:19:20,110 To vede ke obvykle spojena s nějaký developer účtu 351 00:19:20,110 --> 00:19:20,970 s Apple. 352 00:19:20,970 --> 00:19:24,740 >> A tak, já vím, asi, hodně z vás nebude mít žádné vývojářské účty. 353 00:19:24,740 --> 00:19:26,460 Vím, že univerzita má jeden. 354 00:19:26,460 --> 00:19:27,630 Myslím, že CS má jeden. 355 00:19:27,630 --> 00:19:32,770 Ale můžete mi e-mail a já se pokusím zjistit, že pro vás. 356 00:19:32,770 --> 00:19:38,210 Ale právě teď, právě jsem dal do některé zástupné věci zde. 357 00:19:38,210 --> 00:19:41,250 >> A můžete, samozřejmě, tady, zvolte , zda chcete, aby to bylo pouze v 358 00:19:41,250 --> 00:19:44,410 iPhone, iPad v, nebo obojí - 359 00:19:44,410 --> 00:19:46,630 univerzální použití. 360 00:19:46,630 --> 00:19:56,170 Tak, teď, pojďme dělat univerzální, jen vidět obě strany nástupiště. 361 00:19:56,170 --> 00:19:57,120 >> Pojďme se podívat. 362 00:19:57,120 --> 00:20:01,510 Tak, teď, jdu zachránit je v nějakém adresáři. 363 00:20:01,510 --> 00:20:04,500 Nezáleží na tom, kde se - vám jej vždy přesunout později. 364 00:20:04,500 --> 00:20:09,380 A teď, jsme přinesli naší Xcode projektu. 365 00:20:09,380 --> 00:20:12,890 Já bych si starosti o všechno. 366 00:20:12,890 --> 00:20:17,510 Navrhoval bych nedotýká žádné z to, pokud nevíte přesně, co 367 00:20:17,510 --> 00:20:18,260 děláte. 368 00:20:18,260 --> 00:20:21,750 Takže, tohle všechno, prostě ignorovat z větší části. 369 00:20:21,750 --> 00:20:26,940 Nebudete muset dotknout, a pokud Myslíte si zkazit pár věcí tady, 370 00:20:26,940 --> 00:20:28,600 dostane trochu složitější. 371 00:20:28,600 --> 00:20:32,480 >> Takže, proč se díváme na soubory na 372 00:20:32,480 --> 00:20:34,700 levá strana v našem navigátoru. 373 00:20:34,700 --> 00:20:37,060 Zde máme AppDelegate.h. 374 00:20:37,060 --> 00:20:43,430 Máme AppDelegate.m Takže, jak budete Oznámení jsme header soubory, které 375 00:20:43,430 --> 00:20:45,720 končí v dot h, a máme realizace - 376 00:20:45,720 --> 00:20:46,970 ve skutečnosti, dovolte mi, abych zoom palců 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 Dovolte mi přiblížit palců 380 00:20:59,940 --> 00:21:05,810 >> Dobře, takže jste header soubory a Máte implementační soubory. 381 00:21:05,810 --> 00:21:07,060 Vlastně - 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 trochu divný, ale mějte se mnou. 385 00:21:11,800 --> 00:21:16,140 Pak, protože jsme si vybrali jeden pohled aplikace, budeme mít 386 00:21:16,140 --> 00:21:17,340 práci s scénáře. 387 00:21:17,340 --> 00:21:22,140 >> Takže, storyboard je něco, co Apple má přijít s opravdu pomoci 388 00:21:22,140 --> 00:21:26,550 vývojáři rychle prototyp jejich aplikace. 389 00:21:26,550 --> 00:21:29,410 Tak, to je místo, kde si můžete vytvořit aplikace bez zápisu 390 00:21:29,410 --> 00:21:31,710 jediný řádek kódu. 391 00:21:31,710 --> 00:21:35,390 Nicméně, v našem jediném použití pohledu, my, samozřejmě, mají 392 00:21:35,390 --> 00:21:41,270 soubor pro našeho názoru, který je pohled na regulátor. 393 00:21:41,270 --> 00:21:45,150 Takže, máme záhlaví a file implementace, zde. 394 00:21:45,150 --> 00:21:52,350 >> A já jdu na oddálení teď, protože budeme muset pracovat na scénáři. 395 00:21:52,350 --> 00:21:55,190 Takže, tady je náš pohled. 396 00:21:55,190 --> 00:22:00,120 Pokud bychom jednoduše spustit aplikaci právě teď, že to není moc vzrušující děje. 397 00:22:00,120 --> 00:22:03,270 398 00:22:03,270 --> 00:22:05,040 Takže, uvidíte tuto bílou obrazovku. 399 00:22:05,040 --> 00:22:06,110 OK? 400 00:22:06,110 --> 00:22:14,010 >> A v našem utility oblasti, můžeme přidat spoustu různých věcí k tomu. 401 00:22:14,010 --> 00:22:19,290 Takže, když máte co do činění s obrazovkami v iOS, regulátory zobrazení jsou 402 00:22:19,290 --> 00:22:23,150 objekty obsahujícími, druh, vaše názory. 403 00:22:23,150 --> 00:22:26,980 Takže, pohled regulátor vždy má vlastnost s názvem pohled. 404 00:22:26,980 --> 00:22:29,610 A tento názor, typicky obsahuje, Víte, co si 405 00:22:29,610 --> 00:22:30,810 Chcete vidět na obrazovce. 406 00:22:30,810 --> 00:22:39,210 >> Tak dobře, pojďme prostě začít tím, Možná, možná označení. 407 00:22:39,210 --> 00:22:41,450 Takže, pojďme dát štítek tam - 408 00:22:41,450 --> 00:22:44,080 držet ji ve středu. 409 00:22:44,080 --> 00:22:49,560 Tak, teď, když jsem kliknul na štítku, jsem může jít do vlastností inspektora 410 00:22:49,560 --> 00:22:51,510 a začít se změnou jeho hodnoty. 411 00:22:51,510 --> 00:22:55,040 Říkejme tomu CS50 barvy. 412 00:22:55,040 --> 00:22:58,220 >> A mohu také změnit písmo. 413 00:22:58,220 --> 00:23:02,630 Takže místo toho dělá systém, který je výchozí, můžeme udělat vlastní jeden. 414 00:23:02,630 --> 00:23:03,770 Můžeme změnit - 415 00:23:03,770 --> 00:23:06,453 Víte, ultralehká, aby bylo 32. 416 00:23:06,453 --> 00:23:09,000 417 00:23:09,000 --> 00:23:11,370 A pak se můžeme, aby naše okno větší. 418 00:23:11,370 --> 00:23:14,410 >> DIVÁKŮ: Myslíte si, že můžete zvětšit v jen o málo víc, možná? 419 00:23:14,410 --> 00:23:14,810 >> RHED SHI: Jo? 420 00:23:14,810 --> 00:23:16,196 OK. 421 00:23:16,196 --> 00:23:17,450 >> DIVÁKŮ: Jen to klepnout? 422 00:23:17,450 --> 00:23:19,020 >> RHED SHI: Uvidíme. 423 00:23:19,020 --> 00:23:20,382 To funguje? 424 00:23:20,382 --> 00:23:22,270 >> DIVÁKŮ: Jen projít Xcode? 425 00:23:22,270 --> 00:23:23,520 >> RHED SHI: Jistě. 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 Úžasné. 429 00:23:26,275 --> 00:23:27,072 >> Diváků: Štítek pod? 430 00:23:27,072 --> 00:23:28,920 Štítek? 431 00:23:28,920 --> 00:23:29,480 >> RHED SHI: Co je to? 432 00:23:29,480 --> 00:23:32,050 >> DIVÁKŮ: Co drop-down byla nálepka pod? 433 00:23:32,050 --> 00:23:35,170 >> RHED SHI: Takže, otázka je, co drop-down byla nálepka pod? 434 00:23:35,170 --> 00:23:37,260 Je třeba, jednoduše, pod tu. 435 00:23:37,260 --> 00:23:39,330 Myslím, že je to kostka věc. 436 00:23:39,330 --> 00:23:40,910 Ale obvykle, je to výchozí - 437 00:23:40,910 --> 00:23:43,250 Já jsem prostě jít sem dolů až najdu štítek. 438 00:23:43,250 --> 00:23:45,800 439 00:23:45,800 --> 00:23:47,730 Jo. 440 00:23:47,730 --> 00:23:48,950 >> Takže teď, máme štítek. 441 00:23:48,950 --> 00:23:51,040 Pojďme vystředit. 442 00:23:51,040 --> 00:23:56,410 A Xcode nám dává pokyny pro centrování objektů. 443 00:23:56,410 --> 00:23:59,510 444 00:23:59,510 --> 00:24:01,480 Tak, teď pojďme spustit náš kód znovu. 445 00:24:01,480 --> 00:24:08,110 446 00:24:08,110 --> 00:24:08,800 >> Tam jdeme. 447 00:24:08,800 --> 00:24:10,310 Takže, máme CS50 Barvy. 448 00:24:10,310 --> 00:24:13,720 449 00:24:13,720 --> 00:24:15,420 A teď, pojďme dát tlačítko tam, že jo? 450 00:24:15,420 --> 00:24:17,480 Protože chceme, aby se Tento interaktivní. 451 00:24:17,480 --> 00:24:19,410 Takže, pojďme dát tlačítko tady. 452 00:24:19,410 --> 00:24:39,020 A budeme volat toto tlačítko "kohoutek zde pokračovat. "Budeme se soustředit se, rovněž 453 00:24:39,020 --> 00:24:39,990 Ve skutečnosti, je to již ve středu. 454 00:24:39,990 --> 00:24:40,630 Jo. 455 00:24:40,630 --> 00:24:43,130 >> Tak, teď máme tlačítko. 456 00:24:43,130 --> 00:24:53,000 A když jsme se spustit to znovu, jedeme mít pěknou tlačítko tady. 457 00:24:53,000 --> 00:24:56,520 A já si na něj, ale to nedělá něco, protože jsme neudělali 458 00:24:56,520 --> 00:24:58,500 ještě něco s tlačítkem. 459 00:24:58,500 --> 00:25:01,740 >> Takže, pojďme vytvořit jiný pohled, ne? 460 00:25:01,740 --> 00:25:04,160 Takže řekněme, že chci využít toto tlačítko a chci, aby 461 00:25:04,160 --> 00:25:05,730 přejděte na jinou stránku - 462 00:25:05,730 --> 00:25:06,820 jiný pohled. 463 00:25:06,820 --> 00:25:14,440 Co budu dělat, je, mohu vytvořit pohled řadič, ne? 464 00:25:14,440 --> 00:25:19,690 Teď budu klikněte na mé tlačítkem, a poté, Důležité je, budu 465 00:25:19,690 --> 00:25:20,910 klepněte na tlačítko - nebo - 466 00:25:20,910 --> 00:25:23,660 ano, stiskněte tlačítko ovládání na mé klávesnici. 467 00:25:23,660 --> 00:25:24,880 Ovládací. 468 00:25:24,880 --> 00:25:27,005 Klikněte na tlačítko a přetáhněte. 469 00:25:27,005 --> 00:25:29,960 470 00:25:29,960 --> 00:25:33,550 >> Takže, nezapomeňte držet ovládací tlačítko. 471 00:25:33,550 --> 00:25:35,160 Udělejme to znovu. 472 00:25:35,160 --> 00:25:40,930 Takže, držte ovládací prvek, klepněte a přetáhněte na to, co chcete dělat. 473 00:25:40,930 --> 00:25:41,520 OK. 474 00:25:41,520 --> 00:25:43,610 >> A teď, mám několik možností zde. 475 00:25:43,610 --> 00:25:47,900 Mohu buď tlačit, nebo můžu udělat modální, nebo mohu udělat vlastní. 476 00:25:47,900 --> 00:25:50,900 Push pouze pokud máte navigační ovladač. 477 00:25:50,900 --> 00:25:54,270 Právě teď, naše první pohled regulátor není uvnitř některého 478 00:25:54,270 --> 00:25:55,610 navigační ovladač. 479 00:25:55,610 --> 00:25:59,500 Takže, navigační ovladač je ten která vám dává na tlačítko zpět na 480 00:25:59,500 --> 00:26:03,910 aplikace iOS, kde máte, víte, že nejvyšší, druh, tlustý bar - 481 00:26:03,910 --> 00:26:06,480 kde se můžete vrátit zpět, nebo vpřed, et cetera. 482 00:26:06,480 --> 00:26:07,740 Právě teď, nemám to. 483 00:26:07,740 --> 00:26:11,050 A tak, to je důvod, proč nemůžu dělat push. 484 00:26:11,050 --> 00:26:12,480 >> Tak jsem kliknul na stisk náhodou, zde. 485 00:26:12,480 --> 00:26:16,480 A vlastně, pojďme spustit kód, a měl by pád na mě. 486 00:26:16,480 --> 00:26:19,770 487 00:26:19,770 --> 00:26:22,960 Pouze v případě stisknutí tlačítka když, tak - 488 00:26:22,960 --> 00:26:23,420 pravdu. 489 00:26:23,420 --> 00:26:26,480 Tak, to je špatné. 490 00:26:26,480 --> 00:26:31,330 >> A jak můžete vidět, zde jsme se chybová zpráva. 491 00:26:31,330 --> 00:26:35,460 Takže, "push přejde mohou být použity pouze v případě, zdroj regulátor je řízen 492 00:26:35,460 --> 00:26:40,700 instance UI navigačního ovladače. " Takže, protože to není uvnitř 493 00:26:40,700 --> 00:26:44,030 navigace regulátor, Nemohl jsem to udělat. 494 00:26:44,030 --> 00:26:48,782 >> Tak, teď, jdu zpátky do složka, sahající do scénáře. 495 00:26:48,782 --> 00:26:51,680 >> DIVÁKŮ: Co je navigační regulátor znovu? 496 00:26:51,680 --> 00:26:55,260 >> RHED SHI: Tak, teď já vám ukážu. 497 00:26:55,260 --> 00:26:56,200 Pojďme se podívat. 498 00:26:56,200 --> 00:27:00,510 Takže, jdu kliknout na tohoto pohledu regulátor, a pak budu pokračovat 499 00:27:00,510 --> 00:27:03,920 až produktu - 500 00:27:03,920 --> 00:27:06,240 Vlastně ne, omlouvám - editor. 501 00:27:06,240 --> 00:27:08,360 A já jdu do - 502 00:27:08,360 --> 00:27:09,350 Vlastně jsem na něj klikněte? 503 00:27:09,350 --> 00:27:10,070 Ne. 504 00:27:10,070 --> 00:27:11,080 Tam jdeme. 505 00:27:11,080 --> 00:27:16,270 Chystám se jít až do editoru, jít dolů vložit, a pak navigace 506 00:27:16,270 --> 00:27:17,520 regulátor. 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 můj pracovní prostor vypadá opravdu chaotický, takže pojďme to vyčistit. 510 00:27:27,750 --> 00:27:29,000 Takže, tohle všechno je storyboard. 511 00:27:29,000 --> 00:27:32,510 512 00:27:32,510 --> 00:27:33,760 A tímto způsobem - 513 00:27:33,760 --> 00:27:37,030 514 00:27:37,030 --> 00:27:38,280 OK, zastavit - 515 00:27:38,280 --> 00:27:49,320 516 00:27:49,320 --> 00:27:50,860 Mohu se rychle postavit něco takhle. 517 00:27:50,860 --> 00:27:53,020 A pak, teď se můžu vrátit, víš? 518 00:27:53,020 --> 00:27:55,730 >> Ale je to trochu nuda, ne? 519 00:27:55,730 --> 00:28:03,020 Takže, co chci udělat, je, nechci aby se, prostě, pohled 520 00:28:03,020 --> 00:28:03,870 regulátor. 521 00:28:03,870 --> 00:28:07,720 Řekněme, že jsem chtěl vlastně dělat tabulka pohled řadič, takže mohu dát do 522 00:28:07,720 --> 00:28:12,110 některé pěkné barvy, do tabulky. 523 00:28:12,110 --> 00:28:16,210 >> Tak, teď, když jsem dal podle mého názoru tabulky regulátor, musím připojit zpět 524 00:28:16,210 --> 00:28:18,560 Z tohoto tlačítka pohled na regulátor. 525 00:28:18,560 --> 00:28:21,780 Takže musím dělat svou kontrolu, klepněte na tlačítko, přetáhněte věc znovu. 526 00:28:21,780 --> 00:28:27,318 A teď můžu udělat tlačit, protože jsem vložit se uvnitř navigace regulátoru. 527 00:28:27,318 --> 00:28:32,210 >> DIVÁKŮ: Navigační ovladač stačí umožňuje přejít z místa na místo? 528 00:28:32,210 --> 00:28:33,540 >> RHED SHI: Ano. 529 00:28:33,540 --> 00:28:38,670 Takže, technicky, je to objekt, kde - 530 00:28:38,670 --> 00:28:43,150 tak, vnitřek navigaci Regulátor objekt, je 531 00:28:43,150 --> 00:28:44,780 udržuje pole. 532 00:28:44,780 --> 00:28:48,300 A že pole má všechny následné zobrazit řadiče. 533 00:28:48,300 --> 00:28:51,560 To je důvod, proč, když stisknete tlačítko zpět, je vrátí na předchozí stránku. 534 00:28:51,560 --> 00:28:55,260 Vzhledem k tomu, navigační ovladač objekt, nebo kód, který se stará o 535 00:28:55,260 --> 00:28:58,890 Tento objekt má pole, které udržuje sledování těchto regulátorů zobrazení, a 536 00:28:58,890 --> 00:29:01,870 pak, víte, DQ názor Regulátor a dá vám zpět 537 00:29:01,870 --> 00:29:02,750 ten předchozí. 538 00:29:02,750 --> 00:29:05,200 >> Takže, je to technické věci, ale - 539 00:29:05,200 --> 00:29:07,505 a já vám ukážu později kód, pokud budeme mít čas. 540 00:29:07,505 --> 00:29:10,270 Jsem trochu běží na čas, ale - 541 00:29:10,270 --> 00:29:15,610 >> Takže, s výhledem na stůl, to, co můžeme udělat, je - 542 00:29:15,610 --> 00:29:18,440 Je to obvykle automaticky nastaví na dynamický Prototype - 543 00:29:18,440 --> 00:29:20,640 budeme dělat to statické buňky, jinak budeme 544 00:29:20,640 --> 00:29:22,920 narazíte na nějaké problémy. 545 00:29:22,920 --> 00:29:28,470 >> A pak, řekněme, že jdu mít jednu sekci. 546 00:29:28,470 --> 00:29:31,000 Takže, profily je jako - 547 00:29:31,000 --> 00:29:35,160 pokud jste někdy viděli hudební aplikace, kdy Máte umělci, by sekcí 548 00:29:35,160 --> 00:29:37,830 je to přes Z's - 549 00:29:37,830 --> 00:29:38,780 dopisy - 550 00:29:38,780 --> 00:29:42,600 a pak, víte, individuální Řádky by být jména interpretů. 551 00:29:42,600 --> 00:29:47,460 A tak to, co je v pohodě tady, je to, že mohu přístup ke všem objektům uvnitř 552 00:29:47,460 --> 00:29:50,430 z mého scénáře přes tento drop-down menu, taky. 553 00:29:50,430 --> 00:29:56,600 >> Takže, budu klikněte na mé části, a já chci, víš, možná pět řádků. 554 00:29:56,600 --> 00:30:00,770 A pak, v každé řadě, Chci vložit štítek. 555 00:30:00,770 --> 00:30:04,080 556 00:30:04,080 --> 00:30:06,340 A já jdu volat tuto modrá. 557 00:30:06,340 --> 00:30:09,530 558 00:30:09,530 --> 00:30:15,630 A pak, chci, aby zobrazení uživatelského rozhraní, můžete Víš, možná pro, jako, malé krabičce. 559 00:30:15,630 --> 00:30:23,840 560 00:30:23,840 --> 00:30:28,710 >> Tak, že můžu ukázat lidem, náhled barvy. 561 00:30:28,710 --> 00:30:34,150 A já se vrátím k majetku a změnit tuto barvu na, oh, já ne 562 00:30:34,150 --> 00:30:35,510 Víte, tenhle. 563 00:30:35,510 --> 00:30:38,630 564 00:30:38,630 --> 00:30:43,150 >> A pak si všimněte, i tady, když mám příslušenství, můžu mít spoustu 565 00:30:43,150 --> 00:30:46,160 různých doplňků které obvykle vidět. 566 00:30:46,160 --> 00:30:55,250 Indikátor zveřejnění, detail, nebo zaškrtnutí, nebo prostě jen detail. 567 00:30:55,250 --> 00:30:59,080 Takže, možná bychom mohli dělat, jako, je zveřejnění indikátor, například. 568 00:30:59,080 --> 00:31:03,540 >> A pak, co kdybychom se tyto kopie, vložit, a dát je do 569 00:31:03,540 --> 00:31:06,740 Následující tabulka řádek. 570 00:31:06,740 --> 00:31:08,115 Takže, můžeme volat tuto žlutá. 571 00:31:08,115 --> 00:31:10,620 572 00:31:10,620 --> 00:31:12,155 A budu muset rozšířit to. 573 00:31:12,155 --> 00:31:15,730 574 00:31:15,730 --> 00:31:17,290 Udělejme to žlutá. 575 00:31:17,290 --> 00:31:20,610 A tímto způsobem, můžeme kopírovat vložit cestu dolů. 576 00:31:20,610 --> 00:31:24,910 577 00:31:24,910 --> 00:31:25,370 Co to bylo? 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 >> Takže, to všechno jsou typické CS50 barvy, které jste viděli ve třídě - 581 00:31:34,740 --> 00:31:37,160 ve skutečnosti, je mi líto - 582 00:31:37,160 --> 00:31:38,410 nebo na internetových stránkách. 583 00:31:38,410 --> 00:31:49,700 584 00:31:49,700 --> 00:31:51,260 Doufejme, že vy můžete vidět to, co tady dělám. 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 Poslední. 588 00:31:58,490 --> 00:32:02,040 >> DIVÁKŮ: Jak jste se přidat řádek původně? 589 00:32:02,040 --> 00:32:04,740 >> RHED SHI: Takže, otázka je, jak jsem přidat řádek na počátku? 590 00:32:04,740 --> 00:32:07,500 Šel jsem do této části tabulky - nebo jak mohu 591 00:32:07,500 --> 00:32:09,200 vyberte část tabulky - 592 00:32:09,200 --> 00:32:11,250 a pak, tady, aktualizováno I počet řádků. 593 00:32:11,250 --> 00:32:19,920 594 00:32:19,920 --> 00:32:22,505 >> A dovolte mi, abych doufám, že to funguje. 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 Uvidíme, jestli to funguje. 598 00:32:32,870 --> 00:32:34,000 Oh, dokonalé, úžasné. 599 00:32:34,000 --> 00:32:35,300 OK. 600 00:32:35,300 --> 00:32:40,330 I když jsem byl buduje svou demo, některé věci nebyly sladěny, takže díky za 601 00:32:40,330 --> 00:32:42,510 potlesk. 602 00:32:42,510 --> 00:32:42,920 >> Jo. 603 00:32:42,920 --> 00:32:44,770 Takže, pojďme se podívat. 604 00:32:44,770 --> 00:32:47,550 Uděláme to devět, jen aby všechno - nebo vlastně, řekněme, 605 00:32:47,550 --> 00:32:51,420 zase všechny z nich na zveřejnění ukazatele. 606 00:32:51,420 --> 00:32:55,790 A pak, co vám chci ukázat, příliš, bylo, jak mohu vzít každý z těch, 607 00:32:55,790 --> 00:32:59,230 Řádky tabulky a nechat ovlivňovat - 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 Také vám chci ukázat - 613 00:33:07,230 --> 00:33:13,080 zde, mohu dát název mého navigační ovladač, ne? 614 00:33:13,080 --> 00:33:17,090 Takže vlastně, zjistíte, jakmile jsem vložený Tento pohled řadič uvnitř 615 00:33:17,090 --> 00:33:22,010 navigačního regulátoru, vidíme, Tento navigační lišta v horní části naší 616 00:33:22,010 --> 00:33:25,340 storyboard zastoupení z pohledu regulátoru. 617 00:33:25,340 --> 00:33:29,270 A tak nám to dává, jako, vizuální, druh, průvodce naší viditelnou obrazovku. 618 00:33:29,270 --> 00:33:34,360 To se samozřejmě bude být navigační panel. 619 00:33:34,360 --> 00:33:40,950 >> A to, co chci dělat rychle, Nyní, je dát do jiného - 620 00:33:40,950 --> 00:33:45,880 takže tato tabulka pohled řadič jsem udělal podle přičemž jeden z nich a tažením 621 00:33:45,880 --> 00:33:49,800 tady, a to je to, co mi umožnilo rychle, opravdu, vytvořit zobrazení tabulky 622 00:33:49,800 --> 00:33:50,850 regulátor. 623 00:33:50,850 --> 00:33:54,100 Pokud máme čas, když budete vidět, že programově, je to 624 00:33:54,100 --> 00:33:57,660 trochu složitější vytvořit tabulku view controller, protože 625 00:33:57,660 --> 00:34:02,520 je několik metod, které jsou potřebné pro Vás, druh, napište 626 00:34:02,520 --> 00:34:07,130 v pořadí pro zobrazení tabulky Regulátor má být zobrazen korektně. 627 00:34:07,130 --> 00:34:15,340 >> Nicméně, chci vám ukázat, nyní, příklad, kde bych si to, 628 00:34:15,340 --> 00:34:15,920 například - 629 00:34:15,920 --> 00:34:18,290 Dal jsem v jiném pohledu regulátoru. 630 00:34:18,290 --> 00:34:27,320 A teď, řekněme, že chci řídit alt můj úplně první modrá 631 00:34:27,320 --> 00:34:28,980 řádek tabulky se zde. 632 00:34:28,980 --> 00:34:31,070 A chci volat tento modrá. 633 00:34:31,070 --> 00:34:32,570 A pak - 634 00:34:32,570 --> 00:34:34,159 podívejme. 635 00:34:34,159 --> 00:34:41,050 Jsem na pohled, a já může změnit pozadí na modrou. 636 00:34:41,050 --> 00:34:45,945 >> A tak, oznámení, tady, to drop-down Nabídka také vám dává hierarchii všech 637 00:34:45,945 --> 00:34:47,040 z těchto objektů. 638 00:34:47,040 --> 00:34:50,530 Takže důležité si uvědomit, tady, je, že všechny tyto věci zde - 639 00:34:50,530 --> 00:34:54,330 tato tabulka pohled řadič, tabulka pohled, tabulka řez, pohled na stůl 640 00:34:54,330 --> 00:34:57,169 buňka - všechny z nich jsou objektů, v kódu. 641 00:34:57,169 --> 00:35:03,752 Takže, víte, značka právě teď je pod pohled na obsah, et cetera. 642 00:35:03,752 --> 00:35:05,020 A tak dále a tak dále. 643 00:35:05,020 --> 00:35:08,765 >> Takže, když jsme se spustit tento kód, se měli byste vidět něco - 644 00:35:08,765 --> 00:35:15,816 645 00:35:15,816 --> 00:35:17,870 Uvidíme, jestli to - jo. 646 00:35:17,870 --> 00:35:18,670 Tak, jdeme na to. 647 00:35:18,670 --> 00:35:22,120 Ale pokud to neuděláme, že žádný na tyto jiné věci fungují. 648 00:35:22,120 --> 00:35:22,500 Je to tak? 649 00:35:22,500 --> 00:35:23,800 Takže jen tohle funguje. 650 00:35:23,800 --> 00:35:29,100 A kvůli času, nebudu jít do, víte, uvedení 651 00:35:29,100 --> 00:35:29,770 dolů ty ostatní. 652 00:35:29,770 --> 00:35:32,020 A to je konec, druh, storyboard - 653 00:35:32,020 --> 00:35:33,400 to, co jsem chtěl ukázat, jste na scénáři. 654 00:35:33,400 --> 00:35:36,330 655 00:35:36,330 --> 00:35:43,490 >> A já mám cvičil příklad, Vlastně tady. 656 00:35:43,490 --> 00:35:48,090 Tak, to je scénář že jsem dělal dříve. 657 00:35:48,090 --> 00:35:52,740 Takže, jak vidíte, je to můj navigační ovladač. 658 00:35:52,740 --> 00:35:57,040 Pak jsem měl svůj první pohled řadič, pak jsem měl tabulku s výhledem na řadič, 659 00:35:57,040 --> 00:35:58,980 a pak jsem měl všechny z nich - 660 00:35:58,980 --> 00:36:01,180 takže dříve, jsem dělal něco úplně jiného. 661 00:36:01,180 --> 00:36:04,450 Takže, omluvte ty věci. 662 00:36:04,450 --> 00:36:07,930 Asi budu uklidit později, než Pošlu ho k výrobě. 663 00:36:07,930 --> 00:36:12,800 >> Ale, když narazíme to, uvidíme že všechny možnosti jsou 664 00:36:12,800 --> 00:36:14,050 které máme k dispozici. 665 00:36:14,050 --> 00:36:18,540 666 00:36:18,540 --> 00:36:21,320 Až na to neměl dělat pozadí ty barvy. 667 00:36:21,320 --> 00:36:26,510 Takže, milý jednoduchá aplikace. 668 00:36:26,510 --> 00:36:28,340 >> Nyní, pojďme se snaží řešit to programově. 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 Takže k tomu, že jsme jen tak začít nový Xcode projektu. 672 00:36:37,570 --> 00:36:41,920 Uděláme to prázdný aplikace nyní, protože nechceme, aby se 673 00:36:41,920 --> 00:36:42,380 storyboard. 674 00:36:42,380 --> 00:36:46,590 Takže jsem prostě omezit sám sebe ne použít některý ze scénáře, a 675 00:36:46,590 --> 00:36:49,170 prázdný aplikace nebude dej mi scénář. 676 00:36:49,170 --> 00:36:52,256 To je jen proto, aby se zabránilo Sám z podvádění. 677 00:36:52,256 --> 00:36:54,428 Pojďme se podívat. 678 00:36:54,428 --> 00:36:55,360 Počkejte. 679 00:36:55,360 --> 00:36:55,960 Řekl jsem - 680 00:36:55,960 --> 00:36:56,448 Ano. 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 >> Správně. 684 00:37:09,180 --> 00:37:16,790 Tak, tady jsme vlevo s nic jiného než kód. 685 00:37:16,790 --> 00:37:19,460 Takže mi dovolte, abych přesunout okno mírně nad. 686 00:37:19,460 --> 00:37:22,020 687 00:37:22,020 --> 00:37:22,260 Správně. 688 00:37:22,260 --> 00:37:28,160 Jak můžete vidět zde, je pouze soubory jsme vzhledem jsou AppDelegate.h a tečka 689 00:37:28,160 --> 00:37:30,500 m, a my nemáme storyboard už. 690 00:37:30,500 --> 00:37:39,580 >> Takže pokud jsme se spustit tento, jsme stále bude dostat na bílou obrazovku, díky bohu. 691 00:37:39,580 --> 00:37:42,280 OK - bílá obrazovka, ale nic jiného. 692 00:37:42,280 --> 00:37:45,260 A tady je důležitou součástí. 693 00:37:45,260 --> 00:37:47,810 To je místo, kde akce proběhne. 694 00:37:47,810 --> 00:37:51,410 V předchozích verzích, je tu obvykle žádný kód zde, ale 695 00:37:51,410 --> 00:37:55,600 scénář v podstatě stanoví kód pro tuto část. 696 00:37:55,600 --> 00:37:57,470 Nebudu zacházet do detailů o tom, jak. 697 00:37:57,470 --> 00:38:02,890 >> A to, co chceme udělat, je, chceme jít sem, a tento malý prostor 698 00:38:02,890 --> 00:38:05,050 začne opět vytvářet naši aplikaci. 699 00:38:05,050 --> 00:38:06,092 Takže - 700 00:38:06,092 --> 00:38:06,318 ano? 701 00:38:06,318 --> 00:38:07,450 >> DIVÁKŮ: Zoom? 702 00:38:07,450 --> 00:38:07,770 >> RHED SHI: Zoom. 703 00:38:07,770 --> 00:38:09,020 Jo, jasně. 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 Budu psát, takže by to nemělo ohledu na to příliš mnoho. 707 00:38:17,380 --> 00:38:17,940 OK. 708 00:38:17,940 --> 00:38:22,720 >> Takže, první, nezapomeňte Chtěli jsme vytvořit navigační ovladač, ne? 709 00:38:22,720 --> 00:38:27,090 A také, jak můžete vidět zde, Xcode dělá opravdu skvělou práci, 710 00:38:27,090 --> 00:38:28,070 self-plnění. 711 00:38:28,070 --> 00:38:31,650 Takže, jak jste si všimli, že názvy všechno je mnohem delší, než 712 00:38:31,650 --> 00:38:33,910 obvykle, ale Xcode vyplní ji za vás. 713 00:38:33,910 --> 00:38:35,710 Tak jsem si jen stiskněte klávesu Enter. 714 00:38:35,710 --> 00:38:40,180 >> Takže, chci vytvořit navigaci UI ukazatel regulátor, a můžu říkat 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 A teď, co mám teď dělat? 718 00:38:44,470 --> 00:38:49,510 Po tomto rovnítkem, musím nejprve, vytvořit vnitřní paměti. 719 00:38:49,510 --> 00:38:53,790 Takže, já budu dělat NavigationController Alloc - 720 00:38:53,790 --> 00:38:56,640 tak, je to podobné malloc, že vy používané v C - 721 00:38:56,640 --> 00:38:58,400 a pak, já jdu na to init. 722 00:38:58,400 --> 00:39:03,670 >> Takže, je to opravdu důležité, aby každá objekt, který vytvoříte, budete chtít, aby 723 00:39:03,670 --> 00:39:04,940 Alloc a init jej. 724 00:39:04,940 --> 00:39:08,600 To bude vytvořit a instantialize ho do paměti, a 725 00:39:08,600 --> 00:39:10,480 Nyní jej můžete použít. 726 00:39:10,480 --> 00:39:10,780 V pořádku? 727 00:39:10,780 --> 00:39:14,360 Pokud nechcete dělat, že váš objekt dělá neexistuje, a budete narazit na spoustu 728 00:39:14,360 --> 00:39:17,290 problémů. 729 00:39:17,290 --> 00:39:20,250 >> A pak chci vytvořit pohled řadič, ne? 730 00:39:20,250 --> 00:39:25,580 Takže, chci vytvořit UIViewController hvězda - 731 00:39:25,580 --> 00:39:29,620 tak, všechno je ukazatel v Objective-C, a já budu dělat, 732 00:39:29,620 --> 00:39:31,600 něco podobného, ​​zde - 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 co budu dělat, pak je, že jsem bude - tak, Pamatuji si, když jsme 737 00:39:43,450 --> 00:39:45,360 embed v navigačním ovladači? 738 00:39:45,360 --> 00:39:46,920 To je, jak to udělat v kódu. 739 00:39:46,920 --> 00:39:54,550 Budeš dělat navigationController 740 00:39:54,550 --> 00:39:55,780 pushViewController - 741 00:39:55,780 --> 00:39:57,636 >> DIVÁKŮ: [neslyšitelné]. 742 00:39:57,636 --> 00:39:59,030 Bude se to stalo u nás, nebo -? 743 00:39:59,030 --> 00:40:00,080 >> RHED SHI: Jo, jo. 744 00:40:00,080 --> 00:40:00,550 Ne. 745 00:40:00,550 --> 00:40:02,740 Je mi líbí víc. 746 00:40:02,740 --> 00:40:04,670 Ne, bude to fungovat i pro tebe. 747 00:40:04,670 --> 00:40:06,700 Tak, to jsou všechny metody. 748 00:40:06,700 --> 00:40:10,400 Takže pushViewController je metoda, a i, konkrétně, že je to 749 00:40:10,400 --> 00:40:13,590 metoda instance rozhraní navigační ovladač. 750 00:40:13,590 --> 00:40:20,030 Protože jsem musel vytvořit svůj UI navigaci Regulátor hvězdy, a pak jsem 751 00:40:20,030 --> 00:40:24,510 mohou volat tuto pushViewController na mém konkrétní příklad navigaci UI 752 00:40:24,510 --> 00:40:25,010 regulátor. 753 00:40:25,010 --> 00:40:29,490 >> DIVÁKŮ: Ještě musíme udělat přesný slovo, nebo to už pro něj existují? 754 00:40:29,490 --> 00:40:31,380 >> RHED SHI: Ano, protože je to metoda. 755 00:40:31,380 --> 00:40:32,200 Je to jako funkci. 756 00:40:32,200 --> 00:40:33,330 Je to jako printf. 757 00:40:33,330 --> 00:40:34,390 Je to jako scanf. 758 00:40:34,390 --> 00:40:36,250 Je to jako strcompare. 759 00:40:36,250 --> 00:40:40,310 Kromě toho, že ví, co budete chtít typu, a všimněte si, že to bude vždy 760 00:40:40,310 --> 00:40:42,740 přijít s věcmi, které jsou právně povoleno pro vás. 761 00:40:42,740 --> 00:40:47,620 Takže, když už nic objeví tady, pak je něco špatně. 762 00:40:47,620 --> 00:40:50,550 >> Tak, pushViewController. 763 00:40:50,550 --> 00:40:52,580 Tak, teď chci, aby se zasadila můj nově vytvořený 764 00:40:52,580 --> 00:40:56,850 UIViewController, a pak, animovaný - 765 00:40:56,850 --> 00:40:57,470 možná ne. 766 00:40:57,470 --> 00:41:00,110 Protože to bude První pohled regulátor. 767 00:41:00,110 --> 00:41:03,210 Myslím, že i když jsem se udělat animovaný, to asi nebude zobrazovat, protože 768 00:41:03,210 --> 00:41:05,050 je to první obrazovka. 769 00:41:05,050 --> 00:41:06,540 >> A pamatujte držáky. 770 00:41:06,540 --> 00:41:08,850 Takže si uvědomte, jak se používá závorky? 771 00:41:08,850 --> 00:41:11,870 A uvnitř závorek, objekt vyzývá metody - 772 00:41:11,870 --> 00:41:15,910 takže náš objekt je navigace regulátor, a metoda je tlak 773 00:41:15,910 --> 00:41:17,210 Pohled regulátor animovaný. 774 00:41:17,210 --> 00:41:21,920 A uvidíte, jak to trvá dva argumenty, a oni jsou od sebe odděleny, druh, 775 00:41:21,920 --> 00:41:24,390 slova, a tlustého střeva. 776 00:41:24,390 --> 00:41:28,300 Takže, Objective-C se snaží, aby to pěkné a pro vás snadné čtení nahlas - 777 00:41:28,300 --> 00:41:33,020 Váš kód - a mají to částečně, druh, smysl. 778 00:41:33,020 --> 00:41:37,150 >> Nicméně, dělat jen to nestačí. 779 00:41:37,150 --> 00:41:39,780 Dovolte mi, abych oddálení teď. 780 00:41:39,780 --> 00:41:44,210 Dělat jen to není dost dostat to, co jsme se dostali dříve. 781 00:41:44,210 --> 00:41:48,580 Tak tady, zjistíte, že tam je ve skutečnosti to nebude nějaký druh 782 00:41:48,580 --> 00:41:50,190 bar, tady, že jo? 783 00:41:50,190 --> 00:41:54,680 Neexistuje žádný navigační lišta, což znamená, že že jsme stále ještě nedostal ji. 784 00:41:54,680 --> 00:41:58,850 >> A můžeme otestovat, zda se také tím, že, možná změna pozadí 785 00:41:58,850 --> 00:42:00,460 ViewController, že jo? 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 Tak, jak ViewController neměl barva pozadí, i když jsem 790 00:42:07,690 --> 00:42:08,780 Chtěl se k nim dostat? 791 00:42:08,780 --> 00:42:14,080 A to proto, že ViewController je kontejner pro zobrazení. 792 00:42:14,080 --> 00:42:19,490 Tak, to má názor majetek, který pak má barvu pozadí. 793 00:42:19,490 --> 00:42:25,510 >> A mohu nastavit, trochu nudně, voláním barvy 794 00:42:25,510 --> 00:42:28,130 na objekt UIColor. 795 00:42:28,130 --> 00:42:33,210 Takže, oznámení tady, redColor je metoda. 796 00:42:33,210 --> 00:42:36,750 Je to metoda, třída UIcolor. 797 00:42:36,750 --> 00:42:40,820 Protože jsem neměl k vytvoření aktuální instance UIColor, aby 798 00:42:40,820 --> 00:42:42,020 volat metodu na to. 799 00:42:42,020 --> 00:42:45,050 Já jen, jednoduše, nazval jej na název typu, jako je. 800 00:42:45,050 --> 00:42:49,620 Já, jako, volal ho na int, int, pokud měl, jako, způsob k tomu, například. 801 00:42:49,620 --> 00:42:52,380 >> A tak, když jsme spuštění tohoto kódu, budeme Všimněte si, že pozadí je 802 00:42:52,380 --> 00:42:53,540 ve skutečnosti není červená. 803 00:42:53,540 --> 00:42:54,790 Je to stále bílé. 804 00:42:54,790 --> 00:42:57,720 805 00:42:57,720 --> 00:43:04,550 A jak se můžeme obejít, že je, Všimněte si, jak je tu self.window. 806 00:43:04,550 --> 00:43:08,260 To znamená, že stejně jako je konečný obal pro vaši aplikaci. 807 00:43:08,260 --> 00:43:11,630 To je konečný věc, která obsahuje vše na obrazovce pro 808 00:43:11,630 --> 00:43:13,650 iPhone nebo iPad aplikace. 809 00:43:13,650 --> 00:43:20,970 >> A, pohodlně, self.window má tuto vlastnost nazvanou 810 00:43:20,970 --> 00:43:22,650 rootViewController. 811 00:43:22,650 --> 00:43:26,480 A to se bude ukazatel na první pohled řadič uvnitř 812 00:43:26,480 --> 00:43:27,270 z vaší aplikace. 813 00:43:27,270 --> 00:43:32,000 Takže, co chceme dělat tady, teď, je nastavit, aby se rovná našemu navigaci 814 00:43:32,000 --> 00:43:32,710 regulátor. 815 00:43:32,710 --> 00:43:33,760 Je to tak? 816 00:43:33,760 --> 00:43:37,490 Vzhledem k tomu, technicky, navigace Regulátor je náš první pohled 817 00:43:37,490 --> 00:43:38,770 regulátor. 818 00:43:38,770 --> 00:43:46,160 To udržuje řadu jiných pohledu regulátory, a my tlačil to 819 00:43:46,160 --> 00:43:49,810 Pohled regulátor do tohoto pole v navigačním regulátoru. 820 00:43:49,810 --> 00:43:52,640 >> Takže, nechcete to udělat. 821 00:43:52,640 --> 00:43:54,225 To by vám opravdu pomůže. 822 00:43:54,225 --> 00:43:58,040 Chcete-li to provést, pokud byste chtěli dělat navigační ovladač, který nejvíce 823 00:43:58,040 --> 00:44:01,100 z vás asi bude, protože budete chtít do, druh, mít nějaký, 824 00:44:01,100 --> 00:44:04,840 jako, menu se vrátíte zpět nebo některé Stránka se vrátit do, spíše než 825 00:44:04,840 --> 00:44:05,470 prázdná obrazovka. 826 00:44:05,470 --> 00:44:05,920 Ano? 827 00:44:05,920 --> 00:44:11,460 >> DIVÁKŮ: Je to nepříjemné, pro vás přiblížit - 828 00:44:11,460 --> 00:44:12,710 >> RHED SHI: Jo. 829 00:44:12,710 --> 00:44:15,310 830 00:44:15,310 --> 00:44:15,720 Takže, jo. 831 00:44:15,720 --> 00:44:22,370 To je kód, a teď pojďme vyzkoušet si to. 832 00:44:22,370 --> 00:44:27,920 >> Tak, jdeme na to. 833 00:44:27,920 --> 00:44:29,170 Magie. 834 00:44:29,170 --> 00:44:30,960 835 00:44:30,960 --> 00:44:32,690 Takže OK. 836 00:44:32,690 --> 00:44:34,420 Děkuju. 837 00:44:34,420 --> 00:44:35,000 OK. 838 00:44:35,000 --> 00:44:38,690 Takže teď, co chceme udělat, je - tak, jsme trochu omezené, tady, že jo? 839 00:44:38,690 --> 00:44:45,130 Mohli bychom mohly napsat vše uvnitř této jedné funkce. 840 00:44:45,130 --> 00:44:48,470 Ale to není, jak vývoj iOS obvykle pracuje. 841 00:44:48,470 --> 00:44:53,030 >> Takže, co budeme dělat, je, že jsme bude vytvářet nějaké nové soubory. 842 00:44:53,030 --> 00:44:57,110 Ale konkrétně, budeme vytvořit další Objective-C třídy, nebo 843 00:44:57,110 --> 00:44:58,010 jiný objekt - 844 00:44:58,010 --> 00:45:00,700 třídy a objekty jsou vzájemně zaměnitelné zde. 845 00:45:00,700 --> 00:45:06,460 A tady je, jak jsem mohla, potenciálně, vytvořit další třídu regulátorů U. 846 00:45:06,460 --> 00:45:12,030 >> Takže, je to sub-class, jak si všimnete, tady je to sub-třída 847 00:45:12,030 --> 00:45:15,910 Pohled UI regulátor, ale mohu nazvat jakýkoli jiný název zde. 848 00:45:15,910 --> 00:45:19,400 Mohl bych zavolat tuto CS50, mohl bych zavolat tento pohled řadič, mohl bych zavolat 849 00:45:19,400 --> 00:45:21,640 Tento bla pohled řadič - 850 00:45:21,640 --> 00:45:22,400 něco chci. 851 00:45:22,400 --> 00:45:24,140 To je jen název pro třídu. 852 00:45:24,140 --> 00:45:27,020 Nicméně, to bude důležité, protože v podstatě, co dělám 853 00:45:27,020 --> 00:45:29,720 tady je, jsem vytvořit jiný název třídy. 854 00:45:29,720 --> 00:45:34,140 Takže, to bude, stejně jako některé druh typu nebo objektu. 855 00:45:34,140 --> 00:45:35,910 Takže by to mělo být trochu obecný. 856 00:45:35,910 --> 00:45:37,225 Nebude to být velmi konkrétní. 857 00:45:37,225 --> 00:45:40,410 858 00:45:40,410 --> 00:45:44,480 >> A také chci upozornit z těchto dvou možností. 859 00:45:44,480 --> 00:45:48,430 Vzhledem k tomu, že děláme vše, co uvnitř kód, někdy je to mnohem jednodušší 860 00:45:48,430 --> 00:45:53,540 aby v souboru rozhraní tak, aby Můžu doslova přetahovat, as 861 00:45:53,540 --> 00:45:54,960 jsme dříve s storyboard - 862 00:45:54,960 --> 00:45:57,810 Víte, štítek, nebo tlačítko, nebo cokoli jiného. 863 00:45:57,810 --> 00:46:01,950 A tak, xibs jsou soubory, které umožňují uživateli to, že, a vy budete muset připojit jej 864 00:46:01,950 --> 00:46:04,310 do tohoto pohledu regulátoru souboru. 865 00:46:04,310 --> 00:46:06,540 >> Takže, jdu se záměrně to zkontrolovat. 866 00:46:06,540 --> 00:46:12,510 Obvykle bych zkontrolovat, a když jsem jen dělal to pro iPhone nebo iPad, I 867 00:46:12,510 --> 00:46:16,340 by zkontrolovat a prostě mít jeden pro, víte, iPhone nebo iPad. 868 00:46:16,340 --> 00:46:19,750 Ale od té doby dělám univerzální, jdu vytvořit dva z těch později. 869 00:46:19,750 --> 00:46:22,220 Takže, jdu se záměrně zrušte to. 870 00:46:22,220 --> 00:46:23,940 >> To je také velmi důležité. 871 00:46:23,940 --> 00:46:27,490 Mnohokrát jsem měl chyby kde to nebylo zaškrtnuto. 872 00:46:27,490 --> 00:46:31,930 A tak, samozřejmě, tento soubor není, trochu, jako, součástí nebo dovezené 873 00:46:31,930 --> 00:46:33,740 uvnitř tohoto testu složky. 874 00:46:33,740 --> 00:46:38,180 A tak, můj kód nemá absolutně žádnou představu, o existenci tohoto souboru, a 875 00:46:38,180 --> 00:46:41,080 , který způsobuje velké bolesti a hodiny ladění. 876 00:46:41,080 --> 00:46:44,360 Ale, jen se ujistěte, to se kontroluje tak, že, víte, cílem této 877 00:46:44,360 --> 00:46:47,510 Soubor je pro tuto aplikaci. 878 00:46:47,510 --> 00:46:48,310 >> OK. 879 00:46:48,310 --> 00:46:51,680 Tak, teď jsme vytvořili dva nové soubory. 880 00:46:51,680 --> 00:46:54,050 A tyto soubory vypadají docela prázdný. 881 00:46:54,050 --> 00:46:59,550 A vlastně, pojďme pokračovat na tím, že vytvoří XIb soubory. 882 00:46:59,550 --> 00:47:03,690 Takže, dříve jsem byl v Kakao Dotykový drop-down. 883 00:47:03,690 --> 00:47:06,880 Teď jsem jít do User Dotykový, a jak vidíte, jsem 884 00:47:06,880 --> 00:47:08,120 může vytvořit scénář. 885 00:47:08,120 --> 00:47:11,710 >> Tak, dokonce jsem začal s prázdnou aplikace, můžete i nadále používat 886 00:47:11,710 --> 00:47:12,340 storyboard. 887 00:47:12,340 --> 00:47:15,480 I když, to bude složité, pokud jde o tom, jak se chcete připojit 888 00:47:15,480 --> 00:47:16,820 že váš kód. 889 00:47:16,820 --> 00:47:18,230 Takže, nebudu tam. 890 00:47:18,230 --> 00:47:22,160 >> Ale to, co chceme dělat, Nyní je vytvořit pohled. 891 00:47:22,160 --> 00:47:25,720 A můžete si vybrat pro iPhone nebo iPad. 892 00:47:25,720 --> 00:47:30,180 A typicky, k označení rozdíl - pokud děláte 893 00:47:30,180 --> 00:47:31,950 univerzální použití - 894 00:47:31,950 --> 00:47:35,980 můžete buď dát podtržítko iPhone, nebo si můžete udělat Twiddly. 895 00:47:35,980 --> 00:47:36,980 Je to opravdu nezáleží. 896 00:47:36,980 --> 00:47:40,890 Je to prostě pro vás rozlišovat který pohled je pro jaké zařízení. 897 00:47:40,890 --> 00:47:43,470 898 00:47:43,470 --> 00:47:44,430 >> A tak, teď se podívejte. 899 00:47:44,430 --> 00:47:47,550 Mám obrazovku, že mohu pracovat. 900 00:47:47,550 --> 00:47:53,530 A tak, například, můžu dát štítek tady, víte, a mohu také dát 901 00:47:53,530 --> 00:47:54,820 další tlačítka zde. 902 00:47:54,820 --> 00:47:58,730 Nebudu měnit Hodnoty, které zde. 903 00:47:58,730 --> 00:48:09,050 >> Ale to, co je důležité, je zde že vlastník souboru se - 904 00:48:09,050 --> 00:48:13,660 tak, že jsem uvnitř iPhone pohled, iPhone Xlb soubor. 905 00:48:13,660 --> 00:48:18,050 A v této oblasti navigace nebo drop-down menu, chci jít do 906 00:48:18,050 --> 00:48:19,090 Vlastník souboru. 907 00:48:19,090 --> 00:48:22,630 A to je opravdu Významným krokem zde. 908 00:48:22,630 --> 00:48:27,780 Chci, aby se pohled třídy regulátor tak, aby tento soubor je XIb 909 00:48:27,780 --> 00:48:30,030 bude spojena s můj názor regulátor. 910 00:48:30,030 --> 00:48:33,590 911 00:48:33,590 --> 00:48:39,360 A vše, co mám dělat, uvnitř mého názoru Regulátor je programově 912 00:48:39,360 --> 00:48:42,800 bude se odráží na zde. 913 00:48:42,800 --> 00:48:46,270 >> Takže, nicméně, všimněte si, že - 914 00:48:46,270 --> 00:48:55,995 ve skutečnosti, pojďme udělat tento názor pozadí modři, například. 915 00:48:55,995 --> 00:49:00,280 916 00:49:00,280 --> 00:49:01,530 Nebo zelená. 917 00:49:01,530 --> 00:49:03,870 918 00:49:03,870 --> 00:49:07,950 A pak, takže pokud si všimnete, v roce tento kód, to je místo, kde jsme se dostali k našemu 919 00:49:07,950 --> 00:49:09,200 navigační ovladač. 920 00:49:09,200 --> 00:49:12,650 921 00:49:12,650 --> 00:49:18,310 >> I když jsme udělali ten krok, že je to Stále bude červená, nikoli zelená. 922 00:49:18,310 --> 00:49:20,350 A je tu důvod, proč. 923 00:49:20,350 --> 00:49:28,090 Je to proto, že když jsme inited Podle našeho názoru regulátor, zde - 924 00:49:28,090 --> 00:49:30,010 Omlouvám se, je to trochu blázen - 925 00:49:30,010 --> 00:49:34,520 když jsme tady inited našeho názoru regulátor, jsme to inited obecného typu 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 Takže jsme neměli ani to že se do této třídy. 929 00:49:40,560 --> 00:49:42,030 >> Takže pamatujte, že to je jako třídu teď. 930 00:49:42,030 --> 00:49:47,160 To může být myšlenka jako typ, jen as UIViewController je typ. 931 00:49:47,160 --> 00:49:51,080 A za účelem použití, že to, co musíme udělat, je importovat - 932 00:49:51,080 --> 00:49:52,520 import ViewController - 933 00:49:52,520 --> 00:49:55,750 a, jak vidíte, je to autofills to pro mě. 934 00:49:55,750 --> 00:49:56,570 Takže, ViewController - 935 00:49:56,570 --> 00:50:02,070 a teď, tady, můžu to změnit UIViewController na ViewController. 936 00:50:02,070 --> 00:50:05,050 A teď, tady, můžu změnit to ViewController. 937 00:50:05,050 --> 00:50:07,790 938 00:50:07,790 --> 00:50:09,250 >> Pojďme spustit znovu. 939 00:50:09,250 --> 00:50:16,970 940 00:50:16,970 --> 00:50:19,690 Je to stále červená. 941 00:50:19,690 --> 00:50:23,370 A důvod, proč je to stále červené je proto, že - 942 00:50:23,370 --> 00:50:26,230 woah, co se tam stalo? 943 00:50:26,230 --> 00:50:31,500 Chtěli jsme spojit případně tuto XIb soubor s výhledem na regulátoru. 944 00:50:31,500 --> 00:50:37,540 Aby však skutečně dělat , že musíme jít do toho. 945 00:50:37,540 --> 00:50:42,980 A když budeme dělat init, chceme dělat initWithNibName, a pak chceme, aby 946 00:50:42,980 --> 00:50:48,910 dělat na řetězec View_iPhone, například. 947 00:50:48,910 --> 00:50:51,700 Můžete ignorovat zde svazku. 948 00:50:51,700 --> 00:50:54,965 >> A to se děje, aby nám, vlastně - 949 00:50:54,965 --> 00:51:00,620 950 00:51:00,620 --> 00:51:02,160 uh oh, je tu problém. 951 00:51:02,160 --> 00:51:09,300 952 00:51:09,300 --> 00:51:09,980 Správně. 953 00:51:09,980 --> 00:51:17,670 >> A tak, je tu problém, protože v Podle našeho názoru Xlb soubor, máme štítek a 954 00:51:17,670 --> 00:51:18,720 máme tlačítko. 955 00:51:18,720 --> 00:51:23,660 Nicméně, i když jsme připojeni ti dva, nic uvnitř 956 00:51:23,660 --> 00:51:27,440 ViewController.h nebo ViewController.m které odpovídají těm, které 957 00:51:27,440 --> 00:51:29,160 tlačítka nebo ty štítky. 958 00:51:29,160 --> 00:51:32,425 Takže, musíme psát ty se jako vlastnosti zobrazení regulátoru. 959 00:51:32,425 --> 00:51:35,290 960 00:51:35,290 --> 00:51:39,490 >> Tak, to je jak deklarovat vlastnost. 961 00:51:39,490 --> 00:51:43,422 Trvá v, obvykle Tyto dvě možnosti. 962 00:51:43,422 --> 00:51:48,690 Pro účely námi a semináře, Řekl bych, že, obecně, 963 00:51:48,690 --> 00:51:52,250 Většina vlastnosti jsou nonatomic a udržet. 964 00:51:52,250 --> 00:51:55,420 Můžete si přečíst o Google vyhledávání, Víte, je rozdíl mezi 965 00:51:55,420 --> 00:51:58,620 nonatomic a udržet na, vám Víte, Google nebo tak něco. 966 00:51:58,620 --> 00:52:01,090 A já tě vezmu do, jako, Stack Overflow, kde lidé budou mít 967 00:52:01,090 --> 00:52:03,605 odpovědi na rozdíly mezi těmi. 968 00:52:03,605 --> 00:52:07,000 Ale teď, že to, co jsme Chci se soustředit na. 969 00:52:07,000 --> 00:52:12,790 >> A my chceme, aby se UI štítek, hvězda, a můžeme říkat, co chceme. 970 00:52:12,790 --> 00:52:15,710 Můžeme říkat, víš, štítek. 971 00:52:15,710 --> 00:52:18,270 972 00:52:18,270 --> 00:52:20,110 A budeme vytvářet další jeden pro tlačítko. 973 00:52:20,110 --> 00:52:24,380 974 00:52:24,380 --> 00:52:29,910 A nezapomeňte zahrnout hvězdičku, protože máme co do činění s ukazateli 975 00:52:29,910 --> 00:52:36,740 skoro všude uvnitř o Objective-C. 976 00:52:36,740 --> 00:52:42,110 >> Nicméně, že se stále neřeší Problém, jak můžete vidět zde. 977 00:52:42,110 --> 00:52:50,540 A důvodem je to, že vždy, když jsme se chcete připojit štítek Xlb souboru nebo 978 00:52:50,540 --> 00:52:55,690 Tlačítko s programem, nebo záhlaví a realizace souboru, chceme 979 00:52:55,690 --> 00:52:58,255 přidejte tento kus kódu - 980 00:52:58,255 --> 00:53:00,610 zásuvky. 981 00:53:00,610 --> 00:53:03,600 Všimněte si, že je to klíčové slovo. 982 00:53:03,600 --> 00:53:07,970 >> A jakmile jsem dokončit psaní že ven, měl by mít tyto 983 00:53:07,970 --> 00:53:09,100 dva kruhy, zde. 984 00:53:09,100 --> 00:53:11,200 Obvykle, oni nejsou vyplněna 985 00:53:11,200 --> 00:53:12,920 Nejsem si jistý, proč jsou. 986 00:53:12,920 --> 00:53:21,370 Ale obvykle, budete muset ručně Připojení je tím, že půjdete na této straně 987 00:53:21,370 --> 00:53:23,530 pomůcky oblast. 988 00:53:23,530 --> 00:53:28,430 >> A tak teď, mám svůj štítek vybrána, a chci přetáhnout tento nový 989 00:53:28,430 --> 00:53:33,910 odkazování zásuvky majitel mého souboru, a poté klikněte na štítek. 990 00:53:33,910 --> 00:53:40,230 Takže teď, konečně, toto označení je připojen k tomuto štítku. 991 00:53:40,230 --> 00:53:44,950 A toto označení je to, co budeme použít programově změnit jeho 992 00:53:44,950 --> 00:53:49,250 textu, jeho font, jeho pozadí barva, et cetera. 993 00:53:49,250 --> 00:53:52,430 >> Tak proč ne my Totéž pro tlačítko? 994 00:53:52,430 --> 00:53:54,770 A jak jste si všimli, pro tlačítko, je to trochu složitější. 995 00:53:54,770 --> 00:53:59,060 Vzhledem k tomu, myslím, že jste měl stiskněte na tlačítku, takže je to tu hodně 996 00:53:59,060 --> 00:54:02,950 z možností, jak uživatelé můžete stisknout na tlačítko. 997 00:54:02,950 --> 00:54:06,570 A pak, uvidíme později, že to můžeme připojit k naší 998 00:54:06,570 --> 00:54:09,140 kód, aby to fungovalo. 999 00:54:09,140 --> 00:54:12,770 >> Takže, teď když se chceme připojit se na tlačítko skutečné 1000 00:54:12,770 --> 00:54:13,570 uvnitř našeho kódu. 1001 00:54:13,570 --> 00:54:19,640 Tak jdeme na nové referenčního výstupu, a pak to tlačítko. 1002 00:54:19,640 --> 00:54:22,068 Nyní, pojďme spustit znovu. 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 Já nevím, co se teď děje. 1006 00:54:25,140 --> 00:54:48,450 1007 00:54:48,450 --> 00:54:49,700 Whoa. 1008 00:54:49,700 --> 00:54:57,380 1009 00:54:57,380 --> 00:54:58,960 Jen jeden moment, tady. 1010 00:54:58,960 --> 00:55:02,490 >> Vlastně, proč ne my se podívejte se na další příklad v 1011 00:55:02,490 --> 00:55:05,800 Zájem času. 1012 00:55:05,800 --> 00:55:06,200 OK. 1013 00:55:06,200 --> 00:55:10,610 Takže, tady je snadněji připravit příkladem ViewController. 1014 00:55:10,610 --> 00:55:13,230 1015 00:55:13,230 --> 00:55:17,110 Jak můžete vidět tady, jsem součástí vlastnosti pro 1016 00:55:17,110 --> 00:55:18,460 štítek a tlačítko. 1017 00:55:18,460 --> 00:55:20,370 A pak, tento kus kódu zde - 1018 00:55:20,370 --> 00:55:21,830 tento IBaction - 1019 00:55:21,830 --> 00:55:27,740 bylo spojení tohoto tlačítka zde. 1020 00:55:27,740 --> 00:55:33,940 Takže jak vidíte zde, dotykové uvnitř je připojen k selektoru 1021 00:55:33,940 --> 00:55:37,390 tzv. Stisknutí tlačítka. 1022 00:55:37,390 --> 00:55:41,700 >> Takže, můžeme skutečně projít pohyb opět tady, tím, že osahávat 1023 00:55:41,700 --> 00:55:48,750 Uvnitř a přetažením na File majitel, a pak 1024 00:55:48,750 --> 00:55:51,570 klikněte na tlačítko stisknuté. 1025 00:55:51,570 --> 00:55:52,820 Nyní, pojďme spustit náš kód. 1026 00:55:52,820 --> 00:55:55,710 1027 00:55:55,710 --> 00:56:02,020 Takže teď, toto tlačítko nyní pracuje, a nás zavede na další stránku. 1028 00:56:02,020 --> 00:56:08,430 >> A co se týče našeho názoru regulátoru, to je kus kódu, který se 1029 00:56:08,430 --> 00:56:10,000 péče o tlačítko stisknuté. 1030 00:56:10,000 --> 00:56:14,260 A to je důležité poznamenat,, že Vytvořil jsem další typ zobrazení 1031 00:56:14,260 --> 00:56:16,330 Regulátor s názvem tabulky pohled na regulátor. 1032 00:56:16,330 --> 00:56:19,900 Tak, to byl podobný k sobě ve storyboard, když jsem vytáhl jednu z 1033 00:56:19,900 --> 00:56:23,450 Tyto regulátory tabulka pohled do scénáře. 1034 00:56:23,450 --> 00:56:24,470 Já jsem vytvořit další 1035 00:56:24,470 --> 00:56:30,000 >> Ukazatel na tabulku View Controller, Alloc a init-ing, a pak dělá 1036 00:56:30,000 --> 00:56:34,490 vlastní tečka navigační ovladač, tlačit ViewController, tento nový 1037 00:56:34,490 --> 00:56:35,350 viewController. 1038 00:56:35,350 --> 00:56:39,750 A já jsem nastavit animaci ano, protože teď v mé aplikaci, a já 1039 00:56:39,750 --> 00:56:45,670 Chcete skutečně vidět animaci děje z domovské stránky na stůl 1040 00:56:45,670 --> 00:56:46,920 pohled na regulátor. 1041 00:56:46,920 --> 00:56:48,830 1042 00:56:48,830 --> 00:56:51,110 >> DIVÁKŮ: Myslíte si stále strach o sběru odpadků? 1043 00:56:51,110 --> 00:56:51,840 >> RHED SHI: Co je to? 1044 00:56:51,840 --> 00:56:54,740 Ne. 1045 00:56:54,740 --> 00:56:58,970 Takže, otázka je, máte pracovat s garbage collection? 1046 00:56:58,970 --> 00:57:03,470 Takže, Xcode 4 měl jako ARC, který je automatické počítání referencí. 1047 00:57:03,470 --> 00:57:06,120 A tak, většinou, když začnete nové Projekt, měli byste zkontrolovat, že v důsledku 1048 00:57:06,120 --> 00:57:09,440 nikdo opravdu chce řešit uvolnění paměti a tak. 1049 00:57:09,440 --> 00:57:13,720 Ale myslím, že v Xcode 5, není ani že volba na novém projektu. 1050 00:57:13,720 --> 00:57:16,750 Takže, je automaticky udělá za vás. 1051 00:57:16,750 --> 00:57:16,920 Ano? 1052 00:57:16,920 --> 00:57:20,970 >> DIVÁKŮ: Můžete exportovat PDF ve svém scénáři? 1053 00:57:20,970 --> 00:57:22,020 >> RHED SHI: Jo, určitě. 1054 00:57:22,020 --> 00:57:28,180 Takže, budou zahrnuty všechny tyto v zdrojový kód, takže vy můžete vyzkoušet 1055 00:57:28,180 --> 00:57:30,730 Skutečná Xcode projekt pro něj. 1056 00:57:30,730 --> 00:57:31,105 Jo? 1057 00:57:31,105 --> 00:57:35,944 >> DIVÁKŮ: Ale, myslím, jako, mohu tisknout PDF s mým scénáři? 1058 00:57:35,944 --> 00:57:38,920 Pokud jsem chcete exportovat obrázky, které ukazují někoho. 1059 00:57:38,920 --> 00:57:39,160 >> RHED SHI: Ach jo. 1060 00:57:39,160 --> 00:57:41,980 Myslím, že možná, můžete jen pořídit snímek obrazovky. 1061 00:57:41,980 --> 00:57:44,350 Jo, a poslat jim obrazovku rána nebo tak něco. 1062 00:57:44,350 --> 00:57:45,600 Jo. 1063 00:57:45,600 --> 00:57:49,170 1064 00:57:49,170 --> 00:57:50,570 >> Takže, pojďme se podívat. 1065 00:57:50,570 --> 00:57:56,470 V zájmu době, myslím, to je všechno můžu pokrýt dnes. 1066 00:57:56,470 --> 00:57:59,600 Ale já vím, že je to ve skutečnosti, jen sotva dotkl povrchu iOS 1067 00:57:59,600 --> 00:58:00,370 vývoj. 1068 00:58:00,370 --> 00:58:05,630 Takže, prosím, neváhejte mě kontaktovat, pokud Máte nějaké dotazy týkající se iOS 1069 00:58:05,630 --> 00:58:07,000 vývoj. 1070 00:58:07,000 --> 00:58:12,840 A doufejme, že budu schopen vyčistit se část kódu pro zdroj 1071 00:58:12,840 --> 00:58:16,830 kód soubory, takže budete mít nějaké opravdu pěkné příklady pro práci s. 1072 00:58:16,830 --> 00:58:21,020 >> Jiné, než to, jestli jste se děje na CS50 Hackathon, smím nebo může 1073 00:58:21,020 --> 00:58:25,730 tam být, a můžu pomoct s některými iOS vývoje, taky. 1074 00:58:25,730 --> 00:58:26,980 Takže, díky moc, kluci. 1075 00:58:26,980 --> 00:58:31,168