1 00:00:00,000 --> 00:00:07,880 2 00:00:07,880 --> 00:00:09,800 >> RHED SHI: Bonvenon vidi CS50 seminario - 3 00:00:09,800 --> 00:00:11,630 Enkonduko al IOS. 4 00:00:11,630 --> 00:00:13,290 Dankon ĉiuj por veni. 5 00:00:13,290 --> 00:00:16,610 Mi esperas ke vi estas justa tiel ekscitita kiel mi pri IOS. 6 00:00:16,610 --> 00:00:22,300 Lasta jaro, mi prenis CS50 kiel sophomore, kaj mi esence lernis IOS por mia 7 00:00:22,300 --> 00:00:23,490 fina projekto. 8 00:00:23,490 --> 00:00:26,350 Kaj gxi estis bela - 9 00:00:26,350 --> 00:00:30,530 bone, tio ne estis facila, sed estas multan subtenon lernilojn rete. 10 00:00:30,530 --> 00:00:33,760 Kaj mi vere esperas, ke kun tiu seminario, mi donos al vi uloj kapo 11 00:00:33,760 --> 00:00:36,750 komencu IOS evoluo 12 00:00:36,750 --> 00:00:40,490 >> Do, en terminoj de IOS disvolviĝo, ekzistas du ĉefaj aferoj ni 13 00:00:40,490 --> 00:00:42,090 volas kovri hodiaŭ. 14 00:00:42,090 --> 00:00:43,290 Unue, la lingvo - 15 00:00:43,290 --> 00:00:46,650 la lingvo tuj estos en Objective-C. Ni efektive aŭdi 16 00:00:46,650 --> 00:00:47,750 io vere ekscita. 17 00:00:47,750 --> 00:00:51,500 Do, vi povas aliĝi al la tuta Apple komunumo de programistoj kaj konstrui iun 18 00:00:51,500 --> 00:00:52,940 vere awesome apps. 19 00:00:52,940 --> 00:00:58,670 >> Ankaŭ, IOS 7 estas bela, espereble, al iuj el vi. 20 00:00:58,670 --> 00:01:01,130 Sed estas polemika, mi scias. 21 00:01:01,130 --> 00:01:05,349 Kaj ĉefe, kion mi volas fari, estas gvidilo vi per Objective-C, kaj ankaŭ 22 00:01:05,349 --> 00:01:10,650 Xcode, kiu estas la integrita evoluo medio kiu vi estos 23 00:01:10,650 --> 00:01:13,460 laborante en por IOS. 24 00:01:13,460 --> 00:01:19,140 >> Kaj do, ĝuste unu vorton pri Objective-C. Esence, ĝi estas la ĝusta sama kiel C, 25 00:01:19,140 --> 00:01:22,790 sed kun multaj aliaj aferoj. 26 00:01:22,790 --> 00:01:27,710 Kaj do, pli strikte, ĝi estas reale super-aro de C. Do, frazoj, kiujn vi 27 00:01:27,710 --> 00:01:32,280 povas fari en C ĝuste nun, kio estas esence like pset 0 tra 6, vi 28 00:01:32,280 --> 00:01:34,170 povas fari en Objective-C. 29 00:01:34,170 --> 00:01:38,620 >> Do, ne sentas timon pri tiu nova lingvo kiun vi tuj lerni. 30 00:01:38,620 --> 00:01:42,120 Vi jam kovris multe de ĝi, ĉar vi ĉiuj faris C tiu pasinteco 31 00:01:42,120 --> 00:01:45,880 semestro, krom nun vi iras havi multe pli labori. 32 00:01:45,880 --> 00:01:49,270 Kaj mi simple tuj kondukos vin tra kelkaj ekzemploj por reliefigi iun 33 00:01:49,270 --> 00:01:53,920 el la ŝlosilaj diferencoj kiuj mi trovis estis vere grava kiam mi lernis 34 00:01:53,920 --> 00:01:57,180 Objective-C pasintjare. 35 00:01:57,180 --> 00:02:00,910 >> Nu fakte, tial, la alia punkto Estas, Objective-C estas, evidente, 36 00:02:00,910 --> 00:02:02,200 object-oriented. 37 00:02:02,200 --> 00:02:06,340 Kaj ni vidos diskuti iomete pri kio tio signifas, poste. 38 00:02:06,340 --> 00:02:11,340 Esence, ĝi estas kvazaŭ kiel vi laboris kun structs en tiu pasinteco pset, kun 39 00:02:11,340 --> 00:02:13,360 nodojn kaj similaj aliaj aferojn tiel. 40 00:02:13,360 --> 00:02:17,110 Escepte, en Objective-C, ĉiu estas objekto, kaj vi tuj estos 41 00:02:17,110 --> 00:02:20,720 pasante ĉirkaŭ montriloj al objektoj anstataŭ la valoroj sin. 42 00:02:20,720 --> 00:02:25,050 Do, estas nur io grava teni en la menso. 43 00:02:25,050 --> 00:02:29,140 >> Do, kial ni ne komencu per kelkaj diferencoj en sintakso inter C kaj 44 00:02:29,140 --> 00:02:30,540 Objective-C? 45 00:02:30,540 --> 00:02:38,310 Mi volas reliefigi la # include, vi scias, norma io.h en C kaj C + +, kun 46 00:02:38,310 --> 00:02:44,030 la Objective-C versio de tiu, kiu estas # importadon, kaj tiam ian 47 00:02:44,030 --> 00:02:44,790 kaplinio dosiero. 48 00:02:44,790 --> 00:02:48,165 En ĉi tiu kazo, estus UIKit, vi scias, oblikvo UIKit.h. 49 00:02:48,165 --> 00:02:53,560 Ĝi povus ankaŭ esti, vi scias, MKMapview al vi oblikvo MKMapview.h se vi volas 50 00:02:53,560 --> 00:02:56,370 fari, kiel, mapo ene de via app. 51 00:02:56,370 --> 00:02:57,110 Similaj aferoj tiel. 52 00:02:57,110 --> 00:03:01,250 >> Do, la grava afero estas inkluzivi nun ŝanĝis por importi. 53 00:03:01,250 --> 00:03:04,340 Sed la ideo ankoraŭ restas. 54 00:03:04,340 --> 00:03:10,460 Vi tuj estos importante ian de kaplinio de dosiero en vian programon. 55 00:03:10,460 --> 00:03:14,550 >> Mi ankaŭ volas rimarki la diferencon inter printf kaj NSLog. 56 00:03:14,550 --> 00:03:19,760 Tamen, kiel ni diris antaŭe, Objective-C estas strikta super-aro de 57 00:03:19,760 --> 00:03:22,800 C, kio signifas, ke printf ekzistas en Objective-C, tro. 58 00:03:22,800 --> 00:03:24,340 Sed, la plej multaj homoj ne uzas tion. 59 00:03:24,340 --> 00:03:28,245 Plej multaj homoj uzi tiun NSLog ĉar ĝi donas al vi tempon sigelilo, kaj ni vidos 60 00:03:28,245 --> 00:03:29,780 ĝin en ago poste. 61 00:03:29,780 --> 00:03:33,560 Sed, estas ĝenerale pli utila maniero por presi variabloj. 62 00:03:33,560 --> 00:03:38,220 >> Kaj mi ankaux volas substreki ke NSLog prenas en ĝuste la sama 63 00:03:38,220 --> 00:03:41,650 lokokupilo valorojn kiel printf faras - 64 00:03:41,650 --> 00:03:45,900 tiom% d estas por int, % F estas por kaleŝego. 65 00:03:45,900 --> 00:03:49,750 Tamen, mi volas reliefigi ĉi lasta oni - 66 00:03:49,750 --> 00:03:52,960 NSLog% ĉe-signo - 67 00:03:52,960 --> 00:03:55,390 ke estas lokokupilo por objekto. 68 00:03:55,390 --> 00:04:01,160 Kaj kiel mi diris antaŭe, Objective-C traktas pretty much plejparte en celoj, 69 00:04:01,160 --> 00:04:05,020 kaj tiel tiu venos en uzo, kiam vi deziras printi, eble, eble oni 70 00:04:05,020 --> 00:04:08,390 NSArray aux NSDictionary, aŭ NSString. 71 00:04:08,390 --> 00:04:13,750 >> Do, ankaŭ, rimarki ke, en nia NSLog deklaro, ni havi ĉe-signo antaŭ 72 00:04:13,750 --> 00:04:15,380 de la citaĵo - 73 00:04:15,380 --> 00:04:20,769 kiu estas por signifi ke kordoj, nun, en Objective-C estas objektoj. 74 00:04:20,769 --> 00:04:23,310 Ili ne plu estas simple char steloj. 75 00:04:23,310 --> 00:04:25,530 Ili estas objektoj, kaj estas traktataj kiel tiaj. 76 00:04:25,530 --> 00:04:28,690 >> Do, ĝi estas vere grava, ke kiam vi uzas NSLog prenas en NS 77 00:04:28,690 --> 00:04:32,580 kordo, kio signifas, ke vi devos inkludi en antaŭ viaj 78 00:04:32,580 --> 00:04:34,270 citiloj. 79 00:04:34,270 --> 00:04:38,290 Kaj tio estas kial vi vidas, ĉi tie, en ĉiuj mia funkcio vokas al ĉi NSLog, mi 80 00:04:38,290 --> 00:04:42,400 havi je antaŭ la citaĵoj, eĉ Kvankam la% d kaj la% f informojn estas 81 00:04:42,400 --> 00:04:45,200 Tutegale de C. 82 00:04:45,200 --> 00:04:47,930 >> Demandojn ĝis nun? 83 00:04:47,930 --> 00:04:50,920 Mi provos iri tra tiu rapide tiel ke ni povas havi pli da tempo por labori 84 00:04:50,920 --> 00:04:55,210 kun Xcode kaj Objective-C, tiel ke vi uloj povas akiri pli 85 00:04:55,210 --> 00:04:57,630 familiara kun ĝi. 86 00:04:57,630 --> 00:05:01,900 >> Tuj poste, mi volas substreki ion koncepte grava. 87 00:05:01,900 --> 00:05:05,130 Do, en C, plej aferoj estas funkcioj. 88 00:05:05,130 --> 00:05:06,280 Ni faru funkcio nomita. 89 00:05:06,280 --> 00:05:10,190 Ni deklaras funkcioj ĉi maniero, kun la reveno tajpi unue, tiam la 90 00:05:10,190 --> 00:05:13,570 funkcio nomo, krampoj, kaj poste kion ajn argumentoj kaj la tipo de 91 00:05:13,570 --> 00:05:15,590 tiuj argumentoj ni volas pasi in 92 00:05:15,590 --> 00:05:19,970 Kaj Objective-C, ĉar ĉiu estas objekto aŭ klaso - 93 00:05:19,970 --> 00:05:23,970 tiel klaso kaj objekto estas du terminojn kiuj estas plejparte sinonimo ĉiu alia, 94 00:05:23,970 --> 00:05:28,270 tial mi povas uzi ilin interŝanĝebla tra la seminario. 95 00:05:28,270 --> 00:05:34,090 >> Sed, vi vidos, ke ni havas metodojn en Objective-C anstataŭ funkcioj. 96 00:05:34,090 --> 00:05:36,390 Kaj metodoj aparteni al objektoj. 97 00:05:36,390 --> 00:05:38,950 Do same, eble preni ekzemple, nodo - 98 00:05:38,950 --> 00:05:40,250 nia tipo [inaudibles] 99 00:05:40,250 --> 00:05:44,390 nodo de pset 6 aŭ 5 - 100 00:05:44,390 --> 00:05:49,590 ni havas la vorton, proprieto, aŭ la sekva nodo montrilo. 101 00:05:49,590 --> 00:05:53,880 Metodoj estas simple funkcioj ene de iu speco de strukturo. 102 00:05:53,880 --> 00:05:57,510 >> Do, en tiu kazo, la strukturo estus la objekton, kaj poste la metodo estas 103 00:05:57,510 --> 00:05:59,260 ion, kio apartenas al objekto. 104 00:05:59,260 --> 00:06:02,650 Kaj jen kiel vi deklarus, ia, metodo. 105 00:06:02,650 --> 00:06:07,990 Vi devus starti kun, denove, la reveno tipo - do, mi provis koloro 106 00:06:07,990 --> 00:06:12,990 Kodo la ŝlosilaj vortoj ĉi tie por ke vi uloj povas vidi la, almenaŭ, formatado 107 00:06:12,990 --> 00:06:17,650 similecoj inter funkcio deklarojn kaj metodo deklaroj. 108 00:06:17,650 --> 00:06:21,990 Do, vi komencas kun, vi scias, reveno tipo - en tiu kazo, estas tabelo, aŭ 109 00:06:21,990 --> 00:06:23,910 an NSArray montrilo - 110 00:06:23,910 --> 00:06:26,710 kaj tiam vi havos tiun metodon. 111 00:06:26,710 --> 00:06:30,900 Kaj tiam, kio estas interesa ĉi tie estas ke anstataŭ havi krampoj, ni 112 00:06:30,900 --> 00:06:32,900 havas tiujn dupunktojn. 113 00:06:32,900 --> 00:06:38,450 Kaj tiam, antaŭ niaj argumentoj, ni meti, denove, en parentezoj la tipo 114 00:06:38,450 --> 00:06:39,370 de nia argumento. 115 00:06:39,370 --> 00:06:43,160 >> Do, nun mi provas fari la komparo inter, vi scias, n kaj 116 00:06:43,160 --> 00:06:45,450 nombro, ĉar ili estas ambaŭ kiel ints. 117 00:06:45,450 --> 00:06:49,580 Kaj poste, la alia unu Estas NSUInteger tipo. 118 00:06:49,580 --> 00:06:56,390 Kaj tiam, kun Objective-C, kiam vi volas havi plurajn argumentojn en 119 00:06:56,390 --> 00:07:00,030 via metodo klaŭzo, vi, ia, apartigi ilin el ia kiel tiu - 120 00:07:00,030 --> 00:07:03,790 Mi ne estas tute certa kiel priskribi ĝin, sed ĉi tiu estas bona ekzemplo de kiel vi 121 00:07:03,790 --> 00:07:06,530 povas havi plurajn argumentojn en tie. 122 00:07:06,530 --> 00:07:10,360 >> Vi povus, kompreneble, nur tute ignori la andArray dupunkto NSArray 123 00:07:10,360 --> 00:07:13,240 tabelo, se vi volas nur metodo kiu portas en unu argumento. 124 00:07:13,240 --> 00:07:13,677 Jes, demando. 125 00:07:13,677 --> 00:07:18,701 >> Spektantaro: Ĉu ambaŭ NSUInteger kaj NSArray argumentoj kiuj povas preni en 126 00:07:18,701 --> 00:07:21,530 ene de la NSArray? 127 00:07:21,530 --> 00:07:22,060 >> RHED SHI: Jes. 128 00:07:22,060 --> 00:07:23,400 Do, lasu min klarigi. 129 00:07:23,400 --> 00:07:23,790 Do, jes. 130 00:07:23,790 --> 00:07:30,260 Do, la demando estis estas NSUInteger kaj NSArray * tipoj de la argumentoj, 131 00:07:30,260 --> 00:07:31,570 kaj tio estas korekta. 132 00:07:31,570 --> 00:07:35,700 Do, vi ĉiam volas specifi kion la tipon de via argumento estas. 133 00:07:35,700 --> 00:07:41,570 Kaj tie, mi provas prezenti vin al kelkaj el la sintakso kaj vocab de 134 00:07:41,570 --> 00:07:45,910 Objective-C, do tiuj estas realaj tipoj ke vi estos kontraktanta kun. 135 00:07:45,910 --> 00:07:48,970 >> Kaj kiel vi rimarkos, arrays ne plu estas, speco de, 136 00:07:48,970 --> 00:07:50,780 simpla krampo aferojn. 137 00:07:50,780 --> 00:07:52,060 Ili estas objektoj. 138 00:07:52,060 --> 00:07:56,700 Kvankam, se ni iros al la venonta glito, ni povas vidi, ke ni povas 139 00:07:56,700 --> 00:08:02,510 hard-kodo oni NSArray en Objective-C kun simple ĉe simbolon antaŭ 140 00:08:02,510 --> 00:08:04,190 la krampoj. 141 00:08:04,190 --> 00:08:08,650 Mi ne estas, reale, tute certas ĉu Mi sintakse hard-coded tabelo 142 00:08:08,650 --> 00:08:16,020 ĝuste por la C versio, sed tio estas supozitaj esti en C tabelo. 143 00:08:16,020 --> 00:08:19,760 >> Do, jen kiel vi estus, vi scias, eble uzu la funkciojn aŭ la 144 00:08:19,760 --> 00:08:21,990 metodoj kiujn ni kreis pli frue. 145 00:08:21,990 --> 00:08:22,250 Ĝuste? 146 00:08:22,250 --> 00:08:25,340 Do, ĉi tiu estas kie ni deklaras nian funkcio kaj nia metodo. 147 00:08:25,340 --> 00:08:28,020 Kaj nun ni volas uzi ilin en nia programo, kaj tio estas 148 00:08:28,020 --> 00:08:29,450 kiel ni farus gxin. 149 00:08:29,450 --> 00:08:32,400 Do, en C, oni havus, vi scias, eble, bool b, kaj vi metos tion al 150 00:08:32,400 --> 00:08:36,549 egali la funkcio, kaj poste vi pasas en la argumentojn. 151 00:08:36,549 --> 00:08:39,190 >> En Objective-C, ĝi estas bela tre la sama afero. 152 00:08:39,190 --> 00:08:43,370 Vi havas NSArray * my_array, kaj ĝi estas irante egali - nun, la sola 153 00:08:43,370 --> 00:08:47,460 malsamojn tie estas cxi objekto aferon, kiun mi reliefigis en flava, kaj 154 00:08:47,460 --> 00:08:51,180 kiel vi povas vidi, en C, estas neniu alia flava vorto. 155 00:08:51,180 --> 00:08:54,170 Kaj ĝi estas ĉar metodoj aparteni kun iu objekto. 156 00:08:54,170 --> 00:08:59,800 Tial estas kial mi devas havi objekton ke, ia, nomas tiun metodon en 157 00:08:59,800 --> 00:09:04,360 la nombro nulo, kaj poste la NSArray a, b, c, d. 158 00:09:04,360 --> 00:09:05,350 Demandojn pri tio? 159 00:09:05,350 --> 00:09:12,190 >> Ni vidos tiujn konceptojn en agado baldaux, kiam ni iros en demo. 160 00:09:12,190 --> 00:09:13,400 OK. 161 00:09:13,400 --> 00:09:17,170 Nun, mi volas paroli iom mallonge pri Xcode 5, kiu estas la 162 00:09:17,170 --> 00:09:21,160 integrita evoluo medio ke vi laboros kun. 163 00:09:21,160 --> 00:09:26,160 Mi scias multon pri vi, nek iu el vi, ne havas Mac, kiu estas problemo 164 00:09:26,160 --> 00:09:30,490 ĉar Xcode ne haveblas por Vindozo kaj PC. 165 00:09:30,490 --> 00:09:32,785 Ne demandu al mi kial, sed verŝajne - 166 00:09:32,785 --> 00:09:33,730 yeah, korporacia. 167 00:09:33,730 --> 00:09:35,290 Kion ajn. 168 00:09:35,290 --> 00:09:39,360 Sed ĉiukaze, do, mi pardonpetas se kelkaj el vi devas elŝuti ian 169 00:09:39,360 --> 00:09:43,000 virtuala maŝino por Mac en Por kuri Xcode 5. 170 00:09:43,000 --> 00:09:46,460 Sed ĝi estas bela nifty softvaron por uzi. 171 00:09:46,460 --> 00:09:51,280 >> Kaj do, antaŭ ol ni plonĝi en ajnan specon de demo, mi nur volas montri al vi 172 00:09:51,280 --> 00:09:55,700 bildo de kio Xcode aspektas same kiel en via fenestron, kaj tiam ankaŭ paroli pri 173 00:09:55,700 --> 00:09:57,670 kio estas tiu tuta spaco estas. 174 00:09:57,670 --> 00:10:01,600 Do, ĝi estas speco de kiel lerni kiel uzi Microsoft Word, krom vi volas 175 00:10:01,600 --> 00:10:04,675 get familiarizada kun ĉiuj malsamaj aferoj 176 00:10:04,675 --> 00:10:06,250 iras sur ĉi tie. 177 00:10:06,250 --> 00:10:11,160 >> Do unue, mi volas atentigi vin al la ilobreto ĉe la supro. 178 00:10:11,160 --> 00:10:14,450 Vi vidos ke, ĉe la supro, vi havas la dosiero nomo - 179 00:10:14,450 --> 00:10:18,100 aŭ, fakte, via projekto nomo kaj tiam via dosiero nomon. 180 00:10:18,100 --> 00:10:20,940 Prenu noto de la teatraĵo kaj skalon butonoj. 181 00:10:20,940 --> 00:10:24,210 Tiuj estas kiuj vi estos uzante kuri via app en la 182 00:10:24,210 --> 00:10:25,600 simulilo - 183 00:10:25,600 --> 00:10:26,550 la IOS simulilo. 184 00:10:26,550 --> 00:10:29,940 Ĉi aŭtomate venas kun Xcode 5, tial vi ne devas zorgi pri 185 00:10:29,940 --> 00:10:32,070 elŝutante ian simulilo. 186 00:10:32,070 --> 00:10:34,700 Vi nur premi ludita kaj tiam kuras vian programon. 187 00:10:34,700 --> 00:10:39,230 Kaj vi povas ludi ĉirkaŭe kun vi, kaj vi vidos kiel funkcias poste. 188 00:10:39,230 --> 00:10:42,690 >> Kaj tiam, en la centro, kompreneble, estas kie ĉiuj viajn belajn kodo 189 00:10:42,690 --> 00:10:44,240 tuj iros. 190 00:10:44,240 --> 00:10:48,340 Kaj poste, je la maldekstra flanko, vi havas tiun, ia, dosierujo - 191 00:10:48,340 --> 00:10:50,340 navigado - 192 00:10:50,340 --> 00:10:53,970 kaj tiam, vi ankaux vidos, ke, kune kun la dosierujon ikono, estas 193 00:10:53,970 --> 00:10:57,680 faskon da aliaj ikonoj tie Estos utila poste. 194 00:10:57,680 --> 00:11:04,710 >> Kaj poste, je la dekstra flanko estas ilo areo kie vi povas labori kun 195 00:11:04,710 --> 00:11:09,620 kelkaj el la celoj kaj specifi, vi scias, kio estas la koloro devas esti, kion 196 00:11:09,620 --> 00:11:12,040 la teksto tiparo devus esti, kaj tiel plu. 197 00:11:12,040 --> 00:11:15,890 Kvankam, ĉiun ke vi faru en la utilecon areo, vi povas 198 00:11:15,890 --> 00:11:17,480 fari en kodo tiel. 199 00:11:17,480 --> 00:11:21,630 Kaj do, mi povas iri per du ekzemploj de la uzo, simple, ne kodon ĉe 200 00:11:21,630 --> 00:11:23,730 ĉiuj - aŭ tre minimumaj kodo - 201 00:11:23,730 --> 00:11:28,290 versoj ĉiu kodo, nur por ke vi uloj scias kion vi povas kaj ne povas fari en 202 00:11:28,290 --> 00:11:29,260 Xcode kaj Objective-C. 203 00:11:29,260 --> 00:11:32,770 >> Kaj poste, fine, sube ĉe la malsupro, vi havas la erarserĉilo areo. 204 00:11:32,770 --> 00:11:37,270 Do, vi ne plu devas kuri GDB, kaj tiel plu, sur viajn programojn. 205 00:11:37,270 --> 00:11:39,180 Ĝi aŭtomate faras ĝin por vi. 206 00:11:39,180 --> 00:11:42,880 Kaj vi povas ankaŭ printi uzatajxojn, por tiu zono. 207 00:11:42,880 --> 00:11:46,790 Do efektive, poste, ni iros tra mario.c, se vi uloj ankoraŭ memoras 208 00:11:46,790 --> 00:11:49,000 ke, en Xcode. 209 00:11:49,000 --> 00:11:50,360 Por ke devus esti amuza. 210 00:11:50,360 --> 00:11:55,870 >> Kaj tiam, nur por porti ĝin al Objective-C, mi volas reliefigi kia 211 00:11:55,870 --> 00:11:57,440 vi povas fari kun se deklaroj. 212 00:11:57,440 --> 00:12:03,160 Do, vi scias, ĉar Objective-C estas superaro de C, ĉion kion vi faras estas, 213 00:12:03,160 --> 00:12:06,890 laŭvorte, la sama kiel C. Vi nur havas malpezajn diferencoj. 214 00:12:06,890 --> 00:12:10,810 Do, vi rimarkos la formon por se deklaro estas ankoraŭ la sama - oni havas 215 00:12:10,810 --> 00:12:14,280 se, kaj tiam vi havos parentezoj kun kondiĉo ene de, kaj poste 216 00:12:14,280 --> 00:12:17,150 krispa krampoj por kiaj vi ĉu por fari interne de tie. 217 00:12:17,150 --> 00:12:21,680 >> Tamen, mi volis meti ĉi glito supren tien, simple por ilustri ke, 218 00:12:21,680 --> 00:12:25,680 ĉar ni pritraktas objektojn nun, ni devos uzi tiujn aferojn 219 00:12:25,680 --> 00:12:31,240 nomata kiel, estas egala al ŝnuro, kiun Estas, hazarde, metodo de 220 00:12:31,240 --> 00:12:33,710 ŝnuro aŭ NSString objekto. 221 00:12:33,710 --> 00:12:38,600 Do, vorto, en ĉi tiu kazo, estas NSString kontesti, kaj ĝi havas metodon nomitan estas 222 00:12:38,600 --> 00:12:44,150 egala al ŝnuro, kaj poste ni pasis en hard-coded kordo vidi 223 00:12:44,150 --> 00:12:48,110 cxu tiuj estas egalaj unu al alian. 224 00:12:48,110 --> 00:12:51,580 >> Demandojn ĝis nun? 225 00:12:51,580 --> 00:12:52,440 OK. 226 00:12:52,440 --> 00:12:56,190 Kaj, mi volas iri super a por komunikaĵo ankaŭ. 227 00:12:56,190 --> 00:13:01,420 >> Do, ekzemple, se ni volis buklo super la longeco de kordo en C, tiu 228 00:13:01,420 --> 00:13:03,710 devus esti konata al vi. 229 00:13:03,710 --> 00:13:07,840 Kaj, Objective-C, mi ne volas por reliefigi tion, ia, 230 00:13:07,840 --> 00:13:09,235 metodo nomata grafo. 231 00:13:09,235 --> 00:13:13,260 232 00:13:13,260 --> 00:13:15,550 Nu, fakte, lasu min nur prenu ke dorso. 233 00:13:15,550 --> 00:13:17,200 Grafo estas metodo de tabelo. 234 00:13:17,200 --> 00:13:21,070 Tamen, ĝi estas pli specife posedaĵo de tabelo, kiu estas kial vi 235 00:13:21,070 --> 00:13:22,380 povas uzi la skalara skribmaniero. 236 00:13:22,380 --> 00:13:25,870 Sed mi ne volas eniri en la tro multa de tiu koncepta stuff, mi volas nur 237 00:13:25,870 --> 00:13:30,140 por montri al vi kiel tio aspektus kiel en Objective-C kontre C. 238 00:13:30,140 --> 00:13:35,400 >> Kaj ankaŭ, mi volas atentigi ke eĉ se mi estis uzante NSUInteger 239 00:13:35,400 --> 00:13:39,860 fronte al ĉiuj miaj i estas en Objective-C, vi povas uzi ankaŭ int, ĉar int estas 240 00:13:39,860 --> 00:13:42,290 plene valida en Objective-C, ankaux. 241 00:13:42,290 --> 00:13:42,475 Jes? 242 00:13:42,475 --> 00:13:44,350 >> Spektantaro: Ĉu nur stila, aŭ estas - 243 00:13:44,350 --> 00:13:44,760 >> RHED SHI: Jes. 244 00:13:44,760 --> 00:13:46,060 Do, kiel vi vidos - 245 00:13:46,060 --> 00:13:49,390 do, la demando estis estas, ke nur stila demando. 246 00:13:49,390 --> 00:13:54,820 Kiel vi vidos, mi havas, ia, stelo asterisko afero malsupren ĉe la malsupro, kaj 247 00:13:54,820 --> 00:13:59,870 ke ligilo prenas vin al Stack Overflow formi, kie iu klarigas 248 00:13:59,870 --> 00:14:03,640 la diferenco inter int en NSInteger kaj NSUInteger. 249 00:14:03,640 --> 00:14:05,540 Kaj do, vi povas legi pri tio poste. 250 00:14:05,540 --> 00:14:07,640 Ĉi tiuj diapozitivoj Estos, kompreneble, disponebla por vi. 251 00:14:07,640 --> 00:14:10,300 252 00:14:10,300 --> 00:14:11,280 >> Ni vidu. 253 00:14:11,280 --> 00:14:12,150 OK, awesome. 254 00:14:12,150 --> 00:14:15,410 Do, ĉi tiu estas ankaŭ inkluzivita en la tobogano ĉar mi pensis, tio estis granda 255 00:14:15,410 --> 00:14:19,370 retejo kiu enkondukas vin al Objective-C sintakso. 256 00:14:19,370 --> 00:14:24,410 Do, fakte, kial ni ne movi Chrome kaj kontrolu ĉi paĝo? 257 00:14:24,410 --> 00:14:30,650 258 00:14:30,650 --> 00:14:31,300 >> Ĝuste. 259 00:14:31,300 --> 00:14:36,670 Do, kion mi volas montri al vi infanoj tie estas jena bildo. 260 00:14:36,670 --> 00:14:41,630 Do, tiu estas, speco de, tuj estos kio Vi tuj vidos interne de iu ajn 261 00:14:41,630 --> 00:14:42,890 Xcode dosiero. 262 00:14:42,890 --> 00:14:47,400 263 00:14:47,400 --> 00:14:51,430 Fakte, kial ni ne simple prenu momenton por iel, prenu tiun in 264 00:14:51,430 --> 00:14:53,470 >> Do, ĉi tiu libro - 265 00:14:53,470 --> 00:14:55,880 tio estas la objekto, kiun ni pritraktas. 266 00:14:55,880 --> 00:14:59,680 Kaj tiam, ĝi estas evidente tuj estos hereditaj el kelkaj aliaj objekto, sed 267 00:14:59,680 --> 00:15:01,810 vi ne devas zorgi pri tio. 268 00:15:01,810 --> 00:15:04,430 Kaj tiam, ĝi eble havas iu membro variabloj. 269 00:15:04,430 --> 00:15:09,160 >> La grava afero mi volas montri al vi estas la petskribo metodoj, ĉi tie. 270 00:15:09,160 --> 00:15:12,670 Do, ekzemple la metodoj estas signitaj per tiu minuso. 271 00:15:12,670 --> 00:15:15,550 Kaj tiam, kiel vi rimarkos, ke ni estas jam ekvidas la paradigmo 272 00:15:15,550 --> 00:15:17,670 por metodo deklaro, ĉu ne? 273 00:15:17,670 --> 00:15:22,670 La reveno tipo, la metodo nomo,, kaj tiam la tipo de la argumento, kaj 274 00:15:22,670 --> 00:15:24,660 tiam la nomo de la argumento. 275 00:15:24,660 --> 00:15:29,090 Kaj tiu minuso signifas ke ĝi estas Ekzemple metodo, kio signifas, ke 276 00:15:29,090 --> 00:15:32,270 ĉi tiuj metodoj estas nur disponebla por celojn kiuj estis instantiated. 277 00:15:32,270 --> 00:15:35,050 278 00:15:35,050 --> 00:15:39,100 >> Por kontrastigi tion, metodoj kun alpago subskribi antaŭ ili estas klaso 279 00:15:39,100 --> 00:15:43,640 metodoj, kio signifas ke vi povas nomi tiujn metodojn, eĉ se vi ne havas 280 00:15:43,640 --> 00:15:45,970 objekto kreas ankoraŭ. 281 00:15:45,970 --> 00:15:51,600 Do, por klara ekzemplo, NSString estas klaso. 282 00:15:51,600 --> 00:15:55,850 Kaj vi povas nomi, ekzemple, klaso metodojn sur NSString - 283 00:15:55,850 --> 00:15:58,660 la realaj, kiel, vorto NSString. 284 00:15:58,660 --> 00:16:02,050 >> Tamen, por uzi ĉi tiuj metodoj, vi vere 285 00:16:02,050 --> 00:16:03,460 bezonas krei ĉenon. 286 00:16:03,460 --> 00:16:08,980 Ekzemple, NSString stelo kordo egalas ĉe citilo, saluton mondo. 287 00:16:08,980 --> 00:16:10,910 Kaj tiam, vi povas uzi tiujn metodojn - 288 00:16:10,910 --> 00:16:11,990 Ekzemple metodoj - 289 00:16:11,990 --> 00:16:14,790 sur tiu saluton mondo kordo. 290 00:16:14,790 --> 00:16:17,825 Do, tiu estas la diferenco inter Ekzemple metodoj kaj klaso metodojn. 291 00:16:17,825 --> 00:16:20,390 292 00:16:20,390 --> 00:16:21,930 >> Kaj, ni simple kovris tiun parton. 293 00:16:21,930 --> 00:16:25,300 294 00:16:25,300 --> 00:16:33,750 Ecoj estas alia afero, ke estas ene de objektoj, esence. 295 00:16:33,750 --> 00:16:37,530 Kaj vi sciigu ilin kun la ĉe propraĵo ŝlosilvorto. 296 00:16:37,530 --> 00:16:39,940 Vi havas tiuj ebloj, ĉi tie, ke mi klarigos poste kiam 297 00:16:39,940 --> 00:16:43,110 Ni iru en demo. 298 00:16:43,110 --> 00:16:43,660 Jes? 299 00:16:43,660 --> 00:16:43,950 Saluton. 300 00:16:43,950 --> 00:16:45,440 >> Spektantaro: Ĉu vi povas zomi, bonvolu? 301 00:16:45,440 --> 00:16:46,130 >> RHED SHI: Ho jes. 302 00:16:46,130 --> 00:16:46,560 Pardonon. 303 00:16:46,560 --> 00:16:49,140 >> Spektantaro: Dankon. 304 00:16:49,140 --> 00:16:50,005 >> RHED SHI: Tio devus esti multe pli bona. 305 00:16:50,005 --> 00:16:51,240 >> Spektantaro: Jes. 306 00:16:51,240 --> 00:16:53,940 Dankon. 307 00:16:53,940 --> 00:16:56,815 >> RHED SHI: Jes, bonvolu memorigi min se Mi forgesis zomi aŭ malzomi. 308 00:16:56,815 --> 00:17:00,590 309 00:17:00,590 --> 00:17:03,570 Do, ĉi tiu estas kion mi volis montri al vi por - 310 00:17:03,570 --> 00:17:05,970 whoa, ke estas multe - 311 00:17:05,970 --> 00:17:06,790 por tiu ĉi paĝo. 312 00:17:06,790 --> 00:17:12,210 Do, ni reiru al nia diapozitivoj. 313 00:17:12,210 --> 00:17:17,819 >> Efektive, nun ni preni momenton plonĝi en demo. 314 00:17:17,819 --> 00:17:25,490 Do, ni devos komenci kun nova Xcode projekto. 315 00:17:25,490 --> 00:17:33,040 Do, se vi malfermas Xcode je ĉiuj viaj maŝinoj, ĝi devus preni al vi iom 316 00:17:33,040 --> 00:17:36,720 paĝo kie diras, kiel, ĉu malfermita supren ekzistantan projekton aŭ nova 317 00:17:36,720 --> 00:17:39,230 projekto, kaj vi devus klaku al nova projekto. 318 00:17:39,230 --> 00:17:41,477 Kaj tiam, ĝi devus preni vin al tiu ekrano. 319 00:17:41,477 --> 00:17:41,593 Jes? 320 00:17:41,593 --> 00:17:44,279 >> Spektantaro: Se ni ne havas Mac, cxu ni simple speco de chill? 321 00:17:44,279 --> 00:17:46,870 >> RHED SHI: Aŭ rigardu kun iu, yeah. 322 00:17:46,870 --> 00:17:47,740 Jes. 323 00:17:47,740 --> 00:17:50,660 Vi povas chill, tro. 324 00:17:50,660 --> 00:17:51,570 OK. 325 00:17:51,570 --> 00:17:55,410 >> Do, kion ni faros unua, nun, Estas, fakte, ni tuj faros 326 00:17:55,410 --> 00:17:56,600 sola vido apliko. 327 00:17:56,600 --> 00:18:01,340 Do, se vi rimarkos, kio estas granda pri Xcode kaj Apple subteno por 328 00:18:01,340 --> 00:18:05,690 programistoj estas ke vi havas multe da ŝablonoj por labori kun jam. 329 00:18:05,690 --> 00:18:09,210 Vi povus, ekzemple, fari majstromasonisto detale apliko. 330 00:18:09,210 --> 00:18:10,920 Vi povas fari ludon - 331 00:18:10,920 --> 00:18:13,860 kaj fakte, mi ne volas iri en ludoj, ĉar ludoj estas alia rakonto 332 00:18:13,860 --> 00:18:15,320 por IOS evoluo. 333 00:18:15,320 --> 00:18:18,930 Kaj ili estas speco de apartaj, tiel mi ne iros en tiun. 334 00:18:18,930 --> 00:18:22,580 >> Tiam, vi pagxo-bazita aplikoj. 335 00:18:22,580 --> 00:18:24,010 Vi havas langeto apliko - 336 00:18:24,010 --> 00:18:29,350 tiom ŝatas, ekzemple, la Banko de Ameriko probable havas, kiel, a pestañas programon. 337 00:18:29,350 --> 00:18:32,140 Estas tiuj kie vi havas la butonojn ĉe la malsupro. 338 00:18:32,140 --> 00:18:34,750 Kaj tiam, vi havas Sprite garnituro ludon. 339 00:18:34,750 --> 00:18:38,670 >> Aŭ vi povas labori el nenio, kion estas, kion ni faros poste. 340 00:18:38,670 --> 00:18:42,470 Sed ni, unue, komencu per sola vido apliko. 341 00:18:42,470 --> 00:18:48,590 Tiam, ĝi petos por produkto nomo, kaj ni povas nur fari provon. 342 00:18:48,590 --> 00:18:50,190 Organizo nomo - 343 00:18:50,190 --> 00:18:54,140 tiel, organizo nomo, kompanio ensalutilo - 344 00:18:54,140 --> 00:18:58,100 tiuj estas gravaj se vi iras meti vian app en la App Store. 345 00:18:58,100 --> 00:19:01,110 346 00:19:01,110 --> 00:19:05,116 Escepte ke via kodo estas tuj kuri absolute bone sen tio. 347 00:19:05,116 --> 00:19:09,940 >> Ĉi tuj estos grava se vi volas - do, per, kiel, metu vian app 348 00:19:09,940 --> 00:19:14,080 sur via telefono aŭ io, kaj provo ĝin, vi scias, en reala vivo - 349 00:19:14,080 --> 00:19:15,360 tio estos grava. 350 00:19:15,360 --> 00:19:20,110 Ĉi inklinas kutime esti asociita kun ia developer konton 351 00:19:20,110 --> 00:19:20,970 kun Apple. 352 00:19:20,970 --> 00:19:24,740 >> Kaj do, mi scias, probable, multon pri vi ne havos neniun developer kontojn. 353 00:19:24,740 --> 00:19:26,460 Mi scias la universitato havas unu. 354 00:19:26,460 --> 00:19:27,630 Mi kredas CS havas unu. 355 00:19:27,630 --> 00:19:32,770 Sed, vi rajtas retmesaĝi al mi kaj mi provos ekkompreni ke por vi. 356 00:19:32,770 --> 00:19:38,210 Sed nun, mi ĵus metis en iuj lokokupilo aferoj ĉi tie. 357 00:19:38,210 --> 00:19:41,250 >> Kaj vi povas, kompreneble, ĉi tie, elekti ĉu vi volas ke ĝi estu nur en 358 00:19:41,250 --> 00:19:44,410 iPhone, en iPad, aŭ ambaŭ - 359 00:19:44,410 --> 00:19:46,630 universala aplikaĵo. 360 00:19:46,630 --> 00:19:56,170 Do, nuntempe, ni faru universala, same vidi ambaux flankojn de la kajo. 361 00:19:56,170 --> 00:19:57,120 >> Ni vidu. 362 00:19:57,120 --> 00:20:01,510 Do, nun, mi iros por savi ĝin en ia speco de dosierujo. 363 00:20:01,510 --> 00:20:04,500 Ne gravas kie - vi povas ĉiam movi ĝin poste. 364 00:20:04,500 --> 00:20:09,380 Kaj, nun, ni alportis al nia Xcode projekto. 365 00:20:09,380 --> 00:20:12,890 Mi ne maltrankviliĝas pri ĉio ĉi. 366 00:20:12,890 --> 00:20:17,510 Mi sugestus ne tuŝi iun el ĉi, krom se vi scias ekzakte kion 367 00:20:17,510 --> 00:20:18,260 vi faras. 368 00:20:18,260 --> 00:20:21,750 Do, ĉio ĉi, simple ignori plejparte. 369 00:20:21,750 --> 00:20:26,940 Vi ne bezonas tuŝi ĝin, kaj se vi ĉu vi salaton ĉe iuj aĵoj ĉi tie, 370 00:20:26,940 --> 00:20:28,600 gets iom komplika. 371 00:20:28,600 --> 00:20:32,480 >> Do, kial ni ne rigardi en la dosierojn en la 372 00:20:32,480 --> 00:20:34,700 maldekstra flanko en nia naviganto. 373 00:20:34,700 --> 00:20:37,060 Tie, ni havas AppDelegate.h. 374 00:20:37,060 --> 00:20:43,430 Ni havas AppDelegate.m Do, kiel vi avizo, ni header dosieroj, kiujn 375 00:20:43,430 --> 00:20:45,720 finiĝas per punkto h, kaj ni havas efektivigo - 376 00:20:45,720 --> 00:20:46,970 fakte, lasu min zomi in 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 Lasu min zomi in 380 00:20:59,940 --> 00:21:05,810 >> Ĝuste tiel vi header dosierojn kaj vi havas efektivigo dosierojn. 381 00:21:05,810 --> 00:21:07,060 Reale - 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 Tiu estas iom bizara, sed pacience min toleras. 385 00:21:11,800 --> 00:21:16,140 Poste, ĉar ni jam elektis sola vido apliko, ni tuj estos 386 00:21:16,140 --> 00:21:17,340 laborante kun storyboard. 387 00:21:17,340 --> 00:21:22,140 >> Do, storyboard estas iu kiu de Apple venis supren kun vere helpas 388 00:21:22,140 --> 00:21:26,550 programistoj rapide prototipo iliaj aplikoj. 389 00:21:26,550 --> 00:21:29,410 Do, ĉi tie vi povas krei app sen skribi 390 00:21:29,410 --> 00:21:31,710 sola linio de kodo. 391 00:21:31,710 --> 00:21:35,390 Tamen, en nia sola vido apliko, ni, kompreneble, havas 392 00:21:35,390 --> 00:21:41,270 dosiero por nia vido, kiun Estas view regilo. 393 00:21:41,270 --> 00:21:45,150 Do, ni havas la ĉapon kaj la efektivigo dosiero, tie ĉi. 394 00:21:45,150 --> 00:21:52,350 >> Kaj, mi tuj malzomi nun ĉar Ni bezonos labori en la storyboard. 395 00:21:52,350 --> 00:21:55,190 Do, jen nia vido. 396 00:21:55,190 --> 00:22:00,120 Se ni, simple, kuras la app ĝuste nun, tie ne estas multe interesa okazas. 397 00:22:00,120 --> 00:22:03,270 398 00:22:03,270 --> 00:22:05,040 Do, vi vidos ĉi tiun blankan ekranon. 399 00:22:05,040 --> 00:22:06,110 OK? 400 00:22:06,110 --> 00:22:14,010 >> Kaj, en nia utilecoj areo, ni povos aldoni faskon da malsamaj aĵoj al ĝi. 401 00:22:14,010 --> 00:22:19,290 Do, kiam vi estas kontraktanta kun ekranoj en IOS, vido regiloj estas la 402 00:22:19,290 --> 00:22:23,150 celoj kiuj encapsulan, ia, viaj opinioj. 403 00:22:23,150 --> 00:22:26,980 Do, vidpunkto regilo ĉiam estas propraĵo nomata vido. 404 00:22:26,980 --> 00:22:29,610 Kaj tiu vido, tipe, enhavas, vi scias, kion vi 405 00:22:29,610 --> 00:22:30,810 ĉu vi vidas sur ekrano. 406 00:22:30,810 --> 00:22:39,210 >> Do, nu, ni komencu per meto, eble, eble etiketo. 407 00:22:39,210 --> 00:22:41,450 Do, ni metis etiketo sur tie - 408 00:22:41,450 --> 00:22:44,080 trae en la mezo. 409 00:22:44,080 --> 00:22:49,560 Do, nun kiam mi klakis sur la etikedo, mi povas iri en la propraĵoj inspektisto 410 00:22:49,560 --> 00:22:51,510 kaj komencos ŝanĝi ĝian valoron. 411 00:22:51,510 --> 00:22:55,040 Ni nomas ĝin CS50 Koloroj. 412 00:22:55,040 --> 00:22:58,220 >> Kaj, mi ankaŭ povas ŝanĝi la tiparon. 413 00:22:58,220 --> 00:23:02,630 Do, anstataŭ fari sistemon, kiu estas la defaŭlta, ni povas fari kutimo tiu. 414 00:23:02,630 --> 00:23:03,770 Ni povas ŝanĝi - 415 00:23:03,770 --> 00:23:06,453 vi scias, ultraligeros, igi ĝin 32. 416 00:23:06,453 --> 00:23:09,000 417 00:23:09,000 --> 00:23:11,370 Kaj poste, ni povos fari nian skatolon granda. 418 00:23:11,370 --> 00:23:14,410 >> Spektantaro: Cxu vi opinias ke vi povas zomi en nur iom pli, eble? 419 00:23:14,410 --> 00:23:14,810 >> RHED SHI: Jes? 420 00:23:14,810 --> 00:23:16,196 OK. 421 00:23:16,196 --> 00:23:17,450 >> Spektantaro: Just frapeti ĝin? 422 00:23:17,450 --> 00:23:19,020 >> RHED SHI: Ni vidu. 423 00:23:19,020 --> 00:23:20,382 Ĉu ĉi tiu laboro? 424 00:23:20,382 --> 00:23:22,270 >> Spektantaro: Just pasas la Xcode? 425 00:23:22,270 --> 00:23:23,520 >> RHED SHI: Certe. 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 Awesome. 429 00:23:26,275 --> 00:23:27,072 >> Spektantaro: La etiketo sub? 430 00:23:27,072 --> 00:23:28,920 La etiketo? 431 00:23:28,920 --> 00:23:29,480 >> RHED SHI: Kio estas tio? 432 00:23:29,480 --> 00:23:32,050 >> Spektantaro: Kio falmenuo Estis la etikedon sub? 433 00:23:32,050 --> 00:23:35,170 >> RHED SHI: Do, la demando estis, kion Versxigxos-malsupren estis la etikedon sub? 434 00:23:35,170 --> 00:23:37,260 Ĝi devus, simple, esti sub tie. 435 00:23:37,260 --> 00:23:39,330 Mi supozas ke ĝi estas kubo afero. 436 00:23:39,330 --> 00:23:40,910 Sed kutime, ĉi tiu estas la defaŭlta - 437 00:23:40,910 --> 00:23:43,250 Mi simple mallevigxo tien ĝis mi trovos etiketo. 438 00:23:43,250 --> 00:23:45,800 439 00:23:45,800 --> 00:23:47,730 Jes. 440 00:23:47,730 --> 00:23:48,950 >> Do nun, ni havas niajn etiketon. 441 00:23:48,950 --> 00:23:51,040 Ni centri ĝin. 442 00:23:51,040 --> 00:23:56,410 Kaj Xcode donas ni gvidlinioj por cimbra celoj. 443 00:23:56,410 --> 00:23:59,510 444 00:23:59,510 --> 00:24:01,480 Do, nun ni kuras nia kodo denove. 445 00:24:01,480 --> 00:24:08,110 446 00:24:08,110 --> 00:24:08,800 >> Tie ni iru. 447 00:24:08,800 --> 00:24:10,310 Do, ni havas CS50 Koloroj. 448 00:24:10,310 --> 00:24:13,720 449 00:24:13,720 --> 00:24:15,420 Kaj nun, ni metis butono en tie, ĉu ne? 450 00:24:15,420 --> 00:24:17,480 Ĉar ni volas fari ĉi interaktiva. 451 00:24:17,480 --> 00:24:19,410 Do, ni metis butono tie. 452 00:24:19,410 --> 00:24:39,020 Kaj ni vokos tiun butonon "krano tien daŭrigi. "Ni centri ĝin, ankaŭ 453 00:24:39,020 --> 00:24:39,990 Efektive, ĝi estas jam centrita. 454 00:24:39,990 --> 00:24:40,630 Jes. 455 00:24:40,630 --> 00:24:43,130 >> Do, nun ni havas butonon. 456 00:24:43,130 --> 00:24:53,000 Kaj se ni kuros ĉi denove, ni iras havi belan butono tie. 457 00:24:53,000 --> 00:24:56,520 Kaj mi povas alklaki ĝin, sed ne fari ion ajn, ĉar ni ne faris 458 00:24:56,520 --> 00:24:58,500 , frazoj kun la butono ankoraŭ. 459 00:24:58,500 --> 00:25:01,740 >> Do, ni kreos alian vidpunkton, right? 460 00:25:01,740 --> 00:25:04,160 Do, ni diru mi volas tushi ke butonon kaj mi volas 461 00:25:04,160 --> 00:25:05,730 iri al alia paĝo - 462 00:25:05,730 --> 00:25:06,820 alian vidpunkton. 463 00:25:06,820 --> 00:25:14,440 Kion mi faros estas, mi povas krei cele adaptilo, ĉu ne? 464 00:25:14,440 --> 00:25:19,690 Nun mi devos klaki sur mian butonon, kaj tiam, la grava afero estas, ke mi tuj 465 00:25:19,690 --> 00:25:20,910 klaki - aŭ - 466 00:25:20,910 --> 00:25:23,660 jes, gazetaro kontrolon sur mia klavaro. 467 00:25:23,660 --> 00:25:24,880 Kontrolo. 468 00:25:24,880 --> 00:25:27,005 Alklaku sur la butono, kaj poste treni. 469 00:25:27,005 --> 00:25:29,960 470 00:25:29,960 --> 00:25:33,550 >> Do, memoru por teni la kontrolon ŝlosilo. 471 00:25:33,550 --> 00:25:35,160 Ni faru tion denove. 472 00:25:35,160 --> 00:25:40,930 Do, teni kontrolo, klaku, kaj trenu kion vi volas fari. 473 00:25:40,930 --> 00:25:41,520 OK. 474 00:25:41,520 --> 00:25:43,610 >> Kaj nun, mi havas plurajn eblojn tie. 475 00:25:43,610 --> 00:25:47,900 Mi povas aŭ puŝi, aŭ mi povos fari modales, aŭ mi povos fari kutimo. 476 00:25:47,900 --> 00:25:50,900 Puŝo estas nur se vi havas navigado regilo. 477 00:25:50,900 --> 00:25:54,270 Ĝuste nun, nia unua vido regilo estas ne ene de ajna 478 00:25:54,270 --> 00:25:55,610 navigado regilo. 479 00:25:55,610 --> 00:25:59,500 Do, la navigado regilo estas kiu donas al vi la dorson butonon sur 480 00:25:59,500 --> 00:26:03,910 la IOS app kie vi havas, vi scias, ke supron, speco de dika stango - 481 00:26:03,910 --> 00:26:06,480 kie vi povas iri reen, aŭ antaŭen, kaj tiel plu. 482 00:26:06,480 --> 00:26:07,740 Ĝuste nun, mi ne havas tion. 483 00:26:07,740 --> 00:26:11,050 Kaj do, jen kial mi ne povas fari la sakon. 484 00:26:11,050 --> 00:26:12,480 >> Do, mi klakis sur puŝo hazarde, tie ĉi. 485 00:26:12,480 --> 00:26:16,480 Kaj efektive, ni kuras la kodon, kaj ĝi devas frakasi min. 486 00:26:16,480 --> 00:26:19,770 487 00:26:19,770 --> 00:26:22,960 Nur se mi premu la butonon kvankam, do - 488 00:26:22,960 --> 00:26:23,420 dekstra. 489 00:26:23,420 --> 00:26:26,480 Do, tio estas malbona. 490 00:26:26,480 --> 00:26:31,330 >> Kaj, kiel vi povas vidi, ĉi tie, ni havi la erarmesaĝon. 491 00:26:31,330 --> 00:26:35,460 Do, "Push segues nur povas esti uzata kiam fonto regilo estas administrata de la 492 00:26:35,460 --> 00:26:40,700 petskribo de UI navigado regilo. " Do, ĉar tio ne estis interne de 493 00:26:40,700 --> 00:26:44,030 navigado adaptilo, Mi ne povus fari tion. 494 00:26:44,030 --> 00:26:48,782 >> Do, nun, mi reiros al la dosierujo, irante reen al storyboard. 495 00:26:48,782 --> 00:26:51,680 >> Spektantaro: Kio estas la navigado adaptilo, denove? 496 00:26:51,680 --> 00:26:55,260 >> RHED SHI: Do, nun mi montros al vi. 497 00:26:55,260 --> 00:26:56,200 Ni vidu. 498 00:26:56,200 --> 00:27:00,510 Do, mi tuj alklaki ĉi vido adaptilo, kaj tiam mi tuj iros 499 00:27:00,510 --> 00:27:03,920 ĝis produkto - 500 00:27:03,920 --> 00:27:06,240 efektive, neniu, sorry - redaktilo. 501 00:27:06,240 --> 00:27:08,360 Kaj mi tuj iri en - 502 00:27:08,360 --> 00:27:09,350 Fakte, ĉu mi klakas sur ĝin? 503 00:27:09,350 --> 00:27:10,070 N-ro 504 00:27:10,070 --> 00:27:11,080 Tie ni iru. 505 00:27:11,080 --> 00:27:16,270 Mi tuj iros en redaktilo, iru malsupren por enkorpigi en, kaj tiam navigado 506 00:27:16,270 --> 00:27:17,520 regilo. 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 Kaj, mia laborspaca aspektas vere senorda, do ni purigi ĉi supre. 510 00:27:27,750 --> 00:27:29,000 Do, ĉio ĉi estas storyboard. 511 00:27:29,000 --> 00:27:32,510 512 00:27:32,510 --> 00:27:33,760 Kaj en ĉi tiu maniero - 513 00:27:33,760 --> 00:27:37,030 514 00:27:37,030 --> 00:27:38,280 OK, halti - 515 00:27:38,280 --> 00:27:49,320 516 00:27:49,320 --> 00:27:50,860 Mi povas rapide konstrui ion kiel ĉi tio. 517 00:27:50,860 --> 00:27:53,020 Kaj poste, nun mi povas iri returne, vi scias? 518 00:27:53,020 --> 00:27:55,730 >> Sed tio estas speco de enuiga, ĉu ne? 519 00:27:55,730 --> 00:28:03,020 Do, kion mi volas fari estas, mi ne volas fari, tutsimple, vidpunkto 520 00:28:03,020 --> 00:28:03,870 regilo. 521 00:28:03,870 --> 00:28:07,720 Diru Mi vere volis fari tablo view regilo, tiel mi povas meti en 522 00:28:07,720 --> 00:28:12,110 iuj belaj koloroj, sur la tablo. 523 00:28:12,110 --> 00:28:16,210 >> Do, nun ke mi metu en mian tablon vido adaptilo, mi bezonas por konekti ĝin 524 00:28:16,210 --> 00:28:18,560 el tiu ĉi butono por la vidpunkto regilo. 525 00:28:18,560 --> 00:28:21,780 Do mi bezonas fari mia kontrolo, klako, treni afero denove. 526 00:28:21,780 --> 00:28:27,318 Kaj nun mi povas fari puŝo, ĉar mi embed ĝi ene de navigado regilo. 527 00:28:27,318 --> 00:28:32,210 >> Spektantaro: Navigado regilo nur permesas iri de loko al loko? 528 00:28:32,210 --> 00:28:33,540 >> RHED SHI: Jes. 529 00:28:33,540 --> 00:28:38,670 Do, pli teknike, ĝi estas objekto kie - 530 00:28:38,670 --> 00:28:43,150 tiel, interne de la navigado regilo objekto, ĝi 531 00:28:43,150 --> 00:28:44,780 gardas la spuro de tabelo. 532 00:28:44,780 --> 00:28:48,300 Kaj tiu tabelo validas tuta posta rigardi regiloj. 533 00:28:48,300 --> 00:28:51,560 Tial, kiam vi alklakos dorson, ĝi superas la antaŭa paĝo. 534 00:28:51,560 --> 00:28:55,260 Pro la navigado adaptilo objekto aux kodon kiu prizorgas 535 00:28:55,260 --> 00:28:58,890 ĉi objekto, havas tabelo kiu subtenas spuri de tiuj view regiloj, kaj 536 00:28:58,890 --> 00:29:01,870 povas do, sciu, dq la vido adaptilo kaj donu al vi reen la 537 00:29:01,870 --> 00:29:02,750 antaŭa. 538 00:29:02,750 --> 00:29:05,200 >> Do, tio estas teknika afero, sed - 539 00:29:05,200 --> 00:29:07,505 kaj mi montros al vi poste en kodo, se ni havas tempon. 540 00:29:07,505 --> 00:29:10,270 Mi specon de elĉerpiĝas ĝustatempe, sed - 541 00:29:10,270 --> 00:29:15,610 >> Do, kun la tabela rigarda, kion ni povas fari estas - 542 00:29:15,610 --> 00:29:18,440 Ĝi estas kutime aŭtomate metita al Dinamika Prototipo - 543 00:29:18,440 --> 00:29:20,640 ni tuj faros gxin Statikaj Ĉelojn, alie ni tuj 544 00:29:20,640 --> 00:29:22,920 kolizii iuj problemoj. 545 00:29:22,920 --> 00:29:28,470 >> Kaj tiam, ni diru Mi iras havi unu sekcio. 546 00:29:28,470 --> 00:29:31,000 Do, sekcioj estas kiel - 547 00:29:31,000 --> 00:29:35,160 se vi iam vidis la muziko app, kiam vi havas la artistoj, sekcioj farus 548 00:29:35,160 --> 00:29:37,830 esti la A tra Z's - 549 00:29:37,830 --> 00:29:38,780 la literojn - 550 00:29:38,780 --> 00:29:42,600 kaj tiam, vi scias, la individuaj vicoj estus la artisto nomoj. 551 00:29:42,600 --> 00:29:47,460 Kaj do, kio estas malvarma tie, estas ke mi ne povas aliri ĉiom de la objektoj interne 552 00:29:47,460 --> 00:29:50,430 de miaj storyboard tra tiu falmenuo, tro. 553 00:29:50,430 --> 00:29:56,600 >> Do, mi tuj alklaku mia sekcio, kaj mi deziras, vi scias, eble kvin vicoj. 554 00:29:56,600 --> 00:30:00,770 Kaj poste, ene de ĉiu vico, Mi deziras meti etikedon. 555 00:30:00,770 --> 00:30:04,080 556 00:30:04,080 --> 00:30:06,340 Kaj mi tuj vokos ĉi Blua. 557 00:30:06,340 --> 00:30:09,530 558 00:30:09,530 --> 00:30:15,630 Kaj poste, mi volas meti UI vidpunkto, vi scias, eble cxar, kiel, iom skatolo. 559 00:30:15,630 --> 00:30:23,840 560 00:30:23,840 --> 00:30:28,710 >> Por ke mi povu montri homoj antaŭrigardon de la koloro. 561 00:30:28,710 --> 00:30:34,150 Kaj mi reiros al la bieno kaj ŝanĝi tiun koloron al, ho, mi ne faras 562 00:30:34,150 --> 00:30:35,510 scias, tiu ĉi. 563 00:30:35,510 --> 00:30:38,630 564 00:30:38,630 --> 00:30:43,150 >> Kaj tiam, rimarkos ankaŭ, tie, kiam mi havas la akcesoraj, mi povas havi multajn 565 00:30:43,150 --> 00:30:46,160 de la diversaj komplementoj ke vi tipe vidas. 566 00:30:46,160 --> 00:30:55,250 La malkaŝo indikilo, la detaloj, aŭ kontrolu markon, aŭ simple nur detalo. 567 00:30:55,250 --> 00:30:59,080 Do, eble ni povas fari, kiel, a malkaŝo indikilo, ekzemple. 568 00:30:59,080 --> 00:31:03,540 >> Kaj tiam, kial ni ne prenos tiujn, kopii gluu ilin, kaj metis ilin en la 569 00:31:03,540 --> 00:31:06,740 sekvanta tabelo vico. 570 00:31:06,740 --> 00:31:08,115 Do, ni povas nomi ĉi Flavaj. 571 00:31:08,115 --> 00:31:10,620 572 00:31:10,620 --> 00:31:12,155 Kaj mi eble devos etendi ĉi. 573 00:31:12,155 --> 00:31:15,730 574 00:31:15,730 --> 00:31:17,290 Ni faru ĝin flava. 575 00:31:17,290 --> 00:31:20,610 Kaj en ĉi tiu maniero, ni povas kopii algluota nia vojo malsupren. 576 00:31:20,610 --> 00:31:24,910 577 00:31:24,910 --> 00:31:25,370 Kio estis tio? 578 00:31:25,370 --> 00:31:26,620 Purpura. 579 00:31:26,620 --> 00:31:30,020 580 00:31:30,020 --> 00:31:34,740 >> Do, tiuj estas ĉiuj tipaj CS50 kolorojn kiujn vi vidis en klaso - 581 00:31:34,740 --> 00:31:37,160 reale, pardonon - 582 00:31:37,160 --> 00:31:38,410 aŭ sur la paĝaro. 583 00:31:38,410 --> 00:31:49,700 584 00:31:49,700 --> 00:31:51,260 Espereble vi uloj povas vidi kion mi faras tie ĉi. 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 Lasta. 588 00:31:58,490 --> 00:32:02,040 >> Spektantaro: Kiel vi aldonu la vico komence? 589 00:32:02,040 --> 00:32:04,740 >> RHED SHI: Do, la demando estis, kiel ĉu mi aldonu la vico komence? 590 00:32:04,740 --> 00:32:07,500 Mi eniris en tiun tablon sekcio - aŭ tamen mi povas 591 00:32:07,500 --> 00:32:09,200 selektu la tablo sekcio - 592 00:32:09,200 --> 00:32:11,250 kaj tiam, tie, mi ĝisdatigita la nombro de vicoj. 593 00:32:11,250 --> 00:32:19,920 594 00:32:19,920 --> 00:32:22,505 >> Kaj, lasu min esperi ke tiu funkcias. 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 Ni vidu se tio funkcias. 598 00:32:32,870 --> 00:32:34,000 Ho, perfekta, awesome. 599 00:32:34,000 --> 00:32:35,300 OK. 600 00:32:35,300 --> 00:32:40,330 Dum mi estis konstruanta mian demo, iuj aferoj ne estis vicigitaj, do, dankon pro 601 00:32:40,330 --> 00:32:42,510 la aplaŭdon. 602 00:32:42,510 --> 00:32:42,920 >> Jes. 603 00:32:42,920 --> 00:32:44,770 Do, ni vidu. 604 00:32:44,770 --> 00:32:47,550 Ni faros ĉi naux justuloj fari ĉio - aŭ fakte, ni nur 605 00:32:47,550 --> 00:32:51,420 turni ĉiuj tiuj en malkaŝo indikiloj. 606 00:32:51,420 --> 00:32:55,790 Kaj tiam, kion mi volas montri al vi ankaŭ, Estis, kiel mi povas preni ĉiun el tiuj 607 00:32:55,790 --> 00:32:59,230 tablo vicoj kaj havi ilin interagas - 608 00:32:59,230 --> 00:33:00,150 io. 609 00:33:00,150 --> 00:33:01,400 N-ro 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 Ankaŭ, mi volas montri al vi - 613 00:33:07,230 --> 00:33:13,080 ĉi tie, mi povas meti la titolo de mia navigado adaptilo, right? 614 00:33:13,080 --> 00:33:17,090 Do efektive, vi rimarkos, ke kiam mi enigita ĉi vido regilo interne 615 00:33:17,090 --> 00:33:22,010 de la navigado adaptilo, ni vidas ĉi navigado trinkejo je la pinto de nia 616 00:33:22,010 --> 00:33:25,340 storyboard reprezento el vidpunkto regilo. 617 00:33:25,340 --> 00:33:29,270 Kaj do, tio donas al ni, kiel, vida, ia, gvidi nian videbla ekrano. 618 00:33:29,270 --> 00:33:34,360 Tio estas evidente tuj esti la navigado trinkejo. 619 00:33:34,360 --> 00:33:40,950 >> Kaj kion mi volas fari rapide, Nun, estas metita en alia - 620 00:33:40,950 --> 00:33:45,880 tial cxi tiu tablo view regilo mi faris per prenante unu el tiuj kaj trenis lin 621 00:33:45,880 --> 00:33:49,800 ĉi tie, kaj tio estas kio permesis al mi rapide, vere, kreu tabelon vido 622 00:33:49,800 --> 00:33:50,850 regilo. 623 00:33:50,850 --> 00:33:54,100 Se ni ja havas la tempon kvankam, vi vidi ke, programmatically, ĝi estas 624 00:33:54,100 --> 00:33:57,660 iomete pli malfacila por krei tabelon vidpunkto adaptilo, ĉar tie 625 00:33:57,660 --> 00:34:02,520 Estas kelkaj metodoj, kiuj estas bezonata por vi, ia, skribi 626 00:34:02,520 --> 00:34:07,130 en ordo por la tablo vido adaptilo por esti montrata korekte. 627 00:34:07,130 --> 00:34:15,340 >> Tamen, mi nur volas montri al vi, nun, ekzemplo de kie, se mi prenos ĉi, 628 00:34:15,340 --> 00:34:15,920 ekzemple - 629 00:34:15,920 --> 00:34:18,290 Mi jam metis en alia vidpunkto regilo. 630 00:34:18,290 --> 00:34:27,320 Kaj nun diru mi volas kontroli Alt mia unua blua 631 00:34:27,320 --> 00:34:28,980 tablo vicon tie. 632 00:34:28,980 --> 00:34:31,070 Kaj mi volas nomi tiun Blua. 633 00:34:31,070 --> 00:34:32,570 Kaj tiam - 634 00:34:32,570 --> 00:34:34,159 ni vidu. 635 00:34:34,159 --> 00:34:41,050 Mi estas ĉe la vido nun, kaj mi povas ŝanĝi La fono al la bluo. 636 00:34:41,050 --> 00:34:45,945 >> Kaj do, avizo, ĉi tie, ĉi falmenuo menuo ankaŭ donas vin hierarkio de ĉiuj 637 00:34:45,945 --> 00:34:47,040 de tiuj celoj. 638 00:34:47,040 --> 00:34:50,530 Do grava afero por noti, ĉi tie, estas, ke ĉiuj tiuj aferoj, tie - 639 00:34:50,530 --> 00:34:54,330 tiun tablon view adaptilo, la tablo vido, tablo view sekcio, tablo vido 640 00:34:54,330 --> 00:34:57,169 ĉelo - ĉiuj el tiuj estas celoj, en kodo. 641 00:34:57,169 --> 00:35:03,752 Do, vi scias, etiketo nun estas sub La enhavo vido, kaj tiel plu. 642 00:35:03,752 --> 00:35:05,020 Do pluen kaj tiel plu. 643 00:35:05,020 --> 00:35:08,765 >> Do, se ni kuras tiu kodo, ni devus vidi ion - 644 00:35:08,765 --> 00:35:15,816 645 00:35:15,816 --> 00:35:17,870 ni vidu, se tio - jes. 646 00:35:17,870 --> 00:35:18,670 Do, tie ni iru. 647 00:35:18,670 --> 00:35:22,120 Sed, se ni ne faros tion, neniu de tiuj aliaj aferoj funkcias. 648 00:35:22,120 --> 00:35:22,500 Ĝuste? 649 00:35:22,500 --> 00:35:23,800 Do nur ĉi tiu funkcias. 650 00:35:23,800 --> 00:35:29,100 Kaj, por la bono de la tempo: Mi ne volas iru en, sciu, metante 651 00:35:29,100 --> 00:35:29,770 malsupren la aliaj aĵoj. 652 00:35:29,770 --> 00:35:32,020 Kaj tio estas la fino de, ia, storyboard - 653 00:35:32,020 --> 00:35:33,400 kion mi volis montri vin pro storyboard. 654 00:35:33,400 --> 00:35:36,330 655 00:35:36,330 --> 00:35:43,490 >> Kaj, mi ja havas laborita ekster ekzemplo, Fakte, ĝuste ĉi tie. 656 00:35:43,490 --> 00:35:48,090 Do, ĉi tiu estas la storyboard ke mi faris antaŭe. 657 00:35:48,090 --> 00:35:52,740 Do, kiel vi povas vidi, tio estis miaj navigado regilo. 658 00:35:52,740 --> 00:35:57,040 Tiam mi havis mian unuan vidon adaptilo, tiam mi havis mian tablon view adaptilo, 659 00:35:57,040 --> 00:35:58,980 kaj tiam mi havis ĉiuj el tiuj - 660 00:35:58,980 --> 00:36:01,180 tiel antaŭe, mi estis faranta io tre malsama. 661 00:36:01,180 --> 00:36:04,450 Do, pardonu tiujn aferojn. 662 00:36:04,450 --> 00:36:07,930 Mi verŝajne purigi ĝin ĝis poste antaŭ Mi sendas ĝin al produktado. 663 00:36:07,930 --> 00:36:12,800 >> Sed, se ni kuros ĉi, ni vidos ke ĉiuj el la ebloj estas 664 00:36:12,800 --> 00:36:14,050 disponebla al ni. 665 00:36:14,050 --> 00:36:18,540 666 00:36:18,540 --> 00:36:21,320 Se mi ne faras la fonoj tiuj koloroj. 667 00:36:21,320 --> 00:36:26,510 Do, bela simpla apliko. 668 00:36:26,510 --> 00:36:28,340 >> Nun, ni provu pritrakti ĉi programmatically. 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 Do, por fari tion, ni simple irante komenci novan Xcode projekto. 672 00:36:37,570 --> 00:36:41,920 Ni faros gxin malplena apliko nun, ĉar ni ne volas havi la 673 00:36:41,920 --> 00:36:42,380 storyboard. 674 00:36:42,380 --> 00:36:46,590 Do, mi simple restrikti min ne uzi iun el la storyboard, kaj 675 00:36:46,590 --> 00:36:49,170 malplena apliko ne volas doni al mi storyboard. 676 00:36:49,170 --> 00:36:52,256 Ĉi tio estas nur por malhelpi min ne trompas. 677 00:36:52,256 --> 00:36:54,428 Ni vidu. 678 00:36:54,428 --> 00:36:55,360 Atendu. 679 00:36:55,360 --> 00:36:55,960 Ĉu mi - 680 00:36:55,960 --> 00:36:56,448 jes. 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 >> Ĝuste. 684 00:37:09,180 --> 00:37:16,790 Do, cxi tie, ni restas kun nenio alia ol kodo. 685 00:37:16,790 --> 00:37:19,460 Do, lasu min movi tiun fenestron iomete pli. 686 00:37:19,460 --> 00:37:22,020 687 00:37:22,020 --> 00:37:22,260 Ĝuste. 688 00:37:22,260 --> 00:37:28,160 Kiel vi povas vidi ĉi tie, la nuraj dosieroj ni donita estas AppDelegate.h kaj skalara 689 00:37:28,160 --> 00:37:30,500 m, kaj ni ne havas storyboard plu. 690 00:37:30,500 --> 00:37:39,580 >> Do, se ni kuros ĉi, ni estas ankoraŭ tuj atingi la blanka ekrano, mi dankas Dion. 691 00:37:39,580 --> 00:37:42,280 OK - blanka ekrano, sed nenion alian. 692 00:37:42,280 --> 00:37:45,260 Kaj, jen la grava parto. 693 00:37:45,260 --> 00:37:47,810 Tie estas kie la ago okazas. 694 00:37:47,810 --> 00:37:51,410 En la antaŭaj versioj, ekzistas kutime neniu kodo tie, sed la 695 00:37:51,410 --> 00:37:55,600 storyboard esence proponas La kodo por tiu parto. 696 00:37:55,600 --> 00:37:57,470 Mi ne eniros en detalojn pri kiel. 697 00:37:57,470 --> 00:38:02,890 >> Kaj kion ni volas fari nun estas, ni volas iri tie ĉi, kaj tio iom spaco 698 00:38:02,890 --> 00:38:05,050 startas krei nian app denove. 699 00:38:05,050 --> 00:38:06,092 Do - 700 00:38:06,092 --> 00:38:06,318 jes? 701 00:38:06,318 --> 00:38:07,450 >> Spektantaro: Zoom? 702 00:38:07,450 --> 00:38:07,770 >> RHED SHI: Zoom. 703 00:38:07,770 --> 00:38:09,020 Yeah, sure. 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 Mi povas tajpi, do tiu ne devus afero tro multe. 707 00:38:17,380 --> 00:38:17,940 OK. 708 00:38:17,940 --> 00:38:22,720 >> Do, unue, rememoru ni volis krei navigan adaptilo, ĉu ne? 709 00:38:22,720 --> 00:38:27,090 Kaj same, kiel vi povas vidi ĉi tie, Xcode faras vere granda laboro de 710 00:38:27,090 --> 00:38:28,070 mem-kompletigo. 711 00:38:28,070 --> 00:38:31,650 Do, kiel vi rimarkos, la nomojn de ĉio estas multe pli longa ol 712 00:38:31,650 --> 00:38:33,910 kutima, sed Xcode plenigas ĝin por vi. 713 00:38:33,910 --> 00:38:35,710 Do mi povas simple premi Eniru. 714 00:38:35,710 --> 00:38:40,180 >> Do, mi volas krei UI navigado regilo montrilo, kaj mi povas nomi ŝin 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 Nu, kion mi faru nun? 718 00:38:44,470 --> 00:38:49,510 Post ĉi egalsigno, mi bezonas, unue, krei ĝin interne de memoro. 719 00:38:49,510 --> 00:38:53,790 Do, mi tuj faros NavigationController alloc - 720 00:38:53,790 --> 00:38:56,640 do, tiu estas simila al malloc, ke vi uloj uzata en C - 721 00:38:56,640 --> 00:38:58,400 kaj tiam, mi tuj init ĝin. 722 00:38:58,400 --> 00:39:03,670 >> Do, ĝi estas vere gravaj, ke iu objekto, kiun vi kreas, ke vi volas 723 00:39:03,670 --> 00:39:04,940 alloc kaj init ĝin. 724 00:39:04,940 --> 00:39:08,600 Tio okazas por krei ĝin kaj instantialize gxin interne de la memoro, kaj 725 00:39:08,600 --> 00:39:10,480 nun vi povas uzi ĝin. 726 00:39:10,480 --> 00:39:10,780 Enorde? 727 00:39:10,780 --> 00:39:14,360 Se vi ne faras tion, vian celon faras ne ekzistas, kaj vi kuros en faskon 728 00:39:14,360 --> 00:39:17,290 de problemoj. 729 00:39:17,290 --> 00:39:20,250 >> Kaj poste, mi volas krei cele adaptilo, ĉu ne? 730 00:39:20,250 --> 00:39:25,580 Do, mi volas krei UIViewController stelo - 731 00:39:25,580 --> 00:39:29,620 tiel, ĉio estas montrilo en Objective-C, kaj Mi faros 732 00:39:29,620 --> 00:39:31,600 io simila, tie - 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 >> Kaj tiam kion mi tuj faros estas, mi estas tuj - do, memoru, kiam ni faris 737 00:39:43,450 --> 00:39:45,360 la embed en navigado regilo? 738 00:39:45,360 --> 00:39:46,920 Jen kiel vi faru ĝin en kodo. 739 00:39:46,920 --> 00:39:54,550 Vi faros navigationController 740 00:39:54,550 --> 00:39:55,780 pushViewController - 741 00:39:55,780 --> 00:39:57,636 >> Spektantaro: [inaudibles]. 742 00:39:57,636 --> 00:39:59,030 Ĉu ĉi tio okazos pri ni, aŭ -? 743 00:39:59,030 --> 00:40:00,080 >> RHED SHI: Ho, jes. 744 00:40:00,080 --> 00:40:00,550 N-ro 745 00:40:00,550 --> 00:40:02,740 Ĝi ŝatas al mi bona. 746 00:40:02,740 --> 00:40:04,670 Ne, ĝi devos labori por vi, ankaŭ. 747 00:40:04,670 --> 00:40:06,700 Do, tiuj estas ĉiuj manieroj. 748 00:40:06,700 --> 00:40:10,400 Do pushViewController estas metodo, kaj ankaŭ, pli specife, ĝi estas 749 00:40:10,400 --> 00:40:13,590 Ekzemple metodo de la UI navigado regilo. 750 00:40:13,590 --> 00:40:20,030 Ĉar mi devis krei mian UI navigado regilo stelo, kaj tiam mi 751 00:40:20,030 --> 00:40:24,510 povas nomi ĉi pushViewController sur mia specifan kazon de UI navigado 752 00:40:24,510 --> 00:40:25,010 regilo. 753 00:40:25,010 --> 00:40:29,490 >> Spektantaro: Ĉu ni havas por fari la ĝustan vorto, aux ne gxi jam ekzistas por tio? 754 00:40:29,490 --> 00:40:31,380 >> RHED SHI: Jes, ĉar ĝi estas metodo. 755 00:40:31,380 --> 00:40:32,200 Estas kiel funkcio. 756 00:40:32,200 --> 00:40:33,330 Estas kiel printf. 757 00:40:33,330 --> 00:40:34,390 Estas kiel scanf. 758 00:40:34,390 --> 00:40:36,250 Estas kiel strcompare. 759 00:40:36,250 --> 00:40:40,310 Krom tio scias kion vi povus deziri tajpi, kaj rimarki ke ĝi estos ĉiam 760 00:40:40,310 --> 00:40:42,740 veni supren kun aĵoj, kiuj estas jure permesitaj por vi. 761 00:40:42,740 --> 00:40:47,620 Do, se nenio aperas ĉi tie, tiam io estas malĝusta. 762 00:40:47,620 --> 00:40:50,550 >> Do, pushViewController. 763 00:40:50,550 --> 00:40:52,580 Do, nun, mi volas puŝi mia nove kreita 764 00:40:52,580 --> 00:40:56,850 UIViewController, kaj tiam, vigla - 765 00:40:56,850 --> 00:40:57,470 eble ne. 766 00:40:57,470 --> 00:41:00,110 Ĉar ĉi tiu tuj estos la unua vido regilo. 767 00:41:00,110 --> 00:41:03,210 Mi volas diri, eĉ se mi faras viglan, eble tio ke ĝi ne aperos, ĉar 768 00:41:03,210 --> 00:41:05,050 ĝi estas la unua ekrano. 769 00:41:05,050 --> 00:41:06,540 >> Kaj memoru la krampoj. 770 00:41:06,540 --> 00:41:08,850 Do memoru, kiamaniere ni uzis la krampoj? 771 00:41:08,850 --> 00:41:11,870 Kaj ene de la krampoj, la objekto alvokas metodo - 772 00:41:11,870 --> 00:41:15,910 tial nia celo estas la navigado adaptilo, kaj la metodo estas puŝo 773 00:41:15,910 --> 00:41:17,210 vidpunkto regilo vigla. 774 00:41:17,210 --> 00:41:21,920 Kaj vidi kiel ŝi prenas en du argumentoj, kaj ili estas apartigitaj per la, ia, 775 00:41:21,920 --> 00:41:24,390 vortojn, kaj dupunkto. 776 00:41:24,390 --> 00:41:28,300 Do, Objective-C provas fari belan kaj facile por vi legis laŭte - 777 00:41:28,300 --> 00:41:33,020 via kodo - kaj havas ĝin semi, ia, sencon. 778 00:41:33,020 --> 00:41:37,150 >> Tamen, farante nur tiu ne estas sufiĉa. 779 00:41:37,150 --> 00:41:39,780 Lasu min malzomi nun. 780 00:41:39,780 --> 00:41:44,210 Faranta nur tio ne sufiĉas por ricevi kion ni akiris al antaŭe. 781 00:41:44,210 --> 00:41:48,580 Do jen, vi rimarkos ke ekzistas fakte ne tuj estos omnaspeca 782 00:41:48,580 --> 00:41:50,190 bari, ĉi tie, ĉu ne? 783 00:41:50,190 --> 00:41:54,680 Mankas navigado stango, kiu signifas ke ni ankoraŭ ne alvenis ŝin. 784 00:41:54,680 --> 00:41:58,850 >> Kaj ni povas provi tion diveni, ankaŭ, por, eble, ŝanĝante la fono de 785 00:41:58,850 --> 00:42:00,460 ViewController, right? 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 Do, vidi kiel ViewController ne havis fona koloro, kvankam mi 790 00:42:07,690 --> 00:42:08,780 volis konsenti li? 791 00:42:08,780 --> 00:42:14,080 Kaj tio estas pro ViewController estas ujo por la vido. 792 00:42:14,080 --> 00:42:19,490 Do, ĝi havas vidpunkton posedaĵo, kiun tiam havas fonan koloron. 793 00:42:19,490 --> 00:42:25,510 >> Kaj, mi povas agordi gxin, ia tede, nomante la koloro 794 00:42:25,510 --> 00:42:28,130 sur la UIColor objekto. 795 00:42:28,130 --> 00:42:33,210 Do, avizo tie, redColor estas metodo. 796 00:42:33,210 --> 00:42:36,750 Ĝi estas klaso metodo de UIcolor. 797 00:42:36,750 --> 00:42:40,820 Ĉar mi ne devas krei efektiva okazo, kiam UIColor en ordon 798 00:42:40,820 --> 00:42:42,020 nomi la metodon en ĝi. 799 00:42:42,020 --> 00:42:45,050 Mi nur, simple, nomis ĝin sur la tipo-simila nomo. 800 00:42:45,050 --> 00:42:49,620 Mi, kiel, nomis ĝin je int, se int havis, kiel, metodo por gxi, ekzemple. 801 00:42:49,620 --> 00:42:52,380 >> Kaj do, se ni kuras tiu kodo, ni rimarki, ke la fono estas 802 00:42:52,380 --> 00:42:53,540 efektive ne ruĝa. 803 00:42:53,540 --> 00:42:54,790 Ĝi estas ankoraŭ blankaj. 804 00:42:54,790 --> 00:42:57,720 805 00:42:57,720 --> 00:43:04,550 Kaj kiel ni povas preni ĉirkaŭ ĉi tio estas, Rimarku kiel ekzistas la self.window. 806 00:43:04,550 --> 00:43:08,260 Tio estas, kiel, la finfina ujo por via kandidatiĝo. 807 00:43:08,260 --> 00:43:11,630 Ĝi estas la finfina afero kiu enhavas ĉiu sur la ekrano, por 808 00:43:11,630 --> 00:43:13,650 iPhone aŭ iPad apliko. 809 00:43:13,650 --> 00:43:20,970 >> Kaj, oportune, self.window havas tiun econ nomata 810 00:43:20,970 --> 00:43:22,650 rootViewController. 811 00:43:22,650 --> 00:43:26,480 Kaj tiu tuj estos la montrilon al la tre unua vido regilo interne 812 00:43:26,480 --> 00:43:27,270 de via app. 813 00:43:27,270 --> 00:43:32,000 Do, kion ni volas fari ĉi tie, nun, estas fiksi, ke egalas al niaj navigado 814 00:43:32,000 --> 00:43:32,710 regilo. 815 00:43:32,710 --> 00:43:33,760 Ĝuste? 816 00:43:33,760 --> 00:43:37,490 Ĉar, teknike, navigado regilo estas nia unua vido 817 00:43:37,490 --> 00:43:38,770 regilo. 818 00:43:38,770 --> 00:43:46,160 Ĝi gardas spuro de tabelo de aliaj vido regiloj, kaj ni puŝis ĉi 819 00:43:46,160 --> 00:43:49,810 vidpunkto regilo en tiun tabelo en la navigado regilo. 820 00:43:49,810 --> 00:43:52,640 >> Do, vi ne volas fari ĉi tion. 821 00:43:52,640 --> 00:43:54,225 Tio ne vere helpos al vi. 822 00:43:54,225 --> 00:43:58,040 Vi volas fari tion, se vi volas fari navigan adaptilo, kiu plej 823 00:43:58,040 --> 00:44:01,100 de vi probable havos ĉar vi volas al, speco de, havas ian, 824 00:44:01,100 --> 00:44:04,840 kiel, menuo reiri al aux iun hejmpaĝo reiri al, anstataŭ 825 00:44:04,840 --> 00:44:05,470 malplena ekrano. 826 00:44:05,470 --> 00:44:05,920 Jes? 827 00:44:05,920 --> 00:44:11,460 >> Spektantaro: Ĉu estas malkomforta por vi zomi en la - 828 00:44:11,460 --> 00:44:12,710 >> RHED SHI: Jes. 829 00:44:12,710 --> 00:44:15,310 830 00:44:15,310 --> 00:44:15,720 Do, jes. 831 00:44:15,720 --> 00:44:22,370 Tiu estas la kodo, kaj jam ni testi gxin. 832 00:44:22,370 --> 00:44:27,920 >> Do, tie ni iru. 833 00:44:27,920 --> 00:44:29,170 Magio. 834 00:44:29,170 --> 00:44:30,960 835 00:44:30,960 --> 00:44:32,690 Do, en ordo. 836 00:44:32,690 --> 00:44:34,420 Dankon. 837 00:44:34,420 --> 00:44:35,000 OK. 838 00:44:35,000 --> 00:44:38,690 Do nun, kion ni volas fari, estas - tiel, ni ia limigita, ĉi tie, ĉu ne? 839 00:44:38,690 --> 00:44:45,130 Ni povus potenciale skribi ĉiun ene de ĉi tiu funkcio. 840 00:44:45,130 --> 00:44:48,470 Sed, tio ne estas kiel IOS evoluo kutime funkcias. 841 00:44:48,470 --> 00:44:53,030 >> Do, kion ni faros estas, ni estas tuj krei novajn dosierojn. 842 00:44:53,030 --> 00:44:57,110 Sed, pli specife, ni iras al krei alian Objective-C klaso, aŭ 843 00:44:57,110 --> 00:44:58,010 alia celo - 844 00:44:58,010 --> 00:45:00,700 klaso kaj celoj estas interŝanĝeblaj tie. 845 00:45:00,700 --> 00:45:06,460 Kaj, jen kiel mi povis, potenciale, krei alian klason de U regiloj. 846 00:45:06,460 --> 00:45:12,030 >> Do, ĝi estas sub-kategorio, kiel vi rimarkos, ĉi tie, ĝi estas sub-kategorio de la 847 00:45:12,030 --> 00:45:15,910 UI view adaptilo, sed mi povas nomas ĝin iu alia nomo tie. 848 00:45:15,910 --> 00:45:19,400 Mi povus voki ĉi CS50, mi povus voki tiu vidpunkto adaptilo, mi povus voki 849 00:45:19,400 --> 00:45:21,640 ĉi bla view adaptilo - 850 00:45:21,640 --> 00:45:22,400 kion ajn mi volas. 851 00:45:22,400 --> 00:45:24,140 Tio estas nur la nomo por la klaso. 852 00:45:24,140 --> 00:45:27,020 Tamen, ĝi tuj estos grava ĉar, esence, kion mi faras 853 00:45:27,020 --> 00:45:29,720 ĉi tie estas, ke mi kreas alia klaso nomo. 854 00:45:29,720 --> 00:45:34,140 Do, ĝi tuj estos, kiel, iom speco de tipo aŭ objekto. 855 00:45:34,140 --> 00:45:35,910 Do, ĝi devus esti iomete ĝenerala. 856 00:45:35,910 --> 00:45:37,225 Oni ne tuj estos tre specifa. 857 00:45:37,225 --> 00:45:40,410 858 00:45:40,410 --> 00:45:44,480 >> Kaj ankaŭ, mi volas atentigi el tiuj du ebloj. 859 00:45:44,480 --> 00:45:48,430 Ĉar ni faras ĉiu ene de kodo, foje ĝi estas multe pli facile 860 00:45:48,430 --> 00:45:53,540 venigi al interfacon dosiero, tia ke Mi povas laŭvorte treni kaj faligi, kiel 861 00:45:53,540 --> 00:45:54,960 ni faris antaŭe kun storyboard - 862 00:45:54,960 --> 00:45:57,810 vi scias, etiketo, nek butono, aŭ kio ajn alia. 863 00:45:57,810 --> 00:46:01,950 Kaj do, xibs estas dosierojn kiujn vi permesas do tio, kaj vi devas hoko ĝin 864 00:46:01,950 --> 00:46:04,310 tiu vidpunkto regilo dosiero. 865 00:46:04,310 --> 00:46:06,540 >> Do, mi tuj intence Ne kontrolu ĉi. 866 00:46:06,540 --> 00:46:12,510 Kutime mi devus kontroli tion, kaj se mi nur faris tion por iPhone aŭ iPad, mi 867 00:46:12,510 --> 00:46:16,340 devus kontroli tion kaj simple havas unu cxar vi scias, la iPhone aŭ la iPad. 868 00:46:16,340 --> 00:46:19,750 Sed ĉar mi faras universala, mi tuj krei du el tiuj poste. 869 00:46:19,750 --> 00:46:22,220 Do, mi tuj intence malmarku ĉi. 870 00:46:22,220 --> 00:46:23,940 >> Tio estas ankaŭ vere grave. 871 00:46:23,940 --> 00:46:27,490 Multaj fojoj, mi havis cimojn kie tio ne kontrolis. 872 00:46:27,490 --> 00:46:31,930 Kaj do, evidente, tiu dosiero ne estas, speco de, kiel, inkludis aŭ importitaj 873 00:46:31,930 --> 00:46:33,740 ene de tiu testo dosierujo. 874 00:46:33,740 --> 00:46:38,180 Kaj do, mia kodo havas absolute nenian ideon de la ekzisto de ĉi tiu dosiero, kaj 875 00:46:38,180 --> 00:46:41,080 kiu kaŭzas multan doloron kaj horoj de debugging. 876 00:46:41,080 --> 00:46:44,360 Sed, ĝuste certigi ĉi estas markita, tiel ke, vi scias, la celo de ĉi tiu 877 00:46:44,360 --> 00:46:47,510 dosiero estas por tiu aplikaĵo. 878 00:46:47,510 --> 00:46:48,310 >> OK. 879 00:46:48,310 --> 00:46:51,680 Do, nun ni jam kreis du novajn dosierojn. 880 00:46:51,680 --> 00:46:54,050 Kaj tiujn dosierojn aspektas bela malplena. 881 00:46:54,050 --> 00:46:59,550 Kaj, fakte, ni ankaŭ daŭrigi pri kreante la xib dosierojn. 882 00:46:59,550 --> 00:47:03,690 Do, antaŭe, mi estis en la Cocoa Touch falmenuo. 883 00:47:03,690 --> 00:47:06,880 Nu, mi tuj iros en la Uzanto Interfaco takto, kaj kiel vi povas vidi, mi 884 00:47:06,880 --> 00:47:08,120 povas krei storyboard. 885 00:47:08,120 --> 00:47:11,710 >> Do, eĉ mi komencis kun malplena apliko, mi povas ankoraŭ uzi 886 00:47:11,710 --> 00:47:12,340 storyboard. 887 00:47:12,340 --> 00:47:15,480 Kvankam, ĝi ricevas malfacila en terminoj el kiom vi deziras konekti 888 00:47:15,480 --> 00:47:16,820 ke via kodo. 889 00:47:16,820 --> 00:47:18,230 Do, mi ne iros tien. 890 00:47:18,230 --> 00:47:22,160 >> Sed, kion ni volas fari nun estas krei vido. 891 00:47:22,160 --> 00:47:25,720 Kaj vi povas elekti por iPhone aŭ iPad. 892 00:47:25,720 --> 00:47:30,180 Kaj tipe, por signifi la diferenco - se vi faras 893 00:47:30,180 --> 00:47:31,950 universala apliko - 894 00:47:31,950 --> 00:47:35,980 vi, aux enmetu substreko iPhone, aux vi povas fari Twiddly. 895 00:47:35,980 --> 00:47:36,980 Ĝi vere ne gravas. 896 00:47:36,980 --> 00:47:40,890 Ĝi estas simple por vi diferenci kiu vidpunkto estas por kiu mekanismo. 897 00:47:40,890 --> 00:47:43,470 898 00:47:43,470 --> 00:47:44,430 >> Kaj do, nun aspektas. 899 00:47:44,430 --> 00:47:47,550 Mi havas ekrano ke mi povas labori. 900 00:47:47,550 --> 00:47:53,530 Kaj do, ekzemple, mi povas meti etikedon en ĉi tie, vi scias, kaj mi povas ankaŭ meti 901 00:47:53,530 --> 00:47:54,820 alia butono tie. 902 00:47:54,820 --> 00:47:58,730 Mi ne tedos ŝanĝanta la valoroj tie. 903 00:47:58,730 --> 00:48:09,050 >> Sed, kio estas grava tie estas ke la dosiero estas posedanto - 904 00:48:09,050 --> 00:48:13,660 do, mi estas ene de la iPhone vido, iPhone xib dosiero. 905 00:48:13,660 --> 00:48:18,050 Kaj malsupre en ĉi navigado areo aŭ falmenuo, mi volas iri al la 906 00:48:18,050 --> 00:48:19,090 dosiero mastro. 907 00:48:19,090 --> 00:48:22,630 Kaj jen estas la vere grava paŝo tie. 908 00:48:22,630 --> 00:48:27,780 Mi volas fari la klaso vido regilo, tiel ke ĉi xib dosiero 909 00:48:27,780 --> 00:48:30,030 tuj estos asociitaj kun miaopinie regilo. 910 00:48:30,030 --> 00:48:33,590 911 00:48:33,590 --> 00:48:39,360 Kaj ion, kion mi faru interne de mia vidpunkto regilo programmatically estas 912 00:48:39,360 --> 00:48:42,800 tuj estos reflektitaj en ĉi tie. 913 00:48:42,800 --> 00:48:46,270 >> Do, tamen rimarkos, ke - 914 00:48:46,270 --> 00:48:55,995 fakte, ni faru ĉi vido fono blua, ekzemple. 915 00:48:55,995 --> 00:49:00,280 916 00:49:00,280 --> 00:49:01,530 Aŭ verda. 917 00:49:01,530 --> 00:49:03,870 918 00:49:03,870 --> 00:49:07,950 Kaj tiam, do se vi rimarkos, reen en tiun kodon, tio estas kie ni alvenis al nia 919 00:49:07,950 --> 00:49:09,200 navigado regilo. 920 00:49:09,200 --> 00:49:12,650 921 00:49:12,650 --> 00:49:18,310 >> Eĉ kvankam ni faris tiun paŝon, ĝi estas ankoraŭ tuj esti ruĝaj, ne verda. 922 00:49:18,310 --> 00:49:20,350 Kaj tie estas tial. 923 00:49:20,350 --> 00:49:28,090 Ĝi estas pro tio, kiam ni inited nia opinio adaptilo, tie - 924 00:49:28,090 --> 00:49:30,010 bedaŭras, ĝi estas iom freneza - 925 00:49:30,010 --> 00:49:34,520 kiam ni inited nian vidon regilo ĉi tie, ni inited ĝin de la ĝenerala tipo 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 Do ni eĉ ne fari kun tiu klaso. 929 00:49:40,560 --> 00:49:42,030 >> Do memoru, tiu estas kiel klaso nun. 930 00:49:42,030 --> 00:49:47,160 Ĝi povas esti penso de kiel tipo, simple kiel UIViewController estas tipo. 931 00:49:47,160 --> 00:49:51,080 Kaj por uzi tiun, kion Ni bezonas fari estas importi ĝin - 932 00:49:51,080 --> 00:49:52,520 importado ViewController - 933 00:49:52,520 --> 00:49:55,750 kaj, kiel vi povas vidi, ĝi autofills ĝin por mi. 934 00:49:55,750 --> 00:49:56,570 Do, ViewController - 935 00:49:56,570 --> 00:50:02,070 kaj nun, tie ĉi, mi povas ŝanĝi ĉi UIViewController al ViewController. 936 00:50:02,070 --> 00:50:05,050 Kaj nun, jen, mi povas ŝanĝi tio al ViewController. 937 00:50:05,050 --> 00:50:07,790 938 00:50:07,790 --> 00:50:09,250 >> Ni kuros ĉi denove. 939 00:50:09,250 --> 00:50:16,970 940 00:50:16,970 --> 00:50:19,690 Ĝi estas ankoraŭ red. 941 00:50:19,690 --> 00:50:23,370 Kaj tial ĝi estas ankoraŭ ruĝan estas ĉar - 942 00:50:23,370 --> 00:50:26,230 woah, kio okazis tie? 943 00:50:26,230 --> 00:50:31,500 Ni volis asocii ĉi xib dosieron kun la vido regilo. 944 00:50:31,500 --> 00:50:37,540 Tamen, por povi reale faras ke ni devas iri en ĉi tio. 945 00:50:37,540 --> 00:50:42,980 Kaj kiam ni faros la init, ni volas fari initWithNibName, kaj poste ni volas 946 00:50:42,980 --> 00:50:48,910 fari la ĉe ŝnuro View_iPhone, ekzemple. 947 00:50:48,910 --> 00:50:51,700 Vi povas ignori la pakaĵo tie. 948 00:50:51,700 --> 00:50:54,965 >> Kaj tio estas iri permesi ni, fakte - 949 00:50:54,965 --> 00:51:00,620 950 00:51:00,620 --> 00:51:02,160 uh oh, estas problemo. 951 00:51:02,160 --> 00:51:09,300 952 00:51:09,300 --> 00:51:09,980 Ĝuste. 953 00:51:09,980 --> 00:51:17,670 >> Kaj do, tie estas problemo pro tio, en nia opinio xib dosiero, ni havas etiketon kaj 954 00:51:17,670 --> 00:51:18,720 ni havos butonon. 955 00:51:18,720 --> 00:51:23,660 Tamen, eĉ se ni konektita tiuj du, tie estas nenio interne de 956 00:51:23,660 --> 00:51:27,440 ViewController.h aŭ ViewController.m kiuj reflektas tiujn 957 00:51:27,440 --> 00:51:29,160 butonoj aŭ tiuj etiketoj. 958 00:51:29,160 --> 00:51:32,425 Do, ni bezonas por skribi tiujn en tiom ecoj de la vido regilo. 959 00:51:32,425 --> 00:51:35,290 960 00:51:35,290 --> 00:51:39,490 >> Do, jen kiel vi rakontu propraĵo. 961 00:51:39,490 --> 00:51:43,422 Ĝi portas en, kutime, tiuj du ebloj. 962 00:51:43,422 --> 00:51:48,690 Por la celoj de ni, kaj ĉi seminario, Mi dirus ke, ĝenerale, 963 00:51:48,690 --> 00:51:52,250 plej propraĵoj estas nonatomic kaj reteni. 964 00:51:52,250 --> 00:51:55,420 Vi povas legi per Google serĉado, vi scias, la diferenco inter 965 00:51:55,420 --> 00:51:58,620 nonatomic kaj reteni plu, vi scias, Google aŭ io. 966 00:51:58,620 --> 00:52:01,090 Kaj Mi prenos vin, kiel, Stack Overflow, kie homoj havos 967 00:52:01,090 --> 00:52:03,605 respondojn por la diferencoj inter tiuj. 968 00:52:03,605 --> 00:52:07,000 Sed nuntempe, tio estas kion ni volas esti koncernitaj kun. 969 00:52:07,000 --> 00:52:12,790 >> Kaj ni volas fari UI label, stelo, kaj ni povas nomi ĝin, kion ajn ni volas. 970 00:52:12,790 --> 00:52:15,710 Ni povas nomi tion, vi scias, etiketo. 971 00:52:15,710 --> 00:52:18,270 972 00:52:18,270 --> 00:52:20,110 Kaj, ni devos krei alian unu por la butonon. 973 00:52:20,110 --> 00:52:24,380 974 00:52:24,380 --> 00:52:29,910 Kaj memoru, por inkludi la asteriskon, ĉar ni estas kontraktanta kun montriloj 975 00:52:29,910 --> 00:52:36,740 preskaux cxie interne de Objective-C. 976 00:52:36,740 --> 00:52:42,110 >> Tamen, tio estos ankoraux ne solvos la problemo, kiel vi povas vidi ĉi tie. 977 00:52:42,110 --> 00:52:50,540 Kaj la kialo estas ĉar, krom se ni deziras konekti xib dosieron stampo aŭ 978 00:52:50,540 --> 00:52:55,690 butono por la programo, aŭ la kaplinio kaj efektivigo dosiero, ni volas 979 00:52:55,690 --> 00:52:58,255 aldoni tiun koderon - 980 00:52:58,255 --> 00:53:00,610 elirejo. 981 00:53:00,610 --> 00:53:03,600 Rimarku, ke ĝi estas fundamenta vorto. 982 00:53:03,600 --> 00:53:07,970 >> Kaj, tuj kiam mi finas tajpadon kiuj eliris, ĝi devus havi tiujn 983 00:53:07,970 --> 00:53:09,100 du rondoj, ĉi tie. 984 00:53:09,100 --> 00:53:11,200 Kutime, ili ne plenigis in 985 00:53:11,200 --> 00:53:12,920 Mi ne certas kial ili estas. 986 00:53:12,920 --> 00:53:21,370 Sed kutime, vi devos permane konekti ilin irante al cxi tiu flanko de 987 00:53:21,370 --> 00:53:23,530 la utilecoj areo. 988 00:53:23,530 --> 00:53:28,430 >> Kaj do, ĝuste nun, mi havas mian etikedon elektita, kaj mi volas ŝovi ĉi tiun novan 989 00:53:28,430 --> 00:53:33,910 referenco elirejo al mia dosiero mastro, kaj tiam alklaku Eldonejo. 990 00:53:33,910 --> 00:53:40,230 Do nun, fine, tiu etiketo estas konektita al ĉi etikedo. 991 00:53:40,230 --> 00:53:44,950 Kaj tiu etiketo estas kion ni tuj uzi programmatically ŝanĝi lian 992 00:53:44,950 --> 00:53:49,250 teksto, lia tiparo, ĝia fono koloro, ktp. 993 00:53:49,250 --> 00:53:52,430 >> Do, kial ni ne faru la same por la butonon? 994 00:53:52,430 --> 00:53:54,770 Kaj kiel vi rimarkos, cxar la butono, ĝi estas iom pli komplika. 995 00:53:54,770 --> 00:53:59,060 Ĉar, mi volas diri, ke vi supozas ke gazetaro sur butono, do ĝi havas jam multon 996 00:53:59,060 --> 00:54:02,950 de ebloj por kiel uzantoj povas premi sur la butono. 997 00:54:02,950 --> 00:54:06,570 Kaj tiam ni vidos poste sur tiu ni povas konekti ĉi tion al nia 998 00:54:06,570 --> 00:54:09,140 kodo por fari ĝin funkcii. 999 00:54:09,140 --> 00:54:12,770 >> Do, nuntempe se ni volas konekti ĝin al la efektiva butono 1000 00:54:12,770 --> 00:54:13,570 ene de nia kodo. 1001 00:54:13,570 --> 00:54:19,640 Do ni iru al la nova REFERENCIGO elirejo, kaj tiam fari la butono. 1002 00:54:19,640 --> 00:54:22,068 Nun, ni kuros ĉi denove. 1003 00:54:22,068 --> 00:54:23,040 Uh io. 1004 00:54:23,040 --> 00:54:23,890 OK. 1005 00:54:23,890 --> 00:54:25,140 Mi ne scias kio okazas ĉi tie nun. 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 Nur unu momenton, ĉi tie. 1010 00:54:58,960 --> 00:55:02,490 >> Fakte, kial ni ne prenos rigardi alian ekzemplon en 1011 00:55:02,490 --> 00:55:05,800 La intereso de la tempo. 1012 00:55:05,800 --> 00:55:06,200 OK. 1013 00:55:06,200 --> 00:55:10,610 Do, jen la plej facile preparita Ekzemplo por ViewController. 1014 00:55:10,610 --> 00:55:13,230 1015 00:55:13,230 --> 00:55:17,110 Kiel vi povas vidi ĉi tie, mi inkludis la ecoj por la 1016 00:55:17,110 --> 00:55:18,460 etiketo kaj al la butono. 1017 00:55:18,460 --> 00:55:20,370 Kaj tiam, ĉi koderon tie - 1018 00:55:20,370 --> 00:55:21,830 ĉi IBaction - 1019 00:55:21,830 --> 00:55:27,740 estis ligo al tiu butono tie. 1020 00:55:27,740 --> 00:55:33,940 Do kiel vi povas vidi ĉi tie, Touch Supren Interne estas konektita al la selector 1021 00:55:33,940 --> 00:55:37,390 nomata Buton Premata. 1022 00:55:37,390 --> 00:55:41,700 >> Do, ni povas reale iru tra la movado denove, cxi tie, per prenante Touch Supren 1023 00:55:41,700 --> 00:55:48,750 Ene kaj trenis ĝin al Dosiero la mastro, kaj tiam 1024 00:55:48,750 --> 00:55:51,570 klaki sur Buton Premata. 1025 00:55:51,570 --> 00:55:52,820 Nun, ni kuros nia kodo. 1026 00:55:52,820 --> 00:55:55,710 1027 00:55:55,710 --> 00:56:02,020 Do nun, tiun butonon nun funkcias kaj nin portos al la sekva paĝo. 1028 00:56:02,020 --> 00:56:08,430 >> Kaj, koncerne nian vidon adaptilo, tio estas la koderon kiu prenis 1029 00:56:08,430 --> 00:56:10,000 Zorgi pri la Buton Premata. 1030 00:56:10,000 --> 00:56:14,260 Kaj ĝi estas grave noti tie, ke Mi jam kreis alian tipon de vido 1031 00:56:14,260 --> 00:56:16,330 regilo nomata tablo vidpunkto regilo. 1032 00:56:16,330 --> 00:56:19,900 Do, tio estis simila al dorso en storyboard, kiam mi trenis unu el 1033 00:56:19,900 --> 00:56:23,450 tiuj tablo view regiloj en la storyboard. 1034 00:56:23,450 --> 00:56:24,470 Mi kreas alian 1035 00:56:24,470 --> 00:56:30,000 >> Montrilon al la tablo view adaptilo, alloc kaj init-ing ĝin, kaj tiam fari 1036 00:56:30,000 --> 00:56:34,490 mem dot navigado adaptilo, puŝi ViewController, tiu nova 1037 00:56:34,490 --> 00:56:35,350 viewController. 1038 00:56:35,350 --> 00:56:39,750 Kaj mi starigis la kuraĝigo al jes, ĉar nun interne de mia app, kaj mi 1039 00:56:39,750 --> 00:56:45,670 ĉu vi vere vidas la kuraĝigo irante el la hejmpaĝo de la tabelo 1040 00:56:45,670 --> 00:56:46,920 vidpunkto regilo. 1041 00:56:46,920 --> 00:56:48,830 1042 00:56:48,830 --> 00:56:51,110 >> Spektantaro: Ĉu vi ankoraŭ maltrankviliĝas pri rubo kolekton? 1043 00:56:51,110 --> 00:56:51,840 >> RHED SHI: Kio estas tio? 1044 00:56:51,840 --> 00:56:54,740 N-ro 1045 00:56:54,740 --> 00:56:58,970 Do, la demando estis, cxu vi havas labori kun rubo kolekton? 1046 00:56:58,970 --> 00:57:03,470 Do, Xcode 4 havis kiel ARKO, kiu estas aŭtomata referenco rakontante. 1047 00:57:03,470 --> 00:57:06,120 Kaj do, kutime, kiam oni komencas novan projekto, vi devus kontroli tion, ĉar 1048 00:57:06,120 --> 00:57:09,440 neniu vere volas pritrakti liberigi memoron kaj vazojn. 1049 00:57:09,440 --> 00:57:13,720 Sed mi kredas en Xcode 5, ekzistas eĉ ne ke opcion en la nova projekto. 1050 00:57:13,720 --> 00:57:16,750 Do, ĝi aŭtomate faras tion por vi. 1051 00:57:16,750 --> 00:57:16,920 Jes? 1052 00:57:16,920 --> 00:57:20,970 >> Spektantaro: Cxu vi povas eksporti PDF-en via storyboard? 1053 00:57:20,970 --> 00:57:22,020 >> RHED SHI: Jes, certe. 1054 00:57:22,020 --> 00:57:28,180 Do, ĉiuj ĉi tiuj estos inkluzivita en fonta kodo, do vi uloj povas kontroli 1055 00:57:28,180 --> 00:57:30,730 la efektiva Xcode projekton por ĝi. 1056 00:57:30,730 --> 00:57:31,105 Jes? 1057 00:57:31,105 --> 00:57:35,944 >> Spektantaro: Sed, mi volas diri, kiel, mi povos printi PDF kun mia storyboard? 1058 00:57:35,944 --> 00:57:38,920 Se mi simple volas eksporti la bildojn por montri al iu. 1059 00:57:38,920 --> 00:57:39,160 >> RHED SHI: Oh yeah. 1060 00:57:39,160 --> 00:57:41,980 Mi opinias, eble, vi povas simple preni ekrankopio. 1061 00:57:41,980 --> 00:57:44,350 Jes, kaj sendos ilin al ekrano ŝoto aŭ io. 1062 00:57:44,350 --> 00:57:45,600 Jes. 1063 00:57:45,600 --> 00:57:49,170 1064 00:57:49,170 --> 00:57:50,570 >> Do, ni vidu. 1065 00:57:50,570 --> 00:57:56,470 En la intereso de tempo, mi pensas jen ĉio l povas kovri hodiaŭ. 1066 00:57:56,470 --> 00:57:59,600 Sed mi scias, tio estas, reale, nur apenaŭ tuŝinte la surfaco de IOS 1067 00:57:59,600 --> 00:58:00,370 evoluo. 1068 00:58:00,370 --> 00:58:05,630 Do, bonvolu senti vin libera kontakti min se vi havas iujn demandojn pri IOS 1069 00:58:05,630 --> 00:58:07,000 evoluo. 1070 00:58:07,000 --> 00:58:12,840 Kaj, espereble, mi povos purigi kelkaj el la kodon por la fonto 1071 00:58:12,840 --> 00:58:16,830 kodo dosierojn, tiel ke vi havos iujn vere belaj ekzemploj labori. 1072 00:58:16,830 --> 00:58:21,020 >> Alia ol tio, se vi uloj iras al la CS50 Hackathon, mi povas aŭ 1073 00:58:21,020 --> 00:58:25,730 Ne estos tie, kaj mi povas helpi kun iuj IOS disvolviĝo, ankaŭ. 1074 00:58:25,730 --> 00:58:26,980 Do, dankon multe, knaboj. 1075 00:58:26,980 --> 00:58:31,168