1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [Seminè sou] [yo: Ekri Apps Tankou yon Boss] 2 00:00:02,000 --> 00:00:04,000 [Tommy MacWilliam] [Inivèsite Harvard] 3 00:00:04,000 --> 00:00:08,000 [Sa a se CS50.] [CS50.TV] 4 00:00:08,000 --> 00:00:12,000 >> Tout dwa, tout moun, Byenveni nan yo: Ekri Apps tankou yon Boss. 5 00:00:12,000 --> 00:00:16,000 Sa a seminè ki pral konsantre sou ekri apps pou ifon a 6 00:00:16,000 --> 00:00:19,000 ak nan vire ekri apps pou iPad a, epi pou nou ap fondamantalman ale nan mache nan 7 00:00:19,000 --> 00:00:23,000 yon koup egzanp diferan nan kòman yo fè yon app, yon jwèt senp tankou zòtèy tik TAC, 8 00:00:23,000 --> 00:00:26,000 oswa si w ap plis enterese nan fè yon app tankou kèk kalite nouvèl lektè 9 00:00:26,000 --> 00:00:30,000 oswa yon bagay ki reyaji ak entènèt la mwen pral pale sou ki tankou byen. 10 00:00:30,000 --> 00:00:32,000 Isit la nan ajanda brèf nou an. 11 00:00:32,000 --> 00:00:36,000 >> Apps yo nou jwenn sa ekri nan yon lang yo rele Objektif-C, 12 00:00:36,000 --> 00:00:39,000 ak kidonk sa a se yon ti jan ki sanble ak C, men se pa reyèlman nan tout, 13 00:00:39,000 --> 00:00:41,000 pou nou ap pale yon ti kras sou lang nan tèt li 14 00:00:41,000 --> 00:00:45,000 ak Lè sa a, ki jan yo bati apps ifon lè l sèvi avèk pwogram sa a app rele XCode, 15 00:00:45,000 --> 00:00:48,000 ki si ou pa gen telechaje li ankò santi yo lib yo kòmanse download a kounye a. 16 00:00:48,000 --> 00:00:50,000 Li nan jigokte plizyè. 17 00:00:50,000 --> 00:00:54,000 Li ta dwe gratis sou magazen an App, se konsa ou pral bezwen gen yon Mac 18 00:00:54,000 --> 00:00:57,000 depreferans kouri vèsyon an dènye nan OS X. 19 00:00:57,000 --> 00:00:59,000 Si ou pa, pa gen pwoblèm. 20 00:00:59,000 --> 00:01:02,000 Nou gen Macs nan sant la syans disponib pou ou 21 00:01:02,000 --> 00:01:05,000 ak XCode enstale, epi konsa santi yo lib yo itilize sa yo pou devlopman. 22 00:01:05,000 --> 00:01:07,000 Si ou vle fè yon app men li pa gen yon Mac, pa enkyete. 23 00:01:07,000 --> 00:01:09,000 Genyen anpil resous lakou lekòl la pou sa. 24 00:01:09,000 --> 00:01:15,000 Se konsa, lè sa a nou ap ale nan kouvri 2 pi gwo egzanp sou apps diferan ou ka fè. 25 00:01:15,000 --> 00:01:19,000 Objektif-C se teknikman sa ki rele yon seri super nan C. 26 00:01:19,000 --> 00:01:24,000 Sa vle di ke nenpòt kòd C tou se valab Objektif-C kòd. 27 00:01:24,000 --> 00:01:29,000 Sa vle di ke nou kalite adezif kole sou kèk karakteristik anplis nan C. 28 00:01:29,000 --> 00:01:33,000 Gen kèk nan karakteristik sa yo pa enkli ladan li tout tan ekri malok ankò, di Bondye mèsi, 29 00:01:33,000 --> 00:01:36,000 pa gen okenn gen enkyetid sou sa yo endikasyon estipid ak libere yo ak tout bagay ki 30 00:01:36,000 --> 00:01:40,000 ou te rayi sou C, ak kalite li a nan ale nan C Objektif-. 31 00:01:40,000 --> 00:01:43,000 >> Koulye a, Objektif-C tou te gen yon bibliyotèk estanda pi gwo, 32 00:01:43,000 --> 00:01:47,000 konsa gen nan fonctionnalités yon anpil plis ou resevwa pou andedan gratis nan Objektif C-. 33 00:01:47,000 --> 00:01:50,000 Sonje lè nou te ekri PHP nou remake ke nou te ale soti nan 34 00:01:50,000 --> 00:01:54,000 lang sa a pi piti nan bibliyotèk la jeyan nan tout bagay sa yo fou ou ka fè. 35 00:01:54,000 --> 00:01:56,000 Menm bagay la ki k ap pase nan yo. 36 00:01:56,000 --> 00:01:59,000 Genyen nan objè pou bagay sa yo tankou kalandriye a Boudis, ak anyen vrèman 37 00:01:59,000 --> 00:02:05,000 ou ka posib panse a pwobableman egziste deja nan aplikasyon Objektif-C a. 38 00:02:05,000 --> 00:02:08,000 Pati nan objektif nan Objektif C-la indican yon bagay 39 00:02:08,000 --> 00:02:11,000 rele objè-oryante Programming. 40 00:02:11,000 --> 00:02:14,000 Sa a se kalite yon nouvo konsèp, men nou te aktyèlman sitou te aprann 41 00:02:14,000 --> 00:02:17,000 yon anpil nan sa yo konsèp deja. 42 00:02:17,000 --> 00:02:19,000 Lide a dèyè objè-oryante Programming se ke ou ap ale nan estrikti 43 00:02:19,000 --> 00:02:23,000 yon anpil nan kòd ou otou tout bagay sa yo rele klas yo, 44 00:02:23,000 --> 00:02:26,000 ak klas sa yo se reyèlman fè lwanj strukt. 45 00:02:26,000 --> 00:02:30,000 Andedan yon struct nou fondamantalman di isit la se yon bagay, 46 00:02:30,000 --> 00:02:32,000 ak bagay sa a ka gen manm. 47 00:02:32,000 --> 00:02:35,000 Pou egzanp, yon ne nan yon lis lye te kapab gen lòt bagay 48 00:02:35,000 --> 00:02:38,000 tankou yon valè, yon konsèy ne nan pwochen nan lis la, 49 00:02:38,000 --> 00:02:44,000 ak ansanm ki konsèy ak valè ki konpoze sa a egzanp youn nan yon struct. 50 00:02:44,000 --> 00:02:47,000 Klas gen anpil menm jan eksepte 51 00:02:47,000 --> 00:02:50,000 klas kapab tou gen fonksyon andedan nan yo. 52 00:02:50,000 --> 00:02:54,000 Lè nou deklare yon struct, nou te kapab sèlman di Int n oswa * ne kap vini an. 53 00:02:54,000 --> 00:02:57,000 >> Kounye a ak C Objektif-nou ka aktyèlman mete fonksyon 54 00:02:57,000 --> 00:02:59,000 andedan nan bagay sa yo. 55 00:02:59,000 --> 00:03:03,000 Yon lòt bagay ki klas ka fè se yo ka eritye done ki sòti nan lòt klas. 56 00:03:03,000 --> 00:03:07,000 Pou egzanp, nou pral gade nan yon pakèt moun sou bati nan Objective--C klas yo. 57 00:03:07,000 --> 00:03:11,000 Youn nan yo ta ka klas la ki reprezante gade nan pou yon ekran, 58 00:03:11,000 --> 00:03:14,000 ak sa lè li di mwen vle aplike View pwòp mwen 59 00:03:14,000 --> 00:03:18,000 nou fondamantalman di yon moun sou nan Apple, pwobableman reyèlman bon moun, 60 00:03:18,000 --> 00:03:21,000 te ekri klas sa a pou m ', epi li kenbe bagay sa yo tankou ki montre bouton 61 00:03:21,000 --> 00:03:25,000 oswa rann ekran an, epi nou ta dwe reyèlman frwase 62 00:03:25,000 --> 00:03:28,000 aplike tout sa ki fonctionnalités tèt nou, se pou nou pa senpleman 63 00:03:28,000 --> 00:03:31,000 derivan done nou ka di tout sa ou te fè nan ki klas 64 00:03:31,000 --> 00:03:34,000 Mwen vle tou fè andedan nan klas mwen an, epi Lè sa a, mwen pral fè kèk lòt bagay, 65 00:03:34,000 --> 00:03:37,000 savwa aplike yon app. 66 00:03:37,000 --> 00:03:40,000 Sa a ki sa sa pòsyon tè mo vle di. Nou pral wè yon egzanp plis konkrè. 67 00:03:40,000 --> 00:03:42,000 >> Epi finalman, kle a ak objè-oryante Programming se ke 68 00:03:42,000 --> 00:03:45,000 li mennen nan ANKAPSILASYON done. 69 00:03:45,000 --> 00:03:48,000 Nan kèk nan pwoblèm nou kouche nou te ka gen sa yo gwo, varyab mondyal 70 00:03:48,000 --> 00:03:51,000 ak global tout kote, epi lè sa a jan nou ta kenbe tras nan eta a. 71 00:03:51,000 --> 00:03:55,000 Avèk klas nou kapab kòmanse ankapsule enfòmasyon andedan nan yon objè. 72 00:03:55,000 --> 00:03:58,000 Si nou gen yon sèl ekran sou app nou yo, nou pa reyèlman bezwen gen nenpòt done ki sòti nan 73 00:03:58,000 --> 00:04:01,000 yon lòt ekran an andedan app nou an sa, 74 00:04:01,000 --> 00:04:04,000 e konsa pa ankapsule bagay sa yo nan lespas klas sa sa a aktyèlman mennen 75 00:04:04,000 --> 00:04:08,000 pi bon konsepsyon kòd, e sa se posib yo avèk kèk nan karakteristik yo ki adisyonèl 76 00:04:08,000 --> 00:04:11,000 nan C-Objektif. 77 00:04:11,000 --> 00:04:15,000 Preyavi, sentaks la pou Objektif C-se fig mi. 78 00:04:15,000 --> 00:04:19,000 Li se tankou pa gen anyen nou te wè anvan, 79 00:04:19,000 --> 00:04:22,000 kidonk li se yon ti kras nan ap resevwa yon koub aprann itilize 80 00:04:22,000 --> 00:04:24,000 ki sa èk la sa vle di? 81 00:04:24,000 --> 00:04:27,000 Men, yon fwa ou jwenn sot pase ki premye koub aprantisaj li nan reyèlman, reyèlman lis 82 00:04:27,000 --> 00:04:29,000 kòmanse ekri apps. 83 00:04:29,000 --> 00:04:33,000 >> Deklare yon klas, yo di isit la se klas m 'yo, li egziste, 84 00:04:33,000 --> 00:04:35,000 e petèt isit la yo se kèk bagay ki mwen pral defini pita, 85 00:04:35,000 --> 00:04:38,000 Mwen pral di @ koòdone. 86 00:04:38,000 --> 00:04:41,000 Mwen pral di @ koòdone. Mwen pral bay klas mwen yon non. 87 00:04:41,000 --> 00:04:43,000 Lè sa a, pita yon lòt kote mwen pral di @ fen, 88 00:04:43,000 --> 00:04:46,000 ak tout bagay an ant koòdone nan @ ak nan fen @ 89 00:04:46,000 --> 00:04:48,000 a pwal klas mwen. 90 00:04:48,000 --> 00:04:51,000 Sa a pwal Ki sa ki andedan nan dosye. Nou h. 91 00:04:51,000 --> 00:04:55,000 Jis tankou nan C. Nou dosye h fondamantalman di isit la kèk bagay ki pral egziste. 92 00:04:55,000 --> 00:04:57,000 Mwen pa nesesèman di ou sa yo fè ankò, 93 00:04:57,000 --> 00:04:59,000 men du a bezwen konnen ke yo te egziste. 94 00:04:59,000 --> 00:05:04,000 Pita andedan an. M nou dosye-paske m pou Objektif C- 95 00:05:04,000 --> 00:05:08,000 se kote n ap aktyèlman ale nan defini ki sa klas sa yo fè. 96 00:05:08,000 --> 00:05:11,000 Anpil tankou dosye. Nou an c, nou bay yon aplikasyon pou fonksyon. 97 00:05:11,000 --> 00:05:15,000 Anndan an. M dosye nou an, nou ap pral di isit la se sa ki tout nan fonksyon yo 98 00:05:15,000 --> 00:05:18,000 andedan nan mwen klas-sa yo tout fè. 99 00:05:18,000 --> 00:05:22,000 Epi finalman, andedan yon struct nou te ka di andedan moun sa yo aparèy òtopedik Curly 100 00:05:22,000 --> 00:05:25,000 int n oswa ne * kap vini an, 101 00:05:25,000 --> 00:05:28,000 ak nan C Objektif-nou pral sèvi ak mo kle a @ pwopriyete, 102 00:05:28,000 --> 00:05:31,000 ak sa a se sa ki pral defini pwopriyete yo, 103 00:05:31,000 --> 00:05:36,000 oswa fonksyon yo ki pa ki gen yon pati nan klas mwen an. 104 00:05:36,000 --> 00:05:40,000 >> Rele fonksyon nan Objektif C-a tou se fig mi. 105 00:05:40,000 --> 00:05:43,000 Lè nou te deklare fonksyon nan C nou te di yon bagay tankou int foo 106 00:05:43,000 --> 00:05:46,000 epi yo louvri paren ak Lè sa a, li renmèt li yon lis diskisyon. 107 00:05:46,000 --> 00:05:51,000 Sa a se sa deklare metòd oswa fonksyon sanble nan C Objektif-. 108 00:05:51,000 --> 00:05:54,000 Si m 'vle deklare yon fonksyon oswa metòd yon 109 00:05:54,000 --> 00:05:58,000 kote m ap di metòd se reyèlman jis yon fonksyon ki nan yon manm nan yon klas, 110 00:05:58,000 --> 00:06:01,000 konsa kalite ka ranplase, men se pa reyèlman, 111 00:06:01,000 --> 00:06:03,000 Se konsa andedan nan metòd mwen, mwen vle kreye yon nouvo metòd. 112 00:06:03,000 --> 00:06:06,000 Li nan ale nan retounen pa gen anyen, se konsa li a pral fè nan anile kalite. 113 00:06:06,000 --> 00:06:08,000 Sa a se tip a retounen nan fonksyon m 'yo. 114 00:06:08,000 --> 00:06:11,000 Koulye a, nou gen paran isit la paske-Mwen pa konnen. 115 00:06:11,000 --> 00:06:14,000 Next a pwal non an nan fonksyon m 'yo, 116 00:06:14,000 --> 00:06:17,000 yo, epi finalman nou genyen yon virgules jis tankou nou te gen nan C. 117 00:06:17,000 --> 00:06:19,000 Ki sa ki nan nouvo isit la se sa a Guy isit la. 118 00:06:19,000 --> 00:06:22,000 Sa a tirè se aktyèlman sa nesesè, epi ki sa sa a di se ke 119 00:06:22,000 --> 00:06:26,000 dwe metòd sa a isit la va rele sou yon egzanp nan yon klas la. 120 00:06:26,000 --> 00:06:29,000 >> Apre nou te deklare strukt nou an, nou pwobableman di yon bagay tankou 121 00:06:29,000 --> 00:06:32,000 struct n ne, ak ki aktyèlman te kreye 122 00:06:32,000 --> 00:06:35,000 oswa enstansye youn nan moun ki strukt pou ke mwen te ka aktyèlman kòmanse travay 123 00:06:35,000 --> 00:06:38,000 ak sa ki nan andedan nan li, kidonk sa a priz vle di ke nou dwe 124 00:06:38,000 --> 00:06:41,000 enstansye klas la jis tankou nou enstansye ki struct 125 00:06:41,000 --> 00:06:43,000 anvan nou ka rele metòd sa a sou li. 126 00:06:43,000 --> 00:06:46,000 Si m 'vle kòmanse ajoute agiman metòd m' 127 00:06:46,000 --> 00:06:48,000 li vin menm plis bannann. 128 00:06:48,000 --> 00:06:50,000 Isit la nan non metòd m 'yo. 129 00:06:50,000 --> 00:06:53,000 Lè sa a, mwen pral gen yon kolon, ak apre sa a nan kolon li di isit la vini kèk agiman. 130 00:06:53,000 --> 00:06:56,000 Metòd sa a pran yon agiman. 131 00:06:56,000 --> 00:06:59,000 Ki kalite agiman li yo se yon int, ak non sa a nan agiman 132 00:06:59,000 --> 00:07:03,000 oswa si yo varyab la ke mwen ta pral kòmanse lè l sèvi avèk andedan nan metòd la rele mwen. 133 00:07:03,000 --> 00:07:05,000 Yon lòt fwa ankò, sa a se metòd. Li pran yon sèl agiman. 134 00:07:05,000 --> 00:07:10,000 >> Si ou vle kòmanse ajoute plis agiman li vin pi plis bannann 135 00:07:10,000 --> 00:07:13,000 nan ke nou te sa a nan kolon ki di isit la vini lis mwen an nan agiman. 136 00:07:13,000 --> 00:07:15,000 Sa a agiman premye se yon nonb antye. 137 00:07:15,000 --> 00:07:17,000 Koulye a, sa agiman dezyèm se enteresan. 138 00:07:17,000 --> 00:07:20,000 Varyab ki mwen pral yo dwe lè l sèvi avèk andedan nan fonksyon m ' 139 00:07:20,000 --> 00:07:23,000 Yo rele f, se konsa andedan nan fonksyon m 'mwen te kapab di 140 00:07:23,000 --> 00:07:25,000 f + = 1 oswa yon bagay. 141 00:07:25,000 --> 00:07:30,000 Bagay sa a isit la se fondamantalman yon kle pou ke diskisyon oubyen paramèt. 142 00:07:30,000 --> 00:07:34,000 Jis tankou nou te gen pè valè kle yo ak yon bagay tankou JSON oswa ranje asosyatif 143 00:07:34,000 --> 00:07:37,000 Objektif-C te fè desizyon an vle di, oke, jis konsa ke li se vrèman klè 144 00:07:37,000 --> 00:07:39,000 lè w rele yon metòd ki sa tout bagay sa yo paramèt yo 145 00:07:39,000 --> 00:07:41,000 Mwen aktyèlman vle rele yo tout. 146 00:07:41,000 --> 00:07:45,000 Lè ou rele yon metòd, ou pral di reyèlman andFloat, 147 00:07:45,000 --> 00:07:47,000 ak Lè sa a, ou pral pase l pous 148 00:07:47,000 --> 00:07:50,000 >> Enteresan, yon sèl sa a se pa sa yo te rele, men tout nan paramèt yo lòt yo, 149 00:07:50,000 --> 00:07:53,000 Se konsa, si nou te gen yon agiman 3rd mwen te kapab di andFloat 150 00:07:53,000 --> 00:07:56,000 ak yon lòt flote ak sou sa. 151 00:07:56,000 --> 00:08:01,000 Lè m 'rele metòd sa yo li se nan bannann kou, 152 00:08:01,000 --> 00:08:04,000 Se konsa, si mwen gen yon objè, epi mwen defini yon metòd ki rele foo, 153 00:08:04,000 --> 00:08:09,000 e mwen vle rele li, olye ke li di foo louvri / fèmen paran 154 00:08:09,000 --> 00:08:11,000 Mwen pral louvri yon bracket. 155 00:08:11,000 --> 00:08:13,000 Isit la nan non an nan metòd m 'yo. 156 00:08:13,000 --> 00:08:17,000 Mwen pral fèmen bracket la, ak sa a se objè a m ap rele l 'sou. 157 00:08:17,000 --> 00:08:20,000 Sonje byen, tout nan metòd sa yo egziste nan klas 158 00:08:20,000 --> 00:08:23,000 paske klas ka gen metòd defini andedan nan yo. 159 00:08:23,000 --> 00:08:26,000 >> Men mwen te abitrèman te kreye yon objè nan kèk klas, 160 00:08:26,000 --> 00:08:28,000 ak sa a se sentaks la pou fè sa. 161 00:08:28,000 --> 00:08:31,000 Gen 2 etap sa yo kreye yon objè. 162 00:08:31,000 --> 00:08:34,000 Premye etap la se vle di mwen vle asiyen espas. 163 00:08:34,000 --> 00:08:37,000 Sa a se ekivalan a nan yon malok. Nou pa bezwen di malok ankò. 164 00:08:37,000 --> 00:08:42,000 Nou tonbe m nan, fè l 'alok, ak ranplase c la. Avèk yo. M. 165 00:08:42,000 --> 00:08:47,000 Apre nou yon bagay alok nou Lè sa a, bezwen inisyalize li. 166 00:08:47,000 --> 00:08:49,000 Fondamantalman lè ou kreye objè ou ta ka vle gen kèk lojik 167 00:08:49,000 --> 00:08:53,000 ki ègzekutra yo lè yo ap kreye, kidonk, ou ka pase nan kèk valè default 168 00:08:53,000 --> 00:08:57,000 oswa yon bagay tankou sa, se pou nou metòd sa a se ini sa ki aktyèlman kreye objè a. 169 00:08:57,000 --> 00:08:59,000 Nou premye asiyen espas, jis tankou nou te fè sa nan C, 170 00:08:59,000 --> 00:09:04,000 ak Lè sa a, nou inisyalize li, ki ka oswa ka pa fè yon lot antye. 171 00:09:04,000 --> 00:09:07,000 Lè sa a, n ap retounen bagay sa a nan yon objè o. 172 00:09:07,000 --> 00:09:09,000 Genyen nan yon etwal isit la paske sa se teknikman yon konsèy, 173 00:09:09,000 --> 00:09:12,000 men pa enkyete w, endikasyon yo pa ki gwo yon kontra nan C Objektif-ankò. 174 00:09:12,000 --> 00:09:15,000 >> Koulye a, nou te enstansye klas sa a yo rele NSObject, 175 00:09:15,000 --> 00:09:19,000 ak sa a se jis yon klas o aza ke Apple te genyen an. 176 00:09:19,000 --> 00:09:22,000 Nou te enstansye sa a, e kounye a, mwen gen yon egzanp nan klas sa a 177 00:09:22,000 --> 00:09:25,000 nan sa a objè o, se konsa sa vle di ke si mwen defini 178 00:09:25,000 --> 00:09:29,000 metòd sa yo mwen te kapab rele yo tankou sa a. 179 00:09:29,000 --> 00:09:31,000 Menm jan tou, si mwen te vle rele yon metòd ak yon sèl agiman, 180 00:09:31,000 --> 00:09:34,000 kidonk sa a se metòd la ba, ki pran yon sèl agiman, 181 00:09:34,000 --> 00:09:38,000 ak isit la se Baz la: qux metòd, kidonk sa a pran 2 agiman. 182 00:09:38,000 --> 00:09:44,000 Sa a se rele yon fonksyon sa a sou objè o. 183 00:09:44,000 --> 00:09:46,000 Fè sans? 184 00:09:46,000 --> 00:09:50,000 Sentaks la ta dwe fè sans, men ou kalite jwenn itilize li. 185 00:09:50,000 --> 00:09:54,000 >> Oke, kite la pale sou yon bagay kèk ki yo bati nan Objektif C- 186 00:09:54,000 --> 00:09:56,000 ki pa t 'nesesèman bati nan C. 187 00:09:56,000 --> 00:09:59,000 Nan C nou kalite te gen fè fas ak strings tankou sa yo ranje karaktè estipid, 188 00:09:59,000 --> 00:10:01,000 epi li te resevwa reyèlman anmèdan. 189 00:10:01,000 --> 00:10:04,000 Objektif-C a gen sa yo tout bati nan pou nou, epi li nan bati nan 190 00:10:04,000 --> 00:10:06,000 lè l sèvi avèk klas sa a yo rele NSString. 191 00:10:06,000 --> 00:10:10,000 Lè m 'vle kreye yon NSString nou gen sentaks plis Esoteric. 192 00:10:10,000 --> 00:10:15,000 Olye de li di: "cs50" nou di @ "cs50" 193 00:10:15,000 --> 00:10:17,000 ak sa a se jis sentaks la pou deklare strings nan C Objektif-. 194 00:10:17,000 --> 00:10:21,000 Sa a se trè fasil bliye, se konsa pa fè sa. 195 00:10:21,000 --> 00:10:24,000 Koulye a, yon fwa mwen gen sa a, sa a se yon fisèl, men remake 196 00:10:24,000 --> 00:10:26,000 li vrèman jis yon objè. 197 00:10:26,000 --> 00:10:30,000 M 'te di NSString, ki vle di mwen enstansye klas la 198 00:10:30,000 --> 00:10:32,000 rele NSString, ki yon lòt moun te ekri pou m ', 199 00:10:32,000 --> 00:10:35,000 epi yo te trè bèl sou li, ak pou kounye a 200 00:10:35,000 --> 00:10:37,000 Mwen ka kòmanse rele metòd sou li. 201 00:10:37,000 --> 00:10:40,000 Si m 'rele longè a metòd sa a sou yo objè 202 00:10:40,000 --> 00:10:43,000 li pral tounen vin jwenn mwen longè nan fisèl la. 203 00:10:43,000 --> 00:10:45,000 Sa a se jis tankou strlèn nan C. 204 00:10:45,000 --> 00:10:47,000 Sa a ta retounen 4. 205 00:10:47,000 --> 00:10:51,000 >> Menm jan tou, yon lòt metòd mwen ta ka vle pran swen sou sa a characterAtIndex. 206 00:10:51,000 --> 00:10:54,000 Sa a se yon metòd ki di sou sa a nan fisèl 207 00:10:54,000 --> 00:10:57,000 Mwen vle fè w jwenn pèsonaj la zeroth, 208 00:10:57,000 --> 00:10:59,000 ak kidonk sa a ta tounen vin jwenn mwen c an karaktè, 209 00:10:59,000 --> 00:11:02,000 ak gen nan yon pakèt antye plis nan metòd sa yo ke ou ka Google reyèlman fasil. 210 00:11:02,000 --> 00:11:07,000 Dokiman Apple la se gwo, epi n ap pran yon gade nan ki nan yon ti jan. 211 00:11:07,000 --> 00:11:09,000 Moun sa yo se strings. 212 00:11:09,000 --> 00:11:11,000 Nou menm tou nou te ranje gwosè varyab bati pous 213 00:11:11,000 --> 00:11:13,000 Sonje nan C lè nou te deklare yon etalaj 214 00:11:13,000 --> 00:11:16,000 nou te di ou gen 5 eleman, nan fen istwa a. 215 00:11:16,000 --> 00:11:18,000 Lè nou te rive nan JavaScript ak PHP nou te kapab kòmanse 216 00:11:18,000 --> 00:11:20,000 fè bagay sa yo tankou ajoute eleman oswa an deplase eleman. 217 00:11:20,000 --> 00:11:22,000 Nou ka fè menm bagay la tou nan C Objektif-. 218 00:11:22,000 --> 00:11:26,000 Olye de kreye yon etalaj nan chemen an nòmal C 219 00:11:26,000 --> 00:11:30,000 nou gen ankò yon lòt klas yo rele NSMutableArray. 220 00:11:30,000 --> 00:11:33,000 Genyen tou NSArray, 221 00:11:33,000 --> 00:11:35,000 ak sa a ki pral fondamantalman ankapsulasyon kèk etalaj. 222 00:11:35,000 --> 00:11:38,000 Sa a di bagay la premye fwa mwen vle fè se mwen vle asiyen 223 00:11:38,000 --> 00:11:41,000 espas pou yon etalaj nouvo, epi apre mwen fin asiyen li 224 00:11:41,000 --> 00:11:43,000 Mwen Lè sa a, bezwen inisyalize li. 225 00:11:43,000 --> 00:11:45,000 Yon fwa ankò, jis rele metòd sa yo 2. 226 00:11:45,000 --> 00:11:48,000 Koulye a, sa vle di yo andedan sa a objè yon 227 00:11:48,000 --> 00:11:50,000 Mwen te yon etalaj vid chita chita l '. 228 00:11:50,000 --> 00:11:54,000 Si m 'vle ajoute yon bagay sa a etalaj, mwen ka rele metòd la addObject. 229 00:11:54,000 --> 00:11:59,000 Mwen vle ajoute yon objè ak etalaj nan yon, epi mwen vle ajoute fisèl la CS50. 230 00:11:59,000 --> 00:12:02,000 Si mwen te vle Kontrèman retire sa mwen kapab di mwen vle 231 00:12:02,000 --> 00:12:09,000 retire objè a nan plas an premye sou etalaj la oswa objeksyon yon. 232 00:12:09,000 --> 00:12:11,000 >> Fè sans? 233 00:12:11,000 --> 00:12:14,000 Okay, ou kalite jwenn itilize bagay sa a bracket kare. 234 00:12:14,000 --> 00:12:18,000 By wout la, andedan nan yon anpil nan bibliyotèk Apple la ou pral wè sa a NS. 235 00:12:18,000 --> 00:12:21,000 NS a aktyèlman vle di pou pwochen etap, ki te youn nan Steve konpayi premye Travay, 236 00:12:21,000 --> 00:12:24,000 ak sa a, se kote li vrèman te kòmanse ekri yon anpil nan kòd la 237 00:12:24,000 --> 00:12:27,000 kòm kalite baz pou Mac OS X ak tout bagay nan lòt, 238 00:12:27,000 --> 00:12:32,000 ak kidonk sa a se NS kalite sa a eritaj bèl rele soti nan youn nan konpayi yo pi bonè 239 00:12:32,000 --> 00:12:34,000 tounen lè Apple te premye kòmanse soti. 240 00:12:34,000 --> 00:12:36,000 Li nan tout kote. 241 00:12:36,000 --> 00:12:41,000 Se pou nou pran yon gade nan yon holistic plis egzanp Objektif-C. 242 00:12:41,000 --> 00:12:44,000 Men mwen wi andedan XCode. 243 00:12:44,000 --> 00:12:47,000 Pou jwenn isit la, m 'premye telechaje XCode soti nan magazen an App, 244 00:12:47,000 --> 00:12:50,000 louvri l 'moute, ak Lè sa a, mwen moute isit la yo mete nan dosye, 245 00:12:50,000 --> 00:12:54,000 sou isit la yo nouvo pwojè, ak Lè sa a,. 246 00:12:54,000 --> 00:12:57,000 Apre m 'fè sa m' genyen tout opsyon sa yo nan sa m 'vle yo kreye, 247 00:12:57,000 --> 00:12:59,000 ak sa nou pral pran yon gade nan opsyon sa yo pita, 248 00:12:59,000 --> 00:13:03,000 men jis pou egzanp sa a, paske nou pa ap aktyèlman pral gen yon app ankò, 249 00:13:03,000 --> 00:13:06,000 M 'mwen desann isit la, epi mwen di Zouti Liy Kòmandman, 250 00:13:06,000 --> 00:13:09,000 ak sa a se yon app ke mwen te ka kouri nan liy lan bay lòd 251 00:13:09,000 --> 00:13:12,000 jis tankou nou ve yo te kouri soti nan C. 252 00:13:12,000 --> 00:13:16,000 Sa a se ki jan mwen te kreye pwojè sa a, ak konsa koulye a mwen isit la, 253 00:13:16,000 --> 00:13:20,000 kidonk kite nan premye gade nan sa a ranpli, ak sa a ta dwe gade bèl yo konnen yo. 254 00:13:20,000 --> 00:13:24,000 Mwen gen yon non int. Genyen nan arg zanmi mwen an, lòt m 'zanmi argv. 255 00:13:24,000 --> 00:13:30,000 Se konsa, nou ka wè ke sa a se pwen an antre pou aplikasyon premye m 'Objektif-C. 256 00:13:30,000 --> 00:13:32,000 Isit la nou kapab inyore sa a pou kounye a. 257 00:13:32,000 --> 00:13:35,000 Sa a se fondamantalman kèk bagay jesyon memwa ke ou pa pral reyèlman 258 00:13:35,000 --> 00:13:37,000 janm gen enkyete sou. 259 00:13:37,000 --> 00:13:39,000 >> Se pou yo gade nan sa a blòk premye isit la. 260 00:13:39,000 --> 00:13:46,000 Liy sa a an premye, si mwen di elèv * Alice = [[alok Elèv] ini] sa ki nan ke ap fè? 261 00:13:46,000 --> 00:13:50,000 Elèv sa a premye isit la, sa a se pwobableman yon klas. 262 00:13:50,000 --> 00:13:54,000 Sa a se pa yon klas ke Apple te ekri, men li la yon klas ki mwen te ekri. 263 00:13:54,000 --> 00:13:57,000 Premye bagay mwen vle fè se mwen vle asiyen espas pou yon elèv nouvo, 264 00:13:57,000 --> 00:14:00,000 ak Lè sa a, mwen vle inisyalize li, kidonk sa a ki ban m 'tounen 265 00:14:00,000 --> 00:14:05,000 sa a objè nouvo elèv, ak mwen estoke sa a nan yon varyab rele Alice. 266 00:14:05,000 --> 00:14:07,000 Ki kote t 'ke tout klas soti? 267 00:14:07,000 --> 00:14:12,000 Oke, isit la sou ki sou bò gòch sa yo, se tout nan dosye yo diferan andedan nan pwojè m 'yo. 268 00:14:12,000 --> 00:14:16,000 Nou ka wè isit la mwen gen yon Student.h ak Student.m yon. 269 00:14:16,000 --> 00:14:20,000 . H dosye a, sonje, se kote Mwen deklare tout bagay sa yo 270 00:14:20,000 --> 00:14:22,000 ki pral egziste nan klas la. 271 00:14:22,000 --> 00:14:25,000 >> Se pou nou pran yon gade nan sa. 272 00:14:25,000 --> 00:14:29,000 Tout dwa, isit la nou gen sa a koòdone @, ak sa a di ke isit la vini 273 00:14:29,000 --> 00:14:33,000 deklarasyon yo nan tout bagay ki pral egziste nan klas mwen. 274 00:14:33,000 --> 00:14:36,000 Lè sa a, mwen gen yon kolon. Lè sa a, mwen gen bagay sa a NSObject. 275 00:14:36,000 --> 00:14:40,000 Sa a nan kolon vle di ke ti jan pòsyon tè nou te diskite yon ti jan pi bonè. 276 00:14:40,000 --> 00:14:43,000 Sa a di tout bagay yon NSObject ka fè 277 00:14:43,000 --> 00:14:46,000 kote NSObject se klas sa a ekri pa yon moun lòt bagay, 278 00:14:46,000 --> 00:14:50,000 tout bagay sa a NSObject ka fè mwen vle pou kapab fè sa. 279 00:14:50,000 --> 00:14:54,000 Lè li di: NSObject ki vle di ke mwen fondamantalman 280 00:14:54,000 --> 00:14:58,000 eritye tout nan fonctionnalités a nan yon lòt klas. 281 00:14:58,000 --> 00:15:02,000 Ki vrèman te ban m 'yon pakèt antye nan diferan metòd ak pwopriyete ke mwen ka itilize. 282 00:15:02,000 --> 00:15:05,000 Desann isit la mwen kreye 2 pwopriyete yo. 283 00:15:05,000 --> 00:15:08,000 Sa vle di elèv mwen an, si sa a te yon struct, sa yo ta dwe bagay sa yo 2 284 00:15:08,000 --> 00:15:11,000 andedan nan struct m 'yo, se konsa tout elèv genyen yon non 285 00:15:11,000 --> 00:15:14,000 ki se yon fisèl, ak yon elèv tou te gen yon klas, 286 00:15:14,000 --> 00:15:17,000 ki se yon int. 287 00:15:17,000 --> 00:15:23,000 >> Finalman, desann isit la mwen pral kreye yon metòd pou elèv mwen an. 288 00:15:23,000 --> 00:15:26,000 Mwen te rele metòd m 'yo, initWithName, epi li pran yon sèl agiman, 289 00:15:26,000 --> 00:15:31,000 e ke agiman se yon fisèl, epi mwen rele l 'non. 290 00:15:31,000 --> 00:15:35,000 Koulye a, kite pou yo gade nan ki jan nou aktyèlman aplike klas sa a. 291 00:15:35,000 --> 00:15:38,000 Isit la, kounye a mwen andedan nan dosye-a. M 'm, 292 00:15:38,000 --> 00:15:40,000 m pou aplike, mwen devine. 293 00:15:40,000 --> 00:15:44,000 Mwen gen aplikasyon mwen an, fen m 'yo, ak isit la se kote mwen aktyèlman defini 294 00:15:44,000 --> 00:15:47,000 ki sa initWithName fè. 295 00:15:47,000 --> 00:15:50,000 Mwen gen initWithName, non an nan paramèt mwen an, epi Lè sa a, sa a 296 00:15:50,000 --> 00:15:53,000 se kote m ap aktyèlman kreye yon elèv, 297 00:15:53,000 --> 00:15:56,000 ak kidonk sa a se yon ti jan skre, men sa a se kalite boilerplate 298 00:15:56,000 --> 00:15:58,000 ke ou vle mete nan konstrukteur ou a. 299 00:15:58,000 --> 00:16:02,000 Sa a fonksyon inisyalizasyon isit la, initWithName, se yon kalite konstrukteur. 300 00:16:02,000 --> 00:16:05,000 W ap fondamantalman konstwi yon objè ki nouvo elèv 301 00:16:05,000 --> 00:16:07,000 e petèt voye kèk done andedan nan li. 302 00:16:07,000 --> 00:16:11,000 Premye bagay mwen vle fè se mwen vle rele ini sou bagay sa a super. 303 00:16:11,000 --> 00:16:15,000 >> Sonje byen lè m 'te di tounen isit la nan. Dosye a h 304 00:16:15,000 --> 00:16:21,000 ke tout bagay yon NSObject gen yon elèv tou te gen. 305 00:16:21,000 --> 00:16:24,000 Sa vle di lè m 'kreye yon elèv ki sa mwen menm mwen te bezwen fè se 306 00:16:24,000 --> 00:16:28,000 asire w ke NSObject a ke mwen derivan nan tout sa done ki sòti nan 307 00:16:28,000 --> 00:16:32,000 tou se inisyalizèd byen. 308 00:16:32,000 --> 00:16:36,000 Ki sa mwen bezwen di se sa a super se aktyèlman ale nan gade nan klas la paran 309 00:16:36,000 --> 00:16:39,000 ke mwen derivan soti nan, se konsa mwen vle asire mwen inisyalize 310 00:16:39,000 --> 00:16:43,000 tout bagay ke mwen depann sou anvan mwen kòmanse ap eseye sèvi ak li. 311 00:16:43,000 --> 00:16:46,000 Lè sa a, si sa inisyalizèd kòrèkteman sa a se jis tankou li di si malok 312 00:16:46,000 --> 00:16:50,000 pa t 'tounen nil Lè sa a, mwen ka kòmanse mete kèk pwopriyete. 313 00:16:50,000 --> 00:16:54,000 >> Nan JavaScript ak PHP nou te sa a mo kle yo rele sa a, 314 00:16:54,000 --> 00:16:58,000 ak sa a refere yo bay egzanp aktyèl la nan yon klas. 315 00:16:58,000 --> 00:17:00,000 Nan C Objektif-nou rele sa a pwòp tèt ou. 316 00:17:00,000 --> 00:17:04,000 Lè m 'di self.name, ki vle di ke objè a 317 00:17:04,000 --> 00:17:07,000 Mwen te jis ki kreye lè m 'te di alok elèv ini, 318 00:17:07,000 --> 00:17:09,000 ki nan pral bay m 'tounen yon objè. 319 00:17:09,000 --> 00:17:12,000 Sa vle di mwen vle yo mete non an nan ki objè 320 00:17:12,000 --> 00:17:15,000 mèt fè tout sa mwen jis te pase pous 321 00:17:15,000 --> 00:17:18,000 Jis tankou nan C, nou jwenn aksè manm ak sa a dot, 322 00:17:18,000 --> 00:17:21,000 Se konsa self.name di non an nan objè a elèv 323 00:17:21,000 --> 00:17:24,000 se kounye a pral fè tou sa ou jis te pase pous 324 00:17:24,000 --> 00:17:28,000 Se konsa, finalman, mwen ka voye li tounen Se konsa, mwen aktyèlman jwenn tounen yon bagay. 325 00:17:28,000 --> 00:17:30,000 >> Kesyon? 326 00:17:30,000 --> 00:17:34,000 Oke, kidonk sa a endepandan = super ini, 327 00:17:34,000 --> 00:17:37,000 si ou pa totalman konprann bagay la pòsyon tè pa enkyete. 328 00:17:37,000 --> 00:17:40,000 Jis konnen ke si ou te janm vle fè pwòp ou a ini metòd jis 329 00:17:40,000 --> 00:17:42,000 fè sa, epi ou ap bon yo ale. 330 00:17:42,000 --> 00:17:44,000 Yeah. >> [Elèv] Ki sa si vle di pwòp tèt ou? 331 00:17:44,000 --> 00:17:49,000 Sa vle di lè nou malok yon bagay nou toujou tcheke si li te egal a nil, 332 00:17:49,000 --> 00:17:51,000 ak si li te nil, lè sa a nou soti nan. 333 00:17:51,000 --> 00:17:55,000 Sa a se menm bagay la, paske si sa a nil retounen, lè sa a nou ap pwobableman ale nan fòt segman 334 00:17:55,000 --> 00:17:57,000 si nou kòmanse ap eseye manipile li. 335 00:17:57,000 --> 00:18:01,000 Sa a se klas elèv nou yo. 336 00:18:01,000 --> 00:18:03,000 Sa vle di nou ka inisyalize elèv nou yo nan youn nan de fason. 337 00:18:03,000 --> 00:18:08,000 Si mwen di alok elèv ini mwen pa lè l sèvi avèk ki metòd ki mwen jis te ekri, 338 00:18:08,000 --> 00:18:11,000 ak olye mwen ka tou senpleman di alice.name, 339 00:18:11,000 --> 00:18:14,000 e kounye a, mwen pral mete ke non pwopriyete. 340 00:18:14,000 --> 00:18:17,000 >> Menm jan tou, si mwen vle sèvi ak metòd ki initWithName 341 00:18:17,000 --> 00:18:20,000 Mwen kapab annik di alok, ak Lè sa a, olye ke li di ini 342 00:18:20,000 --> 00:18:24,000 Mwen pral rele ke metòd ke mwen jis te kreye, epi mwen pral pase nan Bob. 343 00:18:24,000 --> 00:18:30,000 Nan pwen sa a, sa a Bob objè gen yon non egal a Bob. 344 00:18:30,000 --> 00:18:35,000 Okay, desann isit la mwen sèvi ak ki NSMutableArray ke nou te gade pi bonè. 345 00:18:35,000 --> 00:18:38,000 Mwen allocation space.Then mwen inisyalizin yon etalaj nouvo. 346 00:18:38,000 --> 00:18:40,000 Mwen pral ajoute 2 bagay sa yo nan li. 347 00:18:40,000 --> 00:18:43,000 Sa a etalaj kounye a kenbe objè elèv yo. 348 00:18:43,000 --> 00:18:46,000 Remake okenn kote t 'Mwen te di sa a se yon etalaj de elèv yo. 349 00:18:46,000 --> 00:18:48,000 M 'te di li nan yon etalaj, peryòd. 350 00:18:48,000 --> 00:18:50,000 Apre sa, mwen ka mete tou sa andedan nan li ke mwen vle. 351 00:18:50,000 --> 00:18:52,000 Men mwen gen 2 objè yo. 352 00:18:52,000 --> 00:18:56,000 >> Finalman, mwen gen yon lòt objè isit la, sa a tf. 353 00:18:56,000 --> 00:18:59,000 Plis pase isit la nan TF.h fondamantalman menm bagay la. 354 00:18:59,000 --> 00:19:01,000 Mwen derivan soti nan NSObject, ak nan chemen an, 355 00:19:01,000 --> 00:19:03,000 lè ou kreye klas sa a se tout fè pou nou, 356 00:19:03,000 --> 00:19:06,000 sa a kalite boilerplate koòdone. 357 00:19:06,000 --> 00:19:08,000 Li te gen yon pwopriyete nan elèv yo. 358 00:19:08,000 --> 00:19:15,000 Mwen gen yon metòd koup isit la ki pa reyèlman fè yon lot antye, 359 00:19:15,000 --> 00:19:18,000 Pou fè sa ki vle di apre mwen fin kreye sa a objè tf 360 00:19:18,000 --> 00:19:23,000 Mwen kapab rele sa a klas metòd sou li tankou sa a. 361 00:19:23,000 --> 00:19:26,000 Nenpòt kesyon sou Objektif-C sentaks anvan nou kòmanse deplase nan kèk plis 362 00:19:26,000 --> 00:19:30,000 enteresan apps bagay devlopman? 363 00:19:30,000 --> 00:19:34,000 >> Oke, kidonk kite a aktyèlman fè yon app ifon. 364 00:19:34,000 --> 00:19:39,000 Klas yo debaz ki ou pral lè l sèvi avèk andedan app iPhone ou yo rele contrôleur vi, 365 00:19:39,000 --> 00:19:42,000 ak yon kontwolè wè fondamantalman reprezante yon ekran sèl 366 00:19:42,000 --> 00:19:46,000 andedan nan app ou a, kidonk si mwen sou app a mizik, pou egzanp, 367 00:19:46,000 --> 00:19:50,000 yon sèl kontwolè view te kapab reprezante opinyon an nan kote mwen wè tout chante yo sou iPhone m 'yo. 368 00:19:50,000 --> 00:19:53,000 Yon lòt kontwolè view ta ka lè mwen klike sou yon chan epi kòmanse jwe li 369 00:19:53,000 --> 00:19:55,000 oswa kòm mwen fouye desann nan atis. 370 00:19:55,000 --> 00:19:59,000 Chak nan sa yo ekran diferan yo ka reprezante kòm yon kontwolè wè diferan, 371 00:19:59,000 --> 00:20:04,000 ak yon kontwolè wè se reyèlman jis yon klas ki di konbyen sa a ekran travay. 372 00:20:04,000 --> 00:20:07,000 Bagay sa yo andedan yon kontwolè vi, nou pwal gen pwopriyete yo, 373 00:20:07,000 --> 00:20:10,000 Se konsa bagay sa yo tankou yon bouton a pwal yon pwopriyete nan kontwolè wè nou yo. 374 00:20:10,000 --> 00:20:13,000 >> Nou ap tou pral gen metòd, ak sa yo, se fondamantalman pòtè evènman. 375 00:20:13,000 --> 00:20:16,000 Metòd sa a di, lè ou peze bouton sa-a 376 00:20:16,000 --> 00:20:19,000 Mwen vle fè yon bagay, epi finalman, ankò, 377 00:20:19,000 --> 00:20:24,000 nou ap pral lè l sèvi avèk sa a mo kle pwòp tèt ou jwenn aksè nan egzanp aktyèl la. 378 00:20:24,000 --> 00:20:29,000 Yo pral bati interfaces nan yo se aktyèlman reyèlman, reyèlman fasil. 379 00:20:29,000 --> 00:20:32,000 Yo gen sa a trennen bèl ak koòdone gout rele Entèfas konstrukteur, 380 00:20:32,000 --> 00:20:37,000 ak konsèp prensipal 2 ki fil moute C Objektif-ou nan Entèfas konstrukteur 381 00:20:37,000 --> 00:20:40,000 yo se IBOutlet ak IBAction. 382 00:20:40,000 --> 00:20:44,000 Yon IBOutlet tou senpleman di ke si ou deklare yon pwopriyete ki nan yon bouton, 383 00:20:44,000 --> 00:20:47,000 , epi ou vle kwòk li jiska yon bagay nan UI aktyèl ou a, 384 00:20:47,000 --> 00:20:49,000 w ap ale nan di li nan yon priz. 385 00:20:49,000 --> 00:20:51,000 Menm jan tou, si ou vle reprezante yon kap okipe-evènman 386 00:20:51,000 --> 00:20:54,000 Lè sa a, w ap ale nan di li nan yon aksyon. 387 00:20:54,000 --> 00:20:57,000 >> Aktyèlman WIRE moute sa a reprezantasyon grafik 388 00:20:57,000 --> 00:21:00,000 ak kòd ou yo ke li reyèlman, reyèlman senp. 389 00:21:00,000 --> 00:21:03,000 Si ou vle mete yon IBOutlet, tout sa ou dwe fè se ou kontwole klike sou, 390 00:21:03,000 --> 00:21:05,000 epi nou pral wè yon egzanp sou sa rapid vrèman. 391 00:21:05,000 --> 00:21:07,000 Ou kontwole klike sou kote li di Kontwolè View. 392 00:21:07,000 --> 00:21:09,000 W ap ale nan trennen nan koòdone a, oswa Kontrèman, 393 00:21:09,000 --> 00:21:13,000 si ou vle akwoche yon kap okipe-evènman w ap ale nan trennen soti nan koòdone nan 394 00:21:13,000 --> 00:21:15,000 nan yon direksyon ki lòt. 395 00:21:15,000 --> 00:21:20,000 Se pou nou pran yon gade nan yon egzanp vrèman senp yo. 396 00:21:20,000 --> 00:21:23,000 >> Se pou nou kreye yon nouvo pwojè. 397 00:21:23,000 --> 00:21:25,000 Mwen pral vini isit la yo Aplikasyon, 398 00:21:25,000 --> 00:21:28,000 ak mwen pral klike sou Single Aplikasyon View. 399 00:21:28,000 --> 00:21:31,000 Mwen pral klike sou pwochen. Mwen pral ba pwojè mwen an yon non. 400 00:21:31,000 --> 00:21:33,000 Mwen pral rele li Hello. 401 00:21:33,000 --> 00:21:36,000 Enteresan, Apple pansé ké ou se kreye yon pwodwi 402 00:21:36,000 --> 00:21:38,000 pou ke ou ka vann li epi yo ka fè lajan. 403 00:21:38,000 --> 00:21:41,000 Desann isit la mwen pral di ke sa a se yon app ifon. 404 00:21:41,000 --> 00:21:44,000 Ou ka kreye yon app iPad, oswa si ou vle kreye youn nan moun ki apps 405 00:21:44,000 --> 00:21:47,000 ki sipòte tou de aparèy ou ka fè ki tou. 406 00:21:47,000 --> 00:21:49,000 Sa yo se ki sa ou vle checkmarks ou a sanble. 407 00:21:49,000 --> 00:21:51,000 >> Ou vle itilize storyboards, ki nou pral wè pita, 408 00:21:51,000 --> 00:21:54,000 epi ou definitivman vle itilize otomatik konte referans, 409 00:21:54,000 --> 00:21:58,000 ki se yon karakteristik bèl ki anpeche w gen yo di malok ak gratis. 410 00:21:58,000 --> 00:22:03,000 Sof si ou vle rele malok ak gratis, mwen ta kite sa-a w tcheke yo. 411 00:22:03,000 --> 00:22:07,000 Mwen pral klike sou pwochen yo, epi finalman, sa a se pral mande m 'kote m vle sove li. 412 00:22:07,000 --> 00:22:14,000 Mwen pral frape kreye, ak isit la nou ale. 413 00:22:14,000 --> 00:22:16,000 Mwen te kreye yon nouvo pwojè. 414 00:22:16,000 --> 00:22:19,000 Plis pase isit la sou bò gòch la se tout dosye yo ki andedan nan pwojè m 'yo, 415 00:22:19,000 --> 00:22:22,000 ak avi ke mwen te resevwa yon pakèt antye, e mwen pa t 'menm fè anyen. 416 00:22:22,000 --> 00:22:24,000 Yo se gwo. 417 00:22:24,000 --> 00:22:27,000 >> Pou egzanp, isit la sa a ViewController.h, 418 00:22:27,000 --> 00:22:30,000 sa a ki pral reprezante kontwolè premye wè mwen, 419 00:22:30,000 --> 00:22:32,000 Se konsa ekran an premye andedan nan app m 'yo. 420 00:22:32,000 --> 00:22:34,000 Koulye a, nou konnen ki sa sa a ap di. 421 00:22:34,000 --> 00:22:36,000 Nou ap di m ap rele sa a ViewController klas, 422 00:22:36,000 --> 00:22:40,000 ak yon ViewController fè tout bagay ki yon UIViewController fè, 423 00:22:40,000 --> 00:22:43,000 ak sa a, ankò, se kèk klas ke Apple te ekri ki fè sa ki yon anpil nan bagay sou la men pou nou 424 00:22:43,000 --> 00:22:46,000 renmen montre ekran an. 425 00:22:46,000 --> 00:22:50,000 Isit la se kote mwen ka aktyèlman kòmanse defini sa ki kontwolè wè mwen fè, 426 00:22:50,000 --> 00:22:52,000 epi li vire soti vrèman ke mwen pa bezwen nenpòt nan sa a. 427 00:22:52,000 --> 00:22:55,000 Sa a se kòd boilerplate ke Apple ki ban m 'pou gratis. 428 00:22:55,000 --> 00:22:59,000 Mwen te fè bezwen ke liy premye, oswa mwen pa gen yon klas, 429 00:22:59,000 --> 00:23:02,000 pou nou ka debarase m de sa ki epi debarase m de sa a. 430 00:23:02,000 --> 00:23:05,000 Oke, kidonk sa a se ekran vid m 'yo. 431 00:23:05,000 --> 00:23:08,000 >> Koulye a, kite a klike sou sa a MainStoryboard.storyboard, 432 00:23:08,000 --> 00:23:11,000 e sa se kote li kòmanse jwenn ki enteresan. 433 00:23:11,000 --> 00:23:14,000 Sa a reprezante ekran an premye sou app m 'yo. 434 00:23:14,000 --> 00:23:17,000 Si m 'vle ajoute yon bouton, nan HTML mwen te gen yo kreye yon tag bouton. 435 00:23:17,000 --> 00:23:20,000 Nan android ou gen yo kreye yon tag bouton, 436 00:23:20,000 --> 00:23:23,000 men nan yo si mwen jis desann isit la sou bò dwat la anba 437 00:23:23,000 --> 00:23:27,000 ak si mwen klike sou yon sèl sa a 3yèm isit la kote li di objè, 438 00:23:27,000 --> 00:23:31,000 e mwen kapab desann, oubyen mwen ka kòmanse chèche pou bouton. 439 00:23:31,000 --> 00:23:35,000 Epi gade, yon bouton, kidonk si mwen aktyèlman trennen ak gout dwa sa-a la, 440 00:23:35,000 --> 00:23:38,000 Mwen te jis te ajoute yon bouton sa a ekran sou app m 'yo. 441 00:23:38,000 --> 00:23:41,000 Si m 'vle chanje tèks la, mwen ka doub klike sou li, 442 00:23:41,000 --> 00:23:47,000 di yon bagay Hatian tankou "Peze mwen." 443 00:23:47,000 --> 00:23:51,000 Okay, kounye a si mwen kouri sa a app, konsa nou konpile li, 444 00:23:51,000 --> 00:23:54,000 Se konsa nan kouri li mwen klike sou bouton ki jwe nan bò gòch nan tèt, ak gen nan app m 'yo. 445 00:23:54,000 --> 00:23:58,000 Mwen pa t 'fè anyen, epi mwen te resevwa yon dous app kap ifon. 446 00:23:58,000 --> 00:24:01,000 Si m 'vle sispann li, ou ka klike sou bouton pou kanpe a 447 00:24:01,000 --> 00:24:03,000 paske li nan plis amizan. 448 00:24:03,000 --> 00:24:07,000 >> Se pou nou di ke mwen aktyèlman vle yon bagay rive lè mwen peze bouton sa-a. 449 00:24:07,000 --> 00:24:09,000 Pou fè sa sa m 'bezwen fè se mwen bezwen yo kreye 450 00:24:09,000 --> 00:24:13,000 yon kap okipe-evènman nouvo oswa yon aksyon yon. 451 00:24:13,000 --> 00:24:16,000 Sa vle di ke mwen bezwen kreye kèk metòd ke mwen vle yo rele 452 00:24:16,000 --> 00:24:18,000 lè mwen peze bouton an, kidonk kite a kreye yon nouvo metòd. 453 00:24:18,000 --> 00:24:20,000 Mwen andedan ViewController.h. 454 00:24:20,000 --> 00:24:22,000 Mwen bezwen yo di ke yon metòd egziste. 455 00:24:22,000 --> 00:24:26,000 Mwen bezwen yon tirè premye paske mwen m 'pral fè rele sa a sou kontwolè a vi. 456 00:24:26,000 --> 00:24:28,000 Mwen bezwen bay sa a yon kalite. 457 00:24:28,000 --> 00:24:31,000 Kalite sa a a pwal ke bagay IBAction ke nou te wè pi bonè. 458 00:24:31,000 --> 00:24:35,000 Sa a se yon kap okipe-evènman, se konsa li pral retounen yon IBAction, 459 00:24:35,000 --> 00:24:38,000 ak sa a se yon allusion XCode yo di ke 460 00:24:38,000 --> 00:24:40,000 sa a se yon bagay mwen vle WIRE yon bagay yo. 461 00:24:40,000 --> 00:24:45,000 Mwen ka bay li yon non, tankou virgules buttonPressed,. 462 00:24:45,000 --> 00:24:48,000 >> Koulye a, mwen te deklare yon nouvo metòd andedan nan klas mwen an. 463 00:24:48,000 --> 00:24:50,000 Mwen te di metòd sa a gen egziste. 464 00:24:50,000 --> 00:24:53,000 Koulye a, kite a antre nan ViewController.m, 465 00:24:53,000 --> 00:24:56,000 e kite yo di sa metòd sa a ka fè. 466 00:24:56,000 --> 00:25:03,000 Si mwen kòmanse sezisman, pou egzanp, (san valè) buttonPressed 467 00:25:03,000 --> 00:25:06,000 avi XCode se reyèlman bon ak autocompletes pou mwen. 468 00:25:06,000 --> 00:25:09,000 Sa ki nan vrèman bèl bagay. 469 00:25:09,000 --> 00:25:12,000 Avi isit la ke andedan nan dosye a. M mwen ka di tou anile, 470 00:25:12,000 --> 00:25:15,000 ak sa a se paske sa IBAction se pa aktyèlman yon kalite. 471 00:25:15,000 --> 00:25:19,000 Li nan aktyèlman hashtag defini yon kote yo dwe yon anile, 472 00:25:19,000 --> 00:25:22,000 epi ankò, sa a se jis yon allusion XCode ki di 473 00:25:22,000 --> 00:25:25,000 Mwen vle sa a yo dwe genyen yon kap okipe-evènman yo, epi nou pral wè poukisa nan jis dezyèm yon. 474 00:25:25,000 --> 00:25:28,000 Lè yo bouton sa-a bourade mwen pral fè yon bagay anmèdan 475 00:25:28,000 --> 00:25:30,000 renmen afiche yon kontèkstuèl. 476 00:25:30,000 --> 00:25:35,000 >> Pou fè sa mwen kapab kreye yon egzanp nouvo sou klas sa a yo rele UIAlertView, 477 00:25:35,000 --> 00:25:39,000 ak sa a se yon klas ke Apple te ekri ki a pral montre popup anmèdan. 478 00:25:39,000 --> 00:25:43,000 Nou pral rele sa alèt kontèkstuèl, mwen gen 2 etap, sonje, nan kreye sa a objè. 479 00:25:43,000 --> 00:25:46,000 Premye bagay mwen bezwen fè se asiyen espas. 480 00:25:46,000 --> 00:25:48,000 Mwen vle yon UIAlertView. 481 00:25:48,000 --> 00:25:51,000 Mwen vle asiyen espas. Sa a se metòd premye m 'yo. 482 00:25:51,000 --> 00:25:53,000 Metòd pwochen mwen se mwen vle inisyalize li, 483 00:25:53,000 --> 00:25:58,000 Se poutèt sa mwen gen sa a gwo, depi lontan metòd rele initWithTitle. 484 00:25:58,000 --> 00:26:01,000 Sa se fondamantalman ale nan kontwole sa sa a kontèkstuèl di. 485 00:26:01,000 --> 00:26:04,000 Tit la nan kontèkstuèl mwen kapab hello. 486 00:26:04,000 --> 00:26:08,000 Mesaj sa a kontèkstuèl ka "Sa a se yo." 487 00:26:08,000 --> 00:26:10,000 Bagay delege, mwen pa konnen sa ki se. 488 00:26:10,000 --> 00:26:13,000 Se pou nou di li pa gen anyen an. 489 00:26:13,000 --> 00:26:18,000 Koulye a, bouton an ki nan ale nan parèt ka di yon bagay tankou "Li asire w se," 490 00:26:18,000 --> 00:26:24,000 e mwen pa vle reyèlman nenpòt ki bouton lòt, konsa kite a efase ke epi fèmen bracket la. 491 00:26:24,000 --> 00:26:27,000 >> Okay, mwen kreye yon yon siplemantè. Gen nou ale. 492 00:26:27,000 --> 00:26:30,000 Sa a se ki jan mwen kapab kreye yon kontèkstuèl nouvo. 493 00:26:30,000 --> 00:26:35,000 Si m 'vle aktyèlman montre kontèkstuèl la mwen vle rele metòd la montre. 494 00:26:35,000 --> 00:26:38,000 Pou fè sa mwen kapab di alèt e montre, 495 00:26:38,000 --> 00:26:40,000 e ankò, otokonple te super bèl. 496 00:26:40,000 --> 00:26:42,000 Si m 'bliye sa ki te, si mwen jis tape nan a, 497 00:26:42,000 --> 00:26:45,000 Mwen ka Scroll atravè isit la yo konnen sa ki li te, 498 00:26:45,000 --> 00:26:48,000 epi li filtè joliman. 499 00:26:48,000 --> 00:26:52,000 Koulye a, mwen te kreye sa a kontèkstuèl nouvo. 500 00:26:52,000 --> 00:26:55,000 Nou ap tounen nan sa delege vle di pita, 501 00:26:55,000 --> 00:26:58,000 e kounye a, mwen vle di mwen vle metòd sa a dwe te tire 502 00:26:58,000 --> 00:27:01,000 lè mwen peze bouton an, se konsa mwen pral tounen vin jwenn scénario m 'yo, 503 00:27:01,000 --> 00:27:04,000 e mwen vle kounye a tache sa a IBAction. 504 00:27:04,000 --> 00:27:06,000 Premye bagay ou vle fè se klike sou bouton an. 505 00:27:06,000 --> 00:27:08,000 Lè m 'peze bouton sa-a mwen vle yon bagay rive. 506 00:27:08,000 --> 00:27:10,000 Mwen pa pral kenbe desann kontwòl. 507 00:27:10,000 --> 00:27:13,000 Mwen pral klike epi trennen soti nan bouton an 508 00:27:13,000 --> 00:27:15,000 plis pase isit la kote li di Kontwolè View. 509 00:27:15,000 --> 00:27:17,000 Nou ka wè ke li joliman limyè a. 510 00:27:17,000 --> 00:27:22,000 >> Si m 'kite ale ak sourit mwen mwen genyen kounye a sa a kontèkstuèl sou isit la kote mwen gen kèk opsyon. 511 00:27:22,000 --> 00:27:24,000 Youn nan sa yo se evènman yo ke mwen ka enskri. 512 00:27:24,000 --> 00:27:28,000 Sa yo se tout moun ki metòd mwen te deklare nan dosye h mwen kòm IBActions. 513 00:27:28,000 --> 00:27:31,000 Sa a se fason XCode ki konnen sa ki ta dwe parèt nan lis sa a ti kras, 514 00:27:31,000 --> 00:27:33,000 pou ki nan jis yon allusion. 515 00:27:33,000 --> 00:27:37,000 Si m 'klike sou bouton bourade, mwen te kounye a anrejistre kap okipe-a evènman. 516 00:27:37,000 --> 00:27:41,000 Nan JavaScript nou te di mwen gen kèk kòd ki anrejistre kap okipe-a evènman. 517 00:27:41,000 --> 00:27:43,000 Nan C Objektif-li te vrèman ki fasil. 518 00:27:43,000 --> 00:27:46,000 Si mwen kouri sa a ankò 519 00:27:46,000 --> 00:27:49,000 kounye a lè mwen peze bouton an kap okipe-evènman mwen ki pral nan dife, 520 00:27:49,000 --> 00:27:51,000 ak mwen pral jwenn sa a kontèkstuèl. 521 00:27:51,000 --> 00:27:54,000 Super, Super senp la. 522 00:27:54,000 --> 00:27:57,000 >> Si ou janm vle wè tout nan evènman ki ki rive yo dwe anrejistre 523 00:27:57,000 --> 00:28:00,000 sou yon eleman si mwen klike sou bouton sa-a 524 00:28:00,000 --> 00:28:02,000 epi mwen vin sou isit la yo bò dwat la 525 00:28:02,000 --> 00:28:05,000 premye ou ka wè plis pase isit la mwen kapab fè bagay sa yo tankou ki kalite bouton an, 526 00:28:05,000 --> 00:28:08,000 Se konsa, si ou vle youn nan moun ki nan mwen oswa bouton an kontak ajoute 527 00:28:08,000 --> 00:28:10,000 oswa kèlkeswa sa. 528 00:28:10,000 --> 00:28:13,000 Si m 'vle wè tout nan evènman yo ki sou bouton sa-a 529 00:28:13,000 --> 00:28:16,000 si mwen vini tout wout la sou isit la yo bò dwat la 530 00:28:16,000 --> 00:28:19,000 nou ka wè isit la nan evènman yo, mwen gen tout evènman sa yo diferan. 531 00:28:19,000 --> 00:28:23,000 Mwen ka peze bouton an, lè mwen kite ale nan bouton an, lè mwen double tiyo oswa kèlkeswa sa, 532 00:28:23,000 --> 00:28:26,000 ak yon sèl la mwen jis anrejistre se evenman sa a te rele Touch Up Anndan, 533 00:28:26,000 --> 00:28:29,000 ak sa a di ke le pli vit ke dwèt mwen vini desann bouton an 534 00:28:29,000 --> 00:28:32,000 ke evènman ki pral dife, epi ki nan ekzakteman ki sa jis rive. 535 00:28:32,000 --> 00:28:36,000 Sa a se kalite bouton evènman an default bourade. 536 00:28:36,000 --> 00:28:39,000 >> Nenpòt kesyon byen lwen tèlman? 537 00:28:39,000 --> 00:28:43,000 Okay, lè sa a jan nou kapab kòmanse nan pwent fil moute bagay sa yo nan kòd nou an 538 00:28:43,000 --> 00:28:46,000 nan bagay sa yo andedan nan koòdone nou an. 539 00:28:46,000 --> 00:28:49,000 Sonje premye bagay la nou te gen fè te jwenn kòd la, 540 00:28:49,000 --> 00:28:54,000 ak Lè sa a, nou branche moute koòdone nan kòd la, 541 00:28:54,000 --> 00:28:57,000 ak gen nan app premye nou yo. 542 00:28:57,000 --> 00:29:00,000 Okay, sa ki te vrèman fre, epi nou te kreye bouton sa-a. 543 00:29:00,000 --> 00:29:03,000 E si nou pa fè sa vle gen yo kreye yon pakèt moun sou pwopriyete 544 00:29:03,000 --> 00:29:05,000 ki reprezante sa yo bouton? 545 00:29:05,000 --> 00:29:08,000 Pou egzanp, nan zòtèy tik TAC mwen gen 9 bouton, 546 00:29:08,000 --> 00:29:11,000 ak li ka d 'super, super anmèdan' gen yo trennen ak gout 9 fwa 547 00:29:11,000 --> 00:29:14,000 oswa si mwen te fè tik TAC zòtèy ak 81 olye pou yo 9 548 00:29:14,000 --> 00:29:17,000 ak mwen te gen trennen ak gout 81 fwa, ak ki nan moun k'ap bwete. 549 00:29:17,000 --> 00:29:20,000 Ki sa ki nou kapab fè olye se anpil tankou yon HTML 550 00:29:20,000 --> 00:29:23,000 lè nou te gen bagay sa yo tankou idantite epi non ak nou kapab fè rechèch pou bagay sa yo 551 00:29:23,000 --> 00:29:27,000 pa ID yo, genyen yon nosyon menm jan an nan yo rele balises. 552 00:29:27,000 --> 00:29:31,000 >> Yon tag se senpleman yon idantifyan inik nimerik pou yon eleman. 553 00:29:31,000 --> 00:29:34,000 Si mwen di sa a te gen yon tag nan 0, pou egzanp, 554 00:29:34,000 --> 00:29:38,000 si mwen kreye yon bouton ak ba li yon tag nan 0, epi nou pral wè ki jan fè sa nan jis dezyèm yon, 555 00:29:38,000 --> 00:29:41,000 si mwen vle jwenn ki bouton mwen ka tou senpleman di mwen vle rele 556 00:29:41,000 --> 00:29:45,000 , la viewWithTag metòd sou objè a sou isit la 557 00:29:45,000 --> 00:29:48,000 self.view a, ki reprezante ekran an kounye a, pou egzanp. 558 00:29:48,000 --> 00:29:53,000 Si m 'rele ki metòd viewWithTag, mwen pral rale tounen bouton an ki genyen etikèt 0. 559 00:29:53,000 --> 00:29:58,000 Se pou nou pran yon gade nan sa a pa zòtèy bilding TAC tik. 560 00:29:58,000 --> 00:30:01,000 Premyèman, sa a se scénario m 'yo. 561 00:30:01,000 --> 00:30:05,000 Mwen te kreye sa yo bouton UI 10. 562 00:30:05,000 --> 00:30:07,000 Avi yo ap tout gwosè a menm. 563 00:30:07,000 --> 00:30:11,000 Si m 'klike sou youn nan sa yo men m'ap tounen vin tounen sou isit la sou bò sa a dwa 564 00:30:11,000 --> 00:30:15,000 ou pral wè mwen ajiste font nan dwa isit la, Se konsa, mwen te fè font la yon ti jan pi gwo, 565 00:30:15,000 --> 00:30:19,000 men ki sa m 'te fè te mwen mete sa a tag. 566 00:30:19,000 --> 00:30:23,000 M 'te di ke sa a te gen yon tag nan 1, ak ki nan bò gòch an tèt la. 567 00:30:23,000 --> 00:30:26,000 >> Koulye a, si mwen klike sou yon lòt bouton, tankou sa a yon dezyèm isit la, 568 00:30:26,000 --> 00:30:29,000 kounye a ou ap wè ke tag mwen, se yon 2. 569 00:30:29,000 --> 00:30:32,000 Chak kote sa yo bouton jis gen yon tag inik, 570 00:30:32,000 --> 00:30:35,000 epi konsa sa a se pita kijan mwen pral kòmanse kominike 571 00:30:35,000 --> 00:30:38,000 ak app m 'yo. 572 00:30:38,000 --> 00:30:40,000 Sa a se tout andedan nan yon sèl kontwolè vi, 573 00:30:40,000 --> 00:30:42,000 men isit la se sa nou genyen. 574 00:30:42,000 --> 00:30:44,000 Nou gen 3 pwopriyete isit la. 575 00:30:44,000 --> 00:30:49,000 Youn nan premye ak yon dènye yo ale nan reprezante eta a nan tablo m 'yo. 576 00:30:49,000 --> 00:30:53,000 Fondamantalman yon sèl sa a premye se yon etalaj ki reprezante kote X yo ak os yo ye. 577 00:30:53,000 --> 00:30:57,000 Sa a yon lòt isit la di nou ki gen vire li ye. 578 00:30:57,000 --> 00:31:01,000 Ou ap remake ke mwen menm tou nou gen tout bagay sa yo isit la. 579 00:31:01,000 --> 00:31:05,000 Anvan lè nou te deklare pwopriyete nou te ba yo yon non ak kalite yon. 580 00:31:05,000 --> 00:31:08,000 Nou kapab tou ba yo kèk plis enfòmasyon isit la. 581 00:31:08,000 --> 00:31:11,000 Sa a premye di nonatomic, e ki sa sa a di 582 00:31:11,000 --> 00:31:16,000 se fondamantalman yon sèl bagay ap janm dwe eseye gen aksè a sa a varyab nan yon tan. 583 00:31:16,000 --> 00:31:19,000 Ou ta ka fè aplikasyon pou plis konplèks ke yo milti-Threaded, 584 00:31:19,000 --> 00:31:22,000 e konsa li tounen nan grate nou te gen fil diferan, 585 00:31:22,000 --> 00:31:25,000 ak sprit diferan ta kapab fè bagay sa yo diferan nan menm tan an. 586 00:31:25,000 --> 00:31:29,000 >> Si sa a, se pa ka a, ki se pa nan anyen ke nou pral chèche a, 587 00:31:29,000 --> 00:31:33,000 si nou di nonatomic li a aktyèlman pral fè bagay sa yo yon ti jan pi vit. 588 00:31:33,000 --> 00:31:37,000 Nou genyen tou bagay sa yo rele atache, fò, oswa fèb. 589 00:31:37,000 --> 00:31:40,000 Sa a bay jis di ke sa a se yon kalite estanda. 590 00:31:40,000 --> 00:31:43,000 Sa a se pa yon bagay oswa yon konsèy yon paske sa a se jis yon bouleen, 591 00:31:43,000 --> 00:31:46,000 Se konsa bouleen se bati nan C Objektif-. 592 00:31:46,000 --> 00:31:49,000 Sa a di pa eseye fè anyen anpenpan ak endikasyon isit la. 593 00:31:49,000 --> 00:31:51,000 Li se yon regilye fin vye granmoun ekayeur. 594 00:31:51,000 --> 00:31:54,000 Fò ak fèb, sa a fèb di ki aktyèlman 595 00:31:54,000 --> 00:31:57,000 Mwen vle sa a yo dwe lonje dwèt a yon bagay nan kontwolè a vi. 596 00:31:57,000 --> 00:32:00,000 Mwen pa pral an reyalite asiyen oswa ini sa a tèt mwen. 597 00:32:00,000 --> 00:32:04,000 Mason nan koòdone, lè mwen kouri app a, ki pral okipe tout sa ki inisyalizasyon. 598 00:32:04,000 --> 00:32:07,000 Si mwen di fèb, ki di yon lòt moun yo pral kreye sa a. 599 00:32:07,000 --> 00:32:09,000 Si mwen di fò, sa a di ke mwen pral yo dwe youn nan 600 00:32:09,000 --> 00:32:12,000 ki nan kreye sa a objè tablo, 601 00:32:12,000 --> 00:32:14,000 e konsa isit la mwen gen kèk plis metòd isit la, 602 00:32:14,000 --> 00:32:18,000 pou egzanp, yon aksyon pou lè se bouton an jwèt nouvo bourade, 603 00:32:18,000 --> 00:32:20,000 yon aksyon pou lè nenpòt nan bouton sa yo lòt yo bourade, 604 00:32:20,000 --> 00:32:23,000 ak et setra. 605 00:32:23,000 --> 00:32:26,000 >> Nou pa pral rantre nan twòp nan lojik nan zòtèy tik TAC, 606 00:32:26,000 --> 00:32:30,000 byenke li trè enteresan, men kite a pran yon gade nan 607 00:32:30,000 --> 00:32:33,000 kèk nan bagay sa yo ke nou ka fè andedan nan yo. 608 00:32:33,000 --> 00:32:35,000 Metòd sa a jwèt nouvo yo pral revoke 609 00:32:35,000 --> 00:32:37,000 nenpòt lè mwen peze bouton an jwèt nouvo. 610 00:32:37,000 --> 00:32:41,000 Kwòk ki moute Mwen tou senpleman vin sou nan scénario m 'yo. 611 00:32:41,000 --> 00:32:43,000 Mwen klike sou jwèt nouvo. 612 00:32:43,000 --> 00:32:47,000 Si m 'vin sou isit la sou bò dwat la mwen ka wè ke 613 00:32:47,000 --> 00:32:50,000 Manyen Up Anndan se branche metòd la newGame. 614 00:32:50,000 --> 00:32:53,000 Se poutèt sa sa a se pwal jwenn revoke. 615 00:32:53,000 --> 00:32:56,000 Metòd la newGame ki pral fè kèk fè fè a. 616 00:32:56,000 --> 00:32:59,000 Li nan pral di mwen vle nou klè eta a nan tablo a. 617 00:32:59,000 --> 00:33:01,000 Sa a se yon metòd bèl sou mutabl ranje. 618 00:33:01,000 --> 00:33:03,000 Sa a se pral di li a kounye a vire X la, 619 00:33:03,000 --> 00:33:07,000 e kounye a, mwen pral pran avantaj de bagay sa a viewWithTag. 620 00:33:07,000 --> 00:33:11,000 >> Mwen konnen ke bouton mwen an gen etikèt yo 1-9, 621 00:33:11,000 --> 00:33:13,000 ak sa a, se yon bagay mwen abitrèman te keyi. 622 00:33:13,000 --> 00:33:15,000 Si m 'vle yo mete tèks la nan chak bouton yo dwe vid 623 00:33:15,000 --> 00:33:17,000 paske mwen jis te kòmanse yon jwèt nouvo e mwen pa vle okenn 624 00:33:17,000 --> 00:33:20,000 X oswa os yo dwe kite plis pase mwen ka fè sa. 625 00:33:20,000 --> 00:33:24,000 Mwen kapab di mwen vle gade nan ki genyen etikèt la, 1, 2, 3, 4 et setra. 626 00:33:24,000 --> 00:33:27,000 Sa a pral rale yon bouton diferan chak fwa. 627 00:33:27,000 --> 00:33:30,000 Isit la mwen pral jete l 'bay UIButton. 628 00:33:30,000 --> 00:33:33,000 Jis tankou nou te ka jete antye flote ak vis vèrsa 629 00:33:33,000 --> 00:33:37,000 sa a di ke mwen vle voye jete sa a nan yon UIButton. 630 00:33:37,000 --> 00:33:40,000 Sa vle di ki kalite sa a pral gen yon * UIButton 631 00:33:40,000 --> 00:33:43,000 paske nan pwent, men se pa enkyete w, yo ap pa pè ankò. 632 00:33:43,000 --> 00:33:47,000 >> Yon fwa mwen gen bouton sa-a mwen pral rele yon metòd sou li. 633 00:33:47,000 --> 00:33:50,000 Metòd sa a se rele setTitle forState, ak kidonk sa a di 634 00:33:50,000 --> 00:33:53,000 Mwen vle yo mete tèks la nan bouton an yo dwe fisèl la vid, 635 00:33:53,000 --> 00:33:57,000 e mwen vle li nan dwe fisèl la vid lè li pa nan bourade. 636 00:33:57,000 --> 00:34:01,000 Si mwen sèvi ak metòd sa a, mwen ka chanje tèks la nan bouton an 637 00:34:01,000 --> 00:34:04,000 le pli vit ke yon moun frape l ', men nou vle di lè bouton an se jis chita chita l' 638 00:34:04,000 --> 00:34:07,000 Mwen vle tèks la yo dwe vid. 639 00:34:07,000 --> 00:34:10,000 Finalman, nou ap ale nan inisyalize tablo m 'yo, 640 00:34:10,000 --> 00:34:12,000 ak mwen pral di ke tout bagay se kounye a nan 0, 641 00:34:12,000 --> 00:34:15,000 kidonk sa a tablo manm imuiabl se yon etalaj mutabl, 642 00:34:15,000 --> 00:34:21,000 ki vle di mwen kapab rele metòd la addObject ak jis yon andedan 0 nan li. 643 00:34:21,000 --> 00:34:23,000 Sa a ki sa k ap pase lè mwen kreye yon jwèt nouvo. 644 00:34:23,000 --> 00:34:25,000 >> Se pou nou pran yon gade nan yon lòt. 645 00:34:25,000 --> 00:34:28,000 Metòd sa a isit la se IBAction a ki k ap pase yo dwe bourade 646 00:34:28,000 --> 00:34:31,000 chak fwa youn nan moun ki kare a bourade. 647 00:34:31,000 --> 00:34:33,000 Koulye a, nou gen kèk tik lojik zòtèy TAC isit la. 648 00:34:33,000 --> 00:34:36,000 Nou konnen ki ki gen vire li ye, 649 00:34:36,000 --> 00:34:39,000 ak ki baze sou nou pou nou swa mete yon X oswa yon O, 650 00:34:39,000 --> 00:34:43,000 men nou remake ke nou ap resèvi sa a kap okipe-evènman menm 651 00:34:43,000 --> 00:34:45,000 pou chak yon sèl nan sa yo bouton. 652 00:34:45,000 --> 00:34:49,000 Sa vle di ke mwen pa gen yon metòd pou bouton an gòch anwo, 653 00:34:49,000 --> 00:34:52,000 yon metòd diferan pou bouton an dwa anba, byenke mwen te kapab gen fè sa. 654 00:34:52,000 --> 00:34:54,000 Sa pa ta reyèlman dwe bon konsepsyon. 655 00:34:54,000 --> 00:34:57,000 Sa mwen ap fè isit la se mwen aktyèlman ale nan detèmine 656 00:34:57,000 --> 00:35:00,000 sa ki tag a nan bouton an ki te bourade se. 657 00:35:00,000 --> 00:35:04,000 Ou remake ke metòd sa a jwe pran youn agiman. 658 00:35:04,000 --> 00:35:07,000 Yo rele li moun k, e ki sa moun k ap la moun k ki pral 659 00:35:07,000 --> 00:35:10,000 reprezante egzakteman sa ki te pran desizyon sou li. 660 00:35:10,000 --> 00:35:15,000 Si m 'peze yon bouton, sa a moun k a pwal ki UIButton 661 00:35:15,000 --> 00:35:18,000 ke mwen aktyèlman bourade, se konsa ke vle di ke ki UIButton 662 00:35:18,000 --> 00:35:20,000 gen yon tag paske mwen te kreye yon tag. 663 00:35:20,000 --> 00:35:23,000 >> Si m 'vle jwenn nan tag a mwen ka tou senpleman di 664 00:35:23,000 --> 00:35:26,000 Mwen vle tag a nan moun k la, 665 00:35:26,000 --> 00:35:28,000 e ankò, Mwen te jis koule li bay yon UIButton. 666 00:35:28,000 --> 00:35:32,000 Mwen rive konnen ke moun k la pral yon UIButton. 667 00:35:32,000 --> 00:35:34,000 Li pa toujou dwe fè yon UIButton. 668 00:35:34,000 --> 00:35:36,000 Mwen te kapab, pou egzanp, enskri kap okipe-a evènman menm 669 00:35:36,000 --> 00:35:38,000  pou youn pou yon bouton, yonn pou yon kurseur. 670 00:35:38,000 --> 00:35:40,000 Nan ka sa a, mwen konnen yo ap tout bouton, se konsa mwen pral di 671 00:35:40,000 --> 00:35:43,000 Mwen vle sa a yo dwe yon bouton, ak Lè sa a, mwen kapab jwenn tag a, 672 00:35:43,000 --> 00:35:48,000 ak nan tag a mwen kounye a konnen ki kote mwen menm andedan nan tablo a. 673 00:35:48,000 --> 00:35:51,000 Apre sa, mwen ka senpleman mete swa X yo oswa O la, ka baskile vire a, 674 00:35:51,000 --> 00:35:54,000 tcheke ki te genyen, et setra. 675 00:35:54,000 --> 00:35:59,000 >> Nenpòt kesyon sou sa a byen lwen konsa? 676 00:35:59,000 --> 00:36:02,000 Okay, tout kòd la nou afiche sou entènèt-nou pa vle antre nan twòp 677 00:36:02,000 --> 00:36:06,000 nan lojik sa a zòtèy tik TAC, men kounye a ou ka wè ki vrèman 678 00:36:06,000 --> 00:36:09,000 tout sa nou ap fè se nou ap loupin sou sa a etalaj, 679 00:36:09,000 --> 00:36:13,000 pou nou gen yon koup nan pou pasan isit la, e nou jis ap konpare yo wè 680 00:36:13,000 --> 00:36:18,000 nou gen yon matche ak nan tout ranje yo, yon matche ak nan yon kolòn oswa yon bagay tankou sa. 681 00:36:18,000 --> 00:36:21,000 Aktyèlman kouri sa a app, si mwen tiyo sou youn nan sa yo bouton 682 00:36:21,000 --> 00:36:24,000 te ki metòd yo te tire jwèt, se konsa sa vle di mwen jis mete 683 00:36:24,000 --> 00:36:31,000 bouton nan yo dwe yon X, pou kounye a bouton sa-a pral yon O, ak sou sa, 684 00:36:31,000 --> 00:36:35,000 ak sa ki nan jan nou ap kòmanse kominike avèk sa a app paj sèl. 685 00:36:35,000 --> 00:36:38,000 >> Nou pral afiche kòd la, se konsa santi yo lib yo parkourir sa, 686 00:36:38,000 --> 00:36:43,000 Men, kite a kounye a pale sou kèk apps ki gen plis pase jis paj youn. 687 00:36:43,000 --> 00:36:47,000 Kòm enteresan kòm zòtèy tik TAC te ye a, yon anpil nan apps andedan nan yo 688 00:36:47,000 --> 00:36:50,000 yo se kalite sa yo fè egzèsis desann bagay sa yo ak griy miltip. 689 00:36:50,000 --> 00:36:54,000 Konsèp an premye ki nou pral bezwen pale sou yo se pwotokòl, 690 00:36:54,000 --> 00:36:57,000 ak yon pwotokòl se senpleman yon seri metòd 691 00:36:57,000 --> 00:36:59,000 ke ou ka pwomèt defini. 692 00:36:59,000 --> 00:37:02,000 Si m 'kreye sa a pwotokòl nouvo ak 2 metòd, yon sèl sa a an premye, 693 00:37:02,000 --> 00:37:05,000 si kalite a retounen se anile, mwen rele l 'foo. 694 00:37:05,000 --> 00:37:07,000 Li pa pran agiman. Mwen gen yon lòt metòd. 695 00:37:07,000 --> 00:37:11,000 Li retounen yon int. Mwen rele l 'defann, epi li pran yon sèl agiman. 696 00:37:11,000 --> 00:37:14,000 Tout bagay sa a pwotokòl se ke yo rele SomeProtocol moute isit la, 697 00:37:14,000 --> 00:37:19,000 sa a se yon seri de bagay sa yo ke yon moun ka aplike. 698 00:37:19,000 --> 00:37:22,000 Mwen pa janm andedan sa a pwotokòl di ki sa foo fè. 699 00:37:22,000 --> 00:37:26,000 Olye de sa, mwen jis di ou ta ka defini foo si ou vle. 700 00:37:26,000 --> 00:37:30,000 Si mwen kreye yon kontwolè vi oubyen kreye yon klas 701 00:37:30,000 --> 00:37:33,000 Mwen ka andedan nan pwomès sa a klas aplike 702 00:37:33,000 --> 00:37:40,000 kèk nan metòd sa yo, se konsa pou egzanp, si di 703 00:37:40,000 --> 00:37:43,000 sa a kounye a di mwen fè yon pwomès ou ke andedan 704 00:37:43,000 --> 00:37:50,000 nan klas sa a kontwolè wè mwen pral gen definisyon pou tou de foo ak ba. 705 00:37:50,000 --> 00:37:52,000 >> Poukisa se sa itil? 706 00:37:52,000 --> 00:37:55,000 Yon anpil nan eleman andedan nan yo pran avantaj de sa a 707 00:37:55,000 --> 00:37:58,000 modèl konsepsyon rele delegasyon, e ki sa delegasyon di 708 00:37:58,000 --> 00:38:01,000 se ke, pou egzanp, si mwen gen yon bwat tèks 709 00:38:01,000 --> 00:38:04,000 ak gen kèk evènman ki te kapab yo enskri andedan nan bwat tèks m 'yo, 710 00:38:04,000 --> 00:38:07,000 olye ke kreye evènman separe sa m 'ka fè se mwen kapab di 711 00:38:07,000 --> 00:38:10,000 delege a nan bwat sa tèks yo pral kèk objè. 712 00:38:10,000 --> 00:38:13,000 Lè m 'di ke sa a se yon delege kounye a ki vle di ke 713 00:38:13,000 --> 00:38:16,000 chak fwa ta gen kèk evènman yo te revoke nan ti bwat la tèks 714 00:38:16,000 --> 00:38:18,000 olye ke gen yo anrejistre li oswa yon bagay tankou sa 715 00:38:18,000 --> 00:38:21,000 li jis ale nan rele yon metòd sou delege a. 716 00:38:21,000 --> 00:38:24,000 Pou egzanp, andedan nan bwat tèks mwen mwen gen yon metòd pou lè m 'peze 717 00:38:24,000 --> 00:38:27,000 ki fè bouton nan dwa anba a, 718 00:38:27,000 --> 00:38:30,000 e konsa olye ke enskri kap okipe-evènman ki sa mwen kapab di se 719 00:38:30,000 --> 00:38:34,000 bwat tèks, isit la se yon bagay ki mwen vle fè w rele yon metòd sou 720 00:38:34,000 --> 00:38:37,000 chak fwa yon moun apwi bouton an fè, 721 00:38:37,000 --> 00:38:40,000 ak ki vle di ke ki objè ki gen aplike kèk pwotokòl 722 00:38:40,000 --> 00:38:45,000 ki di mwen te pwomèt defini ke aksyon bouton fè a, 723 00:38:45,000 --> 00:38:47,000 paske si li pa defini ki metòd, epi ou laprès fè a, 724 00:38:47,000 --> 00:38:49,000 Lè sa a, li la pral fè konfizyon. 725 00:38:49,000 --> 00:38:55,000 >> Se pou nou pran yon gade nan yon egzanp. 726 00:38:55,000 --> 00:38:58,000 Men mwen tou senpleman gen yon sèl bwat tèks, 727 00:38:58,000 --> 00:39:04,000 ak youn nan pwopriyete yo nan bwat sa tèks sou isit la sou bò sa a dwa se delege a. 728 00:39:04,000 --> 00:39:06,000 Sa a se yon pwopriyete nan klas la. 729 00:39:06,000 --> 00:39:09,000 Ki sa mwen te fè isit la se mwen kontwole klike, epi mwen trennen soti nan plas sa a sou isit la 730 00:39:09,000 --> 00:39:13,000 vin gen opinyon kontwolè a, epi ki di kounye a delege a nan bwat sa tèks 731 00:39:13,000 --> 00:39:18,000 a pwal kontwolè a vi. 732 00:39:18,000 --> 00:39:20,000 Sa vle di ke lè kèk aksyon rive, olye ke enskri 733 00:39:20,000 --> 00:39:25,000 pòtè evènman apa mwen vle nou voye yo bay delege a. 734 00:39:25,000 --> 00:39:28,000 Koulye a, kite a pran yon gade nan kontwolè wè m 'yo. 735 00:39:28,000 --> 00:39:32,000 Anndan an. Dosye a h mwen te fè yon pwomès Bondye. 736 00:39:32,000 --> 00:39:36,000 Mwen te pwomèt aplike kèk metòd andedan sa a pwotokòl 737 00:39:36,000 --> 00:39:38,000 rele UITextFieldDelegate, e ankò, 738 00:39:38,000 --> 00:39:42,000 sa a se jis kèk lis kèk bagay sa yo ke mwen ka chwazi a aplike. 739 00:39:42,000 --> 00:39:46,000 >> Si m 'vin isit la nan. M dosye mwen, mwen te aplike yon sèl sa yo metòd. 740 00:39:46,000 --> 00:39:49,000 Mwen te rele l 'textFieldShouldReturn 741 00:39:49,000 --> 00:39:52,000 paske se sa ki sa yo rele andedan nan pwotokòl la. 742 00:39:52,000 --> 00:39:57,000 Epi, koulye a nenpòt lè mwen peze bouton andedan kay la fè nan ki jaden tèks 743 00:39:57,000 --> 00:40:00,000 sa a se sa ki pwal jwenn rele, se konsa mwen pa t 'enskri yon kap okipe-evènman. 744 00:40:00,000 --> 00:40:03,000 Mwen konekte delege a, epi chak fwa gen evenman sa a te tire 745 00:40:03,000 --> 00:40:08,000 sa a se metòd la ki pral jwenn yo rele, se konsa si mwen vin sou isit la yo scénario m 'ak kouri li- 746 00:40:08,000 --> 00:40:11,000 pandan y ap ki nan loading nou ka wè ki sa sa a fè. 747 00:40:11,000 --> 00:40:13,000 Sou ekran m 'mwen gen 2 bagay sa yo. 748 00:40:13,000 --> 00:40:16,000 Mwen gen jaden sa a tèks, mwen gen sa a mete etikèt sou. 749 00:40:16,000 --> 00:40:19,000 Mwen senpleman di mwen vle tèks sa-a mete etikèt sou 750 00:40:19,000 --> 00:40:23,000 yo dwe egal a kèlkeswa sa itilizatè a tape nan andedan nan jaden an tèks. 751 00:40:23,000 --> 00:40:26,000 Liy sa a pwochen isit la se tou senpleman yon metòd ki m ap rele 752 00:40:26,000 --> 00:40:29,000 sou jaden an tèks ki di mwen vle fè w kache klavye la. 753 00:40:29,000 --> 00:40:33,000 Sa a se jis metòd la abitrè ke Apple te chwazi. 754 00:40:33,000 --> 00:40:38,000 >> Yon fwa ankò, anvan m 'te fè anyen mwen te gen nan pwent fil tout bagay moute, se konsa Mwen te vin premye sou isit la. 755 00:40:38,000 --> 00:40:42,000 Soti nan kontwolè a wè mwen trennen sou nan bwat la tèks. 756 00:40:42,000 --> 00:40:46,000 Mwen kite ale, epi mwen ka wè isit la ke mwen ka fè sa-a tèks pwopriyete a jaden 757 00:40:46,000 --> 00:40:49,000 depi plis pase isit la nan kontwolè a wè mwen te defini yon pwopriyete 758 00:40:49,000 --> 00:40:52,000 ki se yon IBOutlet nan yon jaden tèks. 759 00:40:52,000 --> 00:40:55,000 Sa a di ke mwen ka WIRE pwopriyete sa a moute 760 00:40:55,000 --> 00:40:59,000 nan yon jaden tèks nan UI m 'yo. 761 00:40:59,000 --> 00:41:03,000 Koulye a, lè m 'klike sou sa, mwen ka kòmanse sezisman. 762 00:41:03,000 --> 00:41:06,000 Koulye a, si mwen klike sou bouton a te fè sa ki pral nan dife 763 00:41:06,000 --> 00:41:08,000 yon evènman ki mwen kapab kounye a reponn a. 764 00:41:08,000 --> 00:41:10,000 Pa gen evènman pòtè. 765 00:41:10,000 --> 00:41:13,000 Sa a se ki jan mwen jis reponn a ki bouton fè. 766 00:41:13,000 --> 00:41:15,000 Fè sans? 767 00:41:15,000 --> 00:41:20,000 >> Sa a se pa yon modèl desen ki-ou pa ta ka janm jwenn tèt ou 768 00:41:20,000 --> 00:41:23,000 kreye pwotokòl pwòp ou a, men jis konnen ke gen kèk 769 00:41:23,000 --> 00:41:27,000 diferan eleman yo enskri evènman nan diferan fason. 770 00:41:27,000 --> 00:41:29,000 Bouton, pou egzanp, itilize sa yo IBActions. 771 00:41:29,000 --> 00:41:32,000 Jaden tèks, sou la lòt bò, yo pwal itilize yo delege. 772 00:41:32,000 --> 00:41:36,000 Nou ka wè, epi ou ka gade nan tout sa andedan leve nan dokiman an. 773 00:41:36,000 --> 00:41:41,000 By wout la, gen nan aktyèlman yon tòn bagay UI bati nan yo pou ou, 774 00:41:41,000 --> 00:41:46,000 se konsa pou egzanp, wout la mwen te fè ki di fè sa ki a dwat anba a 775 00:41:46,000 --> 00:41:48,000 se mwen chwazi jaden sa a tèks. 776 00:41:48,000 --> 00:41:50,000 M 'te vin sou isit la. 777 00:41:50,000 --> 00:41:53,000 Mwen defile desann yon ti jan retounen kle yo, 778 00:41:53,000 --> 00:41:56,000 e mwen ka aktyèlman fè sa-a yon pakèt antye de bagay sa yo, tankou si mwen vle ki vle di 779 00:41:56,000 --> 00:42:00,000 ijans rele olye mwen ka fè sa, ki se totalman o aza, 780 00:42:00,000 --> 00:42:02,000 ak Mwen pa konnen poukisa gen yon ijans bati-an bouton rele, 781 00:42:02,000 --> 00:42:06,000 men gen, li di pou ka dijans nan lèt vrèman piti. 782 00:42:06,000 --> 00:42:08,000 Gen ou ale. 783 00:42:08,000 --> 00:42:12,000 >> Definitivman eksplore tout nan opsyon sa yo diferan nan yo. 784 00:42:12,000 --> 00:42:14,000 Nenpòt kesyon sou delege? 785 00:42:14,000 --> 00:42:18,000 Yon fwa ankò, jis yon modèl konsepsyon enteresan ke ou ta dwe okouran de. 786 00:42:18,000 --> 00:42:22,000 Oke, kite la pwochen pran yon gade nan opinyon tab. 787 00:42:22,000 --> 00:42:26,000 Yon View tab se fondamantalman ki lis atik ki se sou tout plas la nan yo. 788 00:42:26,000 --> 00:42:29,000 Lè w ap ranvèrsan atravè tout sou kontak ou a, w ap chèche a 789 00:42:29,000 --> 00:42:34,000 se paj la kouche, ak ki kalite lis de bagay sa yo rele yon View tab. 790 00:42:34,000 --> 00:42:37,000 Mete annaplikasyon yon View tab nan yo se trè senp. 791 00:42:37,000 --> 00:42:41,000 Olye pou yo fè yon klas ki desann soti nan ki UIViewController 792 00:42:41,000 --> 00:42:44,000 tankou nou te fè anvan nou tou senpleman bezwen di olye ke 793 00:42:44,000 --> 00:42:46,000 tout bagay yon UIViewController mwen vle fè a, 794 00:42:46,000 --> 00:42:50,000 M 'di nou tout bagay yon UITableViewController mwen vle fè a, 795 00:42:50,000 --> 00:42:54,000 pou ke tou senpleman ajoute kèk bagay anplis ke yo totalman fè pou nou. 796 00:42:54,000 --> 00:42:58,000 Nou bezwen fè anpil ti fondamantalman ranpli nan espas vid yo andedan nan tab la. 797 00:42:58,000 --> 00:43:02,000 >> Yo nan lòd yo montre yon tab mwen bezwen reponn kèk kesyon. 798 00:43:02,000 --> 00:43:06,000 Kesyon an premye fwa mwen bezwen reponn se konbyen seksyon yo nan tablo a? 799 00:43:06,000 --> 00:43:08,000 Lè w ap ranvèrsan nan app kontak ou, ou pral avi ke li nan kalite 800 00:43:08,000 --> 00:43:12,000 òganize pa Kòm a, Lè sa a, ou gen B a, epi ou gen sa ti kras header sub. 801 00:43:12,000 --> 00:43:14,000 Chak nan sa yo yo rele yon seksyon. 802 00:43:14,000 --> 00:43:16,000 Ou ka oswa ka pa bezwen sa yo. 803 00:43:16,000 --> 00:43:19,000 Premye bagay ou bezwen fè se mete sou pye yon metòd 804 00:43:19,000 --> 00:43:22,000 rele tableView: numberOfSectionsInTableView. 805 00:43:22,000 --> 00:43:25,000 Ki tou senpleman retounen konbyen seksyon ou genyen, 806 00:43:25,000 --> 00:43:29,000 kidonk sa a kapab di retounen yon sèl si ou gen youn gwo View tab. 807 00:43:29,000 --> 00:43:33,000 Nan pwochen kesyon an ki yo bezwen konnen ki jan anpil ranje ou genyen? 808 00:43:33,000 --> 00:43:36,000 Pou egzanp, w ap ranvèrsan nan yon View tab. 809 00:43:36,000 --> 00:43:39,000 Ou gen yon nimewo fiks de chante w ap chèche a oswa yon nimewo fiks de kontak. 810 00:43:39,000 --> 00:43:41,000 Si ou se m ', nan kou, pa ke anpil, 811 00:43:41,000 --> 00:43:44,000 ak sa ki nan jan yo konnen ki jan anpil selil yo montre. 812 00:43:44,000 --> 00:43:46,000 >> Yon fwa ankò, sa a te kapab di yon bagay tankou retounen 3. 813 00:43:46,000 --> 00:43:49,000 View tab avè m 'gen 3 ranje. 814 00:43:49,000 --> 00:43:52,000 Finalman, yo bezwen konnen ki sa chak selil sanble, 815 00:43:52,000 --> 00:43:54,000 Se konsa, sa li a aktyèlman pral fè se rele metòd sa a desann isit la, 816 00:43:54,000 --> 00:43:57,000 sa a tableView: cellForRowAtIndexPath. 817 00:43:57,000 --> 00:44:01,000 Li nan ale nan rele metòd sa a sou chak selil sèl andedan nan tab ou. 818 00:44:01,000 --> 00:44:03,000 Ki jan li konnen konbyen fwa yo rele li? 819 00:44:03,000 --> 00:44:06,000 Oke, ou te di l 'anndan kantite ranje nan seksyon. 820 00:44:06,000 --> 00:44:08,000 Nou pral rele sa a sou chak nan selil nou an, 821 00:44:08,000 --> 00:44:11,000 ak andedan nan sa a se kote ou ka aktyèlman fè bagay sa yo tankou 822 00:44:11,000 --> 00:44:16,000 mete tèks la oswa fè w konnen kisa ki bouton ti kras ble sou bò dwat la fè. 823 00:44:16,000 --> 00:44:19,000 Modèl la pou jwenn selil sa yo, nou pwal sèvi ak metòd sa a 824 00:44:19,000 --> 00:44:22,000 rele dequeueReusableCellWithIdentifier. 825 00:44:22,000 --> 00:44:29,000 >> Objektif-C se aktyèlman trè byen li te ye pou longè a ridikil nan non metòd yo, 826 00:44:29,000 --> 00:44:32,000 ak sa a se reyèlman yon ka bèl nan egzanp pwen. 827 00:44:32,000 --> 00:44:37,000 Ki sa ki metòd sa a fè, se sa a jis di mwen vle nou ban m 'yon selil. 828 00:44:37,000 --> 00:44:39,000 Jis yon yo bagay sa yo. 829 00:44:39,000 --> 00:44:41,000 Si ou gen yon bagay tankou 100,000 chante sou iPod ou 830 00:44:41,000 --> 00:44:45,000 ki sa yo pa vle fè se asiyen 100,000 selil, 831 00:44:45,000 --> 00:44:48,000 paske si w ap nan tèt la nan lis ou a, ou reyèlman bezwen asiyen memwa 832 00:44:48,000 --> 00:44:51,000 pou selil la ki nan 99.000 ranje desann? 833 00:44:51,000 --> 00:44:55,000 Non, paske kòm w ap defile ou kapab kalite asiyen menm jan ou ale ansanm. 834 00:44:55,000 --> 00:44:57,000 Sa a se fè pou ou. 835 00:44:57,000 --> 00:44:59,000 Ou pa gen enkyete sou tout bagay ki estipid pèfòmans. 836 00:44:59,000 --> 00:45:02,000 Tout sa ou di a ou rele sa a dequeueReusableCellWithIdentifier metòd, 837 00:45:02,000 --> 00:45:06,000 ak sa a di, oke, si ou bezwen mwen pral kreye yon selil nouvo pou ou. 838 00:45:06,000 --> 00:45:09,000 >> Men, si ou se nan pati anba a nan tablo a epi ou te deja resevwa lajan kèk selil 839 00:45:09,000 --> 00:45:12,000 nan tèt yo nan tablo a ke w ap vrèman pa ale nan bezwen nenpòt ki lè byento 840 00:45:12,000 --> 00:45:15,000 Mwen pral ba ou youn nan moun ki dèyè olye pou yo allocation yon nouvo, 841 00:45:15,000 --> 00:45:17,000 ak kidonk sa a se yon pwoblèm pèfòmans bèl. 842 00:45:17,000 --> 00:45:21,000 Ou pa oblije asiyen selil yo tèt ou. 843 00:45:21,000 --> 00:45:23,000 Sa a pral ba ou tounen yon selil. 844 00:45:23,000 --> 00:45:25,000 Li nan ale nan tounen vin jwenn nou yon objè selil. 845 00:45:25,000 --> 00:45:28,000 Yon fwa ou gen objè a selil ou ka fè bagay ak li. 846 00:45:28,000 --> 00:45:32,000 Ou ka mete tèks la nan selil la ak pwopriyete sa a yo rele mete etikèt sou tèks la. 847 00:45:32,000 --> 00:45:36,000 Ou kapab ajoute ke flèch sou bò dwat la oswa kèk lòt bagay o aza 848 00:45:36,000 --> 00:45:41,000 ak sa a pwopriyete lòt te rele accessoryType, ak sou sa ak sou sa. 849 00:45:41,000 --> 00:45:46,000 >> Se pou nou pran yon gade nan aktyèlman mete ann aplikasyon yon View tab kounye a. 850 00:45:46,000 --> 00:45:49,000 Lè m 'te kreye pwojè sa a 851 00:45:49,000 --> 00:45:53,000 olye ke li di yon sèl aplikasyon wè mwen aktyèlman te vin sou isit la 852 00:45:53,000 --> 00:45:57,000 jwenn mèt-detay aplikasyon an, ak Se konsa, fondamantalman sa a koresponn app a lapòs 853 00:45:57,000 --> 00:46:01,000 sou iPad a ak gade nan tablo sou bò gòch la ak Lè sa a, sa ki sou bò dwat la. 854 00:46:01,000 --> 00:46:07,000 Sou iPod la oswa ifon sa a ki pral koresponn ak yon View tab sèl. 855 00:46:07,000 --> 00:46:10,000 Sa a kote mwen te resevwa kòd starter m 'yo. 856 00:46:10,000 --> 00:46:13,000 >> Se pou nou premye pran yon gade nan scénario la. 857 00:46:13,000 --> 00:46:15,000 Tout sa yo te fè pou m ', fondamantalman kreye. 858 00:46:15,000 --> 00:46:18,000 Sa a ba Navigasyon moutre m 'sa ki yon selil egzanp ta ka sanble, 859 00:46:18,000 --> 00:46:22,000 e mwen kapab doub klike sou sa a, chanje tit la. 860 00:46:22,000 --> 00:46:25,000 Nenpòt enkyetid UI lòt mwen ka okipe a. 861 00:46:25,000 --> 00:46:27,000 Dosye a header sanble vrèman senp. 862 00:46:27,000 --> 00:46:30,000 Olye de li di sa a se UIViewController nou ap kounye a li di sa a se yon 863 00:46:30,000 --> 00:46:35,000 TableViewController, konsa nou konnen ke nou vle rele tout moun sa yo metòd tab. 864 00:46:35,000 --> 00:46:38,000 Next mwen vle kreye yon pwopriyete ki nan ale nan reprezante 865 00:46:38,000 --> 00:46:40,000 bagay sa yo andedan nan tab mwen. 866 00:46:40,000 --> 00:46:43,000 Tablo sa a ki pral abitrèman montre 867 00:46:43,000 --> 00:46:46,000 yon lis fwi, ak Se konsa, mwen bezwen yo kreye kèk etalaj 868 00:46:46,000 --> 00:46:49,000 nan ki mwen ka insert fwi. 869 00:46:49,000 --> 00:46:52,000 Anndan nan dosye aplikasyon mwen an nan premye bagay mwen vle fè 870 00:46:52,000 --> 00:46:55,000 se mwen vle asire yo ke mwen inisyalize sa a etalaj. 871 00:46:55,000 --> 00:46:58,000 >> M 'te di alok ini, te kreye etalaj fwi m' yo, 872 00:46:58,000 --> 00:47:03,000 ak mwen ajoute 4 bagay sa yo nan li, youn nan ki se pi plis kontwovèsyal pase 3 an ak lòt. 873 00:47:03,000 --> 00:47:06,000 Epi, koulye a mwen gen yon etalaj de gwosè 4. 874 00:47:06,000 --> 00:47:08,000 Nou ap souke l 'kanpe nan CS50. 875 00:47:08,000 --> 00:47:11,000 Mwen kounye a gen yon etalaj de gwosè 4. 876 00:47:11,000 --> 00:47:13,000 Koulye a, mwen pral kòmanse reponn kesyon sa yo, ak aktyèlman, 877 00:47:13,000 --> 00:47:16,000 lè mwen te kreye sa a app tout bagay sa yo te deja fè pou mwen. 878 00:47:16,000 --> 00:47:19,000 Mwen pa t 'gen tape soti nimewo a nan seksyon nan gade tab. 879 00:47:19,000 --> 00:47:22,000 Li te deja la, ak mwen ranpli nan espas vid yo. 880 00:47:22,000 --> 00:47:24,000 Konbyen seksyon mwen genyen? 881 00:47:24,000 --> 00:47:26,000 Yon sèl. Tout fè. 882 00:47:26,000 --> 00:47:28,000 Konbyen ranje mwen genyen? 883 00:47:28,000 --> 00:47:31,000 Oke, mwen gen yon sèl ranje pou chak fwi, kidonk sa a konte 884 00:47:31,000 --> 00:47:34,000 se yon pwopriyete nan nenpòt ki pozisyon ki di konbyen gwo se li? 885 00:47:34,000 --> 00:47:36,000 Sa a se konbyen ranje m 'genyen. 886 00:47:36,000 --> 00:47:42,000 Finalman, mwen bezwen di sa chak selil sanble? 887 00:47:42,000 --> 00:47:46,000 Mwen pral di dequeueReusableCellWithIdentifier. 888 00:47:46,000 --> 00:47:48,000 >> Yon fwa ankò, sa a te deja ekri pou mwen. 889 00:47:48,000 --> 00:47:51,000 Mwen pa t 'dwe fè sa a tèt mwen, e mwen vle jwenn tounen 890 00:47:51,000 --> 00:47:54,000 selil sa a nan sa a kote. 891 00:47:54,000 --> 00:47:57,000 Sonje ke nou ap rele metòd sa a menm sou chak selil sèl, 892 00:47:57,000 --> 00:48:01,000 ak sa a agiman isit la, sa a agiman indexPath, 893 00:48:01,000 --> 00:48:03,000 di ki sa ranje Mwen pous 894 00:48:03,000 --> 00:48:05,000 Si mwen di indexPath.row desann isit la 895 00:48:05,000 --> 00:48:09,000 sa a pral 0, Lè sa a, li pral 1, Lè sa a, li pral 2, ak sa a se konsa mwen konnen 896 00:48:09,000 --> 00:48:11,000 ki sa selil mwen kounye a ki montre. 897 00:48:11,000 --> 00:48:15,000 Mwen vle yo mete tèks la nan selil la lè l sèvi avèk sa a se pwopriyete textLabel 898 00:48:15,000 --> 00:48:19,000 nan ale andedan etalaj fwi mwen epi pou yo jwenn 899 00:48:19,000 --> 00:48:21,000 objè a ki koresponn a chak ranje. 900 00:48:21,000 --> 00:48:24,000 Si sa a se yon fisèl, mwen kounye a mete 901 00:48:24,000 --> 00:48:28,000 tèks pwopriyete a nan yon fisèl. 902 00:48:28,000 --> 00:48:30,000 Mwen kapab fè yon lòt bagay. 903 00:48:30,000 --> 00:48:32,000 Mwen ka anrejistre tou yon kap okipe-evènman sou chak nan selil yo, 904 00:48:32,000 --> 00:48:35,000 Se konsa, lè mwen tape chak nan selil sa yo 905 00:48:35,000 --> 00:48:39,000 sa a didSelectRowAtIndexPath, sa a yo pral rele pou m ', 906 00:48:39,000 --> 00:48:42,000 se konsa tou senpleman pa defini sa a mwen kapab kounye a okipe sa k ap pase 907 00:48:42,000 --> 00:48:46,000 lè w tape yon selil, e ankò, nou ap pase nan ki selil te eksplwatè 908 00:48:46,000 --> 00:48:50,000 pou nou ka jam itilize sa a kap okipe-evènman menm pou tout moun nan selil nou an. 909 00:48:50,000 --> 00:48:53,000 >> Yon fwa ankò, sa a se yon bagay yo ap fè pou mwen. 910 00:48:53,000 --> 00:48:55,000 Se pou nou montre yon lòt kontèkstuèl anmèdan 911 00:48:55,000 --> 00:48:59,000 ki tou senpleman di ke ou te chwazi yon bagay kote ke yon bagay 912 00:48:59,000 --> 00:49:04,000 a pwal objè a ranje. 913 00:49:04,000 --> 00:49:10,000 Lè m 'kouri sa a, mwen pral gen sa a View tab bèl 914 00:49:10,000 --> 00:49:14,000 ak yon sèl ranje pou chak nan sa yo fwi, ak si mwen tape yon sèl 915 00:49:14,000 --> 00:49:16,000 li di m 'sa ki te pase. 916 00:49:16,000 --> 00:49:21,000 Fè sans? 917 00:49:21,000 --> 00:49:24,000 Se pou nou bati yon ti jan ti kras pi plis konplèks nan yon app, 918 00:49:24,000 --> 00:49:28,000 otan ke ou te chwazi klike sou tomat se. 919 00:49:28,000 --> 00:49:31,000 Pati nan bèl sou storyboarding la 920 00:49:31,000 --> 00:49:35,000 se li pa sèlman pral ede nou nan ekran konsepsyon endividyèlman, 921 00:49:35,000 --> 00:49:38,000 Li la tou pral ede nou mare ansanm app tout nou an, 922 00:49:38,000 --> 00:49:42,000 Se konsa app a final nou pral bilding sa a bèl espò nouvèl lektè, 923 00:49:42,000 --> 00:49:45,000 ak Se konsa, li pral gen ekran miltip, ak Se konsa, mwen ka aktyèlman reprezante 924 00:49:45,000 --> 00:49:48,000 chak nan sa yo ekran miltip sou scénario a, 925 00:49:48,000 --> 00:49:52,000 e mwen ka rale soti, yo wè app mwen yo ki nan yon wo nivo. 926 00:49:52,000 --> 00:49:55,000 >> Yo nan lòd yo kreye yon andedan eleman nouvo nan scénario mwen 927 00:49:55,000 --> 00:49:59,000 li nan vrèman senp andedan nan konstrukteur Entèfas. 928 00:49:59,000 --> 00:50:01,000 Si m 'vle ajoute yon lòt ekran sa a, pou egzanp, 929 00:50:01,000 --> 00:50:06,000 Mwen ka premye rale soti ak rale nan zongle ke Apple renmen anpil, 930 00:50:06,000 --> 00:50:09,000 , li desann isit la anvan m 'rechèch pou yon bouton 931 00:50:09,000 --> 00:50:12,000 epi mwen trennen ak gout yon bouton 932 00:50:12,000 --> 00:50:15,000 si mwen vle kreye yon ekran nouvo mwen ka aktyèlman jis trennen ak gout 933 00:50:15,000 --> 00:50:19,000 yon kontwolè wè tout, se konsa si mwen chwazi sa a, rale li sou isit la, 934 00:50:19,000 --> 00:50:23,000 hey, gen nan yon lòt ekran, ak konsa koulye a lè l sèvi avèk sa a ranpli scénario menm 935 00:50:23,000 --> 00:50:26,000 Mwen ka gen tout ekran yo andedan nan app mwen, mwen menm ka rale soti 936 00:50:26,000 --> 00:50:28,000 ak wè ki jan yo kominike. 937 00:50:28,000 --> 00:50:32,000 Sa yo pa pral kominike ankò. 938 00:50:32,000 --> 00:50:36,000 Wout la nan ki sa yo ekran 2 kominike se ou defini relasyon. 939 00:50:36,000 --> 00:50:39,000 Ou ka fondamantalman di sa a ekran, lè ou peze bouton sa-a, 940 00:50:39,000 --> 00:50:42,000 Mwen vle fè w glise sou sa a ekran nouvo. 941 00:50:42,000 --> 00:50:44,000 Sa vle di gen nan sa a kalite relasyon ant 942 00:50:44,000 --> 00:50:46,000  ekran an premye ak ekran an dezyèm fwa. 943 00:50:46,000 --> 00:50:49,000 Ou ap gen fondamantalman yon flèch nan sa bouton ekran an dezyèm 944 00:50:49,000 --> 00:50:53,000 ki di ke lè ou peze bouton sa-a ki nan kote mwen vle ale. 945 00:50:53,000 --> 00:50:57,000 Jis tankou nou kontwole klike ak trennen defini moun ki plòg 946 00:50:57,000 --> 00:51:01,000 nou pwal fè menm bagay la defini sa yo segues. 947 00:51:01,000 --> 00:51:05,000 >> Nou pral wè yon egzanp pou sa, epi anvan nou aktyèlman tranzisyon 948 00:51:05,000 --> 00:51:08,000 soti nan yon ekran a yon lòt yo se bèl ase yo rele metòd sa a 949 00:51:08,000 --> 00:51:11,000 rele prepareForSegue, e sa se kote nou kapab kòmanse 950 00:51:11,000 --> 00:51:14,000 voye done ki sòti nan yon sèl app a yon lòt. 951 00:51:14,000 --> 00:51:17,000 Nan egzanp lan nou ap sou fè yon gade nan li pral fondamantalman pèmèt nou 952 00:51:17,000 --> 00:51:20,000 filtre ekip bezbòl pa lig ak divizyon. 953 00:51:20,000 --> 00:51:23,000 Lè m 'chwazi yon lig, pou egzanp, mwen vle tranzisyon 954 00:51:23,000 --> 00:51:25,000 nan pwochen ekran m 'kote m ka montre tout nan divizyon yo 955 00:51:25,000 --> 00:51:27,000 nan ki lig oswa tout ekip yo diferan. 956 00:51:27,000 --> 00:51:31,000 Mwen bezwen pou voye bay ki ekran ki sa ekip ou ta dwe montre. 957 00:51:31,000 --> 00:51:35,000 Pou fè sa mwen pral pwofite pran avantaj nan metòd sa a isit la. 958 00:51:35,000 --> 00:51:39,000 >> Finalman, jis yon pwen o aza sou yo. 959 00:51:39,000 --> 00:51:41,000 Si ou vle nan magazen done gen nan bagay sa yo rele done debaz yo, 960 00:51:41,000 --> 00:51:44,000 ki se aktyèlman kalite konplike yo travay avèk. 961 00:51:44,000 --> 00:51:47,000 Ou kapab tou itilize SQL nan magazen done, 962 00:51:47,000 --> 00:51:51,000 ki, ankò, se bèl men kalite sou bò pi konplike yo travay avèk, 963 00:51:51,000 --> 00:51:55,000 men yo sipòte tou bagay sa yo vrèman fre rele lis pwopriyete, 964 00:51:55,000 --> 00:52:00,000 ak yon lis pwopriyete se jis yon dosye ki reprezante pè valè kle. 965 00:52:00,000 --> 00:52:03,000 Ou defini yon lis nan kle, nou di sa a kle a pwal yon etalaj. 966 00:52:03,000 --> 00:52:06,000 Sa a kle a pwal yon fisèl, ak fondamantalman anyen ou ka fè 967 00:52:06,000 --> 00:52:10,000 nan JSON ou ka fè andedan nan yon lis pwopriyete, 968 00:52:10,000 --> 00:52:14,000 ak sa a sa a vrèman joliman pèmèt nou travay avèk kèk done. 969 00:52:14,000 --> 00:52:18,000 Pou egzanp, mwen gen sa a Teams.plist ke mwen te kreye. 970 00:52:18,000 --> 00:52:22,000 Mwen kreye yon dosye plist nouvo, e mwen ka fè egzèsis desann. 971 00:52:22,000 --> 00:52:26,000 Sa a se yon diksyonè, sa a se yon diksyonè, diksyonè sa yo, se strings, 972 00:52:26,000 --> 00:52:30,000 epi konsa sa a se yon reprezantasyon grafik bèl nan yon dokiman JSON 973 00:52:30,000 --> 00:52:33,000 oswa jis yon seri pè valè kle yo, 974 00:52:33,000 --> 00:52:37,000 ak kidonk sa a se done yo ke mwen pral travay ak andedan app m 'yo. 975 00:52:37,000 --> 00:52:40,000 >> Se pou nou vin anvan sou isit la. Nou gen yon anpil plis dosye kounye a. 976 00:52:40,000 --> 00:52:44,000 Men, kite a premye vin sou isit la yo scénario la. 977 00:52:44,000 --> 00:52:48,000 Scénario a isit la-si mwen ka rale soti- 978 00:52:48,000 --> 00:52:51,000 nou ka wè koulye a ke sa a se koule nan app m 'yo. 979 00:52:51,000 --> 00:52:53,000 Mwen premye pral kòmanse nan paj ekran sa. 980 00:52:53,000 --> 00:52:55,000 Mwen pral fè egzèsis desann nan sa a ekran, 981 00:52:55,000 --> 00:52:58,000 ak mwen pral fè egzèsis desann nan sa a ekran, epi nou ka wè isit la ke si mwen kalite 982 00:52:58,000 --> 00:53:04,000 deplase youn nan sa yo otou nou te sa yo flèch pral soti isit la isit la, 983 00:53:04,000 --> 00:53:08,000 ak fason mwen defini ki flèch te si mwen rale nan yon ti jan, 984 00:53:08,000 --> 00:53:12,000 ak si mwen vin sou sa a kontwolè vi, 985 00:53:12,000 --> 00:53:16,000 ak isit la a yon selil, e mwen vle yo di ke lè w tape yon selil 986 00:53:16,000 --> 00:53:18,000 Mwen vle fè w glise sou ekran a yon lòt. 987 00:53:18,000 --> 00:53:21,000 Mwen kapab annik kenbe desann kontwòl, 988 00:53:21,000 --> 00:53:26,000 woulo liv sou yon ti jan, kenbe desann kontwòl, trennen selil sa a sou yo ak kite ale. 989 00:53:26,000 --> 00:53:30,000 >> Yo ak sou isit la nou di sa ki nan tranzisyon an ke ou vle itilize? 990 00:53:30,000 --> 00:53:32,000 ou vle itilize ke bagay glise ki yo rele pouse? 991 00:53:32,000 --> 00:53:34,000 ou vle glise moute anba nan fon an? 992 00:53:34,000 --> 00:53:36,000 Sa yo rele modal. 993 00:53:36,000 --> 00:53:40,000 E yon fwa mwen klike sou youn nan sa yo, li pral fè desen sa a flèch pou m ', 994 00:53:40,000 --> 00:53:44,000 ak ki vle di ke mwen te aktyèlman okipe sa k ap pase lè m 'peze bouton sa-a grafikman. 995 00:53:44,000 --> 00:53:48,000 Mwen pa t 'ekri nenpòt kòd aktyèlman glise soti nan yon ekran nan yon sèl kap vini an. 996 00:53:48,000 --> 00:53:51,000 Mwen defini sa a vizyèlman andedan nan konstrukteur Entèfas. 997 00:53:51,000 --> 00:53:55,000 Si m 'klike sou sa a flèch, nou ka wè ke mwen te bay bagay sa a yon non. 998 00:53:55,000 --> 00:53:59,000 Mwen rele l 'showDivisions, e sa se pou m' ka konnen 999 00:53:59,000 --> 00:54:03,000 ki sa tranzisyon se sou yo rive, epi nou pral wè poukisa nan jis sec yon. 1000 00:54:03,000 --> 00:54:06,000 Sa a se ki jan mwen te branche moute ekran yo diferan nan app m 'yo. 1001 00:54:06,000 --> 00:54:09,000 Si sa a te yon bouton, pou egzanp, olye ke yon View tab, 1002 00:54:09,000 --> 00:54:11,000 Mwen te kapab kontwole klike sou bouton a, trennen sou nan pwochen ekran an, 1003 00:54:11,000 --> 00:54:16,000 ak lè sa a jan mwen kapab fè navigasyon ki fason. 1004 00:54:16,000 --> 00:54:19,000 >> Vrèman byen vit, si nou antre nan MasterViewController a, 1005 00:54:19,000 --> 00:54:22,000 ankò, nou ap tou senpleman ale nan defini yon lis bagay 1006 00:54:22,000 --> 00:54:26,000 ke yo pral parèt nan gade nan tab. 1007 00:54:26,000 --> 00:54:29,000 Isit la m ap di mwen vle fè w pran ki dosye plist, 1008 00:54:29,000 --> 00:54:32,000 e mwen vle ou nan chaj li moute nan yon diksyonè, diksyonè 1009 00:54:32,000 --> 00:54:35,000 epi yon fwa ou gen sa diksyonè, mwen pral reponn kesyon sa yo menm ankò. 1010 00:54:35,000 --> 00:54:37,000 Isit la se nimewo a nan seksyon. 1011 00:54:37,000 --> 00:54:41,000 Youn nan, gen yon ranje pou chak lig, ak tèks la nan chak selil 1012 00:54:41,000 --> 00:54:46,000 yo ta dwe youn nan premye, lig a an premye, lig, dezyèm lan, ak sou sa. 1013 00:54:46,000 --> 00:54:51,000 Finalman, mwen pral sèvi ak metòd sa a ke nou jis te wè yo rele prepareForSegue, 1014 00:54:51,000 --> 00:54:54,000 e sa se metòd la ki k ap pase yo dwe revoke lè mwen klike sou 1015 00:54:54,000 --> 00:54:57,000 sou youn nan moun ki ranje ak Se poutèt sa aktive ke tranzisyon 1016 00:54:57,000 --> 00:54:59,000 ke mwen mete kanpe ak flèch yo. 1017 00:54:59,000 --> 00:55:02,000 Sa a se ki di ke mwen ka gen plizyè 1018 00:55:02,000 --> 00:55:05,000 relasyon soti nan yon ekran a yon lòt. 1019 00:55:05,000 --> 00:55:08,000 Si mwen gen 2 bouton ak chak bouton pran ou nan yon ekran diferan 1020 00:55:08,000 --> 00:55:10,000 Mwen pral gen 2 segues, 1 pou chak bouton. 1021 00:55:10,000 --> 00:55:14,000 Men, sa a prepareForSegue se, ankò, ale nan itilize yo ankò 1022 00:55:14,000 --> 00:55:17,000 pou chak nan relasyon yo diferan, se konsa ke vle di ke mwen bezwen yon fason 1023 00:55:17,000 --> 00:55:21,000 pou idantifye si ou peze bouton an premye oswa ou peze bouton an dezyèm fwa. 1024 00:55:21,000 --> 00:55:25,000 >> Sonje lè mwen te bay ki seg yon non, sa a showDivisions, 1025 00:55:25,000 --> 00:55:29,000 sa a jan mwen kounye a konnen ke sa a se seg a ki te aktive. 1026 00:55:29,000 --> 00:55:32,000 Tout sa mwen vle fè se mwen vle di 1027 00:55:32,000 --> 00:55:35,000 Mwen vle konnen sa ki mwen jis frape, 1028 00:55:35,000 --> 00:55:38,000 e konsa yo ka resevwa sa, mwen ka di mwen vle indexPath la pou ranje a chwazi, 1029 00:55:38,000 --> 00:55:42,000 sonje indexPath la jis di kote mwen jis klike, 1030 00:55:42,000 --> 00:55:47,000 ak Lè sa a, mwen vle di mwen vle konnen ki kote mwen pral. 1031 00:55:47,000 --> 00:55:50,000 Sa a destinationViewController, sa se yon pwopriyete nan seg la. 1032 00:55:50,000 --> 00:55:53,000 Sa a ekran an mwen pral, 1033 00:55:53,000 --> 00:55:56,000 Se konsa, mwen konnen ki ekran an mwen pral rele DivisionsViewController 1034 00:55:56,000 --> 00:55:59,000 paske mwen te kreye ki klas, 1035 00:55:59,000 --> 00:56:02,000 ak konsa koulye a si mwen di d.divisions 1036 00:56:02,000 --> 00:56:06,000 Mwen kounye a mete yon pwopriyete nan kontwolè a wè m gen pou yo ale nan. 1037 00:56:06,000 --> 00:56:10,000 Sa a se fason M'ap voye done ki sòti nan yon ekran a yon lòt ekran. 1038 00:56:10,000 --> 00:56:13,000 >> Jis gade nan sa a DivisionsViewController 1039 00:56:13,000 --> 00:56:16,000 ou ka wè isit la ke nan. dosye a h 1040 00:56:16,000 --> 00:56:20,000 gen se ke divizyon pwopriyete, ak sa a, se sa m ap fondamantalman pepleman, 1041 00:56:20,000 --> 00:56:25,000 pou ki nan Kouman pou mwen konnen ke mwen montre divizyon yo ki koresponn a 1042 00:56:25,000 --> 00:56:28,000 lig la ke mwen klike, e ankò, 1043 00:56:28,000 --> 00:56:31,000 gade nan tablo aktyèl sanble bèl anpil menm bagay la, jis reponn sa yo 1044 00:56:31,000 --> 00:56:34,000 3 kesyon ki senp kòm byen ke idantifye 1045 00:56:34,000 --> 00:56:37,000 sa ki pase lè ou ale viv nan pwochen ekran an. 1046 00:56:37,000 --> 00:56:40,000 Jis yon koup nan lòt bagay isit la. 1047 00:56:40,000 --> 00:56:43,000 Ou remake nan tèt la isit la ke olye ke li di # gen ladan yo 1048 00:56:43,000 --> 00:56:45,000 Mwen kounye a li di # enpòte. 1049 00:56:45,000 --> 00:56:47,000 Sa a se jis yon bagay Objektif-C. 1050 00:56:47,000 --> 00:56:52,000 Enpòte a se fondamantalman yon vèsyon joli nan enkli, 1051 00:56:52,000 --> 00:56:57,000 ak pou egzanp, nou bezwen konnen ki sa klas sa a se, 1052 00:56:57,000 --> 00:57:00,000 Se konsa, mwen pa ka jis di DivisionsViewController. 1053 00:57:00,000 --> 00:57:05,000 Si nou pa t 'hashtag standardio.c andedan nan dosye-a. Nou an c 1054 00:57:05,000 --> 00:57:07,000 du a pa te gen okenn lide ki sa printf te ye a. 1055 00:57:07,000 --> 00:57:12,000 Menm jan tou, si mwen pa enpòte DivisionsViewController la 1056 00:57:12,000 --> 00:57:16,000 du a vrèman pa gen okenn lide ki sa yon DivisionsViewController se. 1057 00:57:16,000 --> 00:57:19,000 Jis asire w ke andedan nan dosye ou diferan. M ou fè asire w ke ou enpòte 1058 00:57:19,000 --> 00:57:25,000 korespondan. dosye yo h pou ke du a konnen sa ki pral sou. 1059 00:57:25,000 --> 00:57:31,000 >> Finalman, sa ki Apple finalman ap montre kèk done lè l sèvi avèk yon View entènèt, 1060 00:57:31,000 --> 00:57:35,000 epi konsa yon View entènèt se yon objè nan ki ou ka Afiche 1061 00:57:35,000 --> 00:57:37,000 yon navigatè entènèt ti kras andedan app ou a. 1062 00:57:37,000 --> 00:57:40,000 Tout sa ou bezwen fè se bay yon URL navigatè entènèt ou a, 1063 00:57:40,000 --> 00:57:43,000 Se konsa, mwen vle pou yo ale nan mlb.mlb.com, 1064 00:57:43,000 --> 00:57:46,000 ak sa a se ki jan mwen kapab jwenn aksè nan paj la kay pou chak ekip, 1065 00:57:46,000 --> 00:57:49,000 epi konsa si yo pase nan sa a URL 1066 00:57:49,000 --> 00:57:52,000 gade nan sit entènèt kapab montre sa a pou mwen, mwen ka browse otou, 1067 00:57:52,000 --> 00:58:01,000 ak similatè se nan itilize pa yon sèl. 1068 00:58:01,000 --> 00:58:03,000 Koulye a, sa a te soti nan plist m 'yo. 1069 00:58:03,000 --> 00:58:07,000 Si m 'klike sou sa a sa a tou te soti nan plist m' yo, ak sa a te pòt okipe 1070 00:58:07,000 --> 00:58:09,000 pa defini sa yo segues. 1071 00:58:09,000 --> 00:58:12,000 Mwen klike sou sa a ak yon sèl plis, 1072 00:58:12,000 --> 00:58:15,000 e kounye a, isit la se UIWebView m 'yo, se konsa jis tankou sa 1073 00:58:15,000 --> 00:58:19,000 isit la nan sit wèb la pou adrès URL la ke mwen jis embedded a, 1074 00:58:19,000 --> 00:58:21,000 epi mwen pa t 'gen okipe anyen fou. 1075 00:58:21,000 --> 00:58:24,000 Sa a se ki jan yo montre yon paj entènèt. 1076 00:58:24,000 --> 00:58:27,000 Bagay sa yo tankou bouton sa-a tounen isit la yo tou bay m ' 1077 00:58:27,000 --> 00:58:33,000 totalman pou gratis paske mwen te defini relasyon sa yo lè l sèvi avèk segues. 1078 00:58:33,000 --> 00:58:37,000 >> Nenpòt kesyon? Yeah. 1079 00:58:37,000 --> 00:58:40,000 [Elèv] Se konsa, lè ou itilize alok, ou pa janm gen anyen gratis? 1080 00:58:40,000 --> 00:58:43,000 Egzakteman, lè w rele alok ak ini ou pa bezwen libere li. 1081 00:58:43,000 --> 00:58:46,000 Yo ki pral okipe tout nan ki pou ou. 1082 00:58:46,000 --> 00:58:51,000 Li nan bèl bagay, epi ou pa ap kraze okenn règleman yo. Yeah. 1083 00:58:51,000 --> 00:58:54,000 [Elèv] Si ou te genyen plis ekip ki ka anfòm sou ekran an, 1084 00:58:54,000 --> 00:58:58,000 li ta otomatikman gen yon opsyon woulo liv, oswa se ke yon bagay ou bezwen ajoute? 1085 00:58:58,000 --> 00:59:01,000 Egzakteman, si mwen te gen plis ekip, pou egzanp, li ta otomatikman okipe 1086 00:59:01,000 --> 00:59:04,000 defile a pou m ', ansanm ak tout enkyetid pèfòmans yo 1087 00:59:04,000 --> 00:59:08,000 ak tab la gwo yo tou okipe totalman pou mwen. 1088 00:59:08,000 --> 00:59:11,000 >> Lòt kesyon yo? 1089 00:59:11,000 --> 00:59:13,000 Tout sa kòd yo pral afiche. 1090 00:59:13,000 --> 00:59:16,000 Nou kalite glossed sou yon ti kras nan detay yo pi plis minè, 1091 00:59:16,000 --> 00:59:19,000 men bagay sa yo tankou mete kèk pwopriyete gade nan sit entènèt 1092 00:59:19,000 --> 00:59:22,000 yo se jis bagay sa yo ke ou kapab jwenn pa Navigasyon dokiman Apple la, 1093 00:59:22,000 --> 00:59:24,000 ki se reyèlman, reyèlman joliman mete deyò. 1094 00:59:24,000 --> 00:59:27,000 Yo gen yon anpil nan apps echantiyon ak egzanp coutumes 1095 00:59:27,000 --> 00:59:34,000 nan APIs diferan, se konsa definitivman parkourir sa yo si ou kapab. 1096 00:59:34,000 --> 00:59:36,000 Jis kèk lyen itil ou ta ka vle pran yon gade nan. 1097 00:59:36,000 --> 00:59:38,000 Sa yo se kèk gid dokiman sou la men. 1098 00:59:38,000 --> 00:59:41,000 Adrès sa yo se masiv, se konsa yo ap vin pi kout. 1099 00:59:41,000 --> 00:59:44,000 Yon sèl sa a premye se bibliyotèk la tout antye de kopi dokiman yo. 1100 00:59:44,000 --> 00:59:46,000 Genyen nan ba rechèch ti kras, kidonk si w kòmanse bouton sezisman 1101 00:59:46,000 --> 00:59:50,000 li pral kòmanse ban nou tout enfòmasyon sou tout bagay sa yo ou kapab fè avèk yon bouton. 1102 00:59:50,000 --> 00:59:53,000 Mwen te tou te gen ladann View Gid nan Programming Table. 1103 00:59:53,000 --> 00:59:56,000 Li kenbe opinyon tab nan anpil plis detay, 1104 00:59:56,000 --> 01:00:00,000 ki jan fè bagay sa yo tankou dynamique ajoute selil oswa edit selil oswa retire yo. 1105 01:00:00,000 --> 01:00:02,000 >> Genyen anpil bagay nan apps echantiyon soti nan Apple ki pral montre w ki jan fè sa, 1106 01:00:02,000 --> 01:00:05,000 epi finalman, yon sèl sa a pase a se Gid la Entèfas Imen, 1107 01:00:05,000 --> 01:00:09,000 ak sa a se fondamantalman kèk diskisyon sou UI eleman, 1108 01:00:09,000 --> 01:00:12,000 bagay sa yo tankou pa fè yon bouton sa a, se 4 piksèl pa 4 piksèl. 1109 01:00:12,000 --> 01:00:15,000 Sa se yon lide move, ak lòt bagay ki Apple vle ou a fè 1110 01:00:15,000 --> 01:00:18,000 ankouraje bon konsepsyon. 1111 01:00:18,000 --> 01:00:23,000 >> Nenpòt kesyon dènye anvan nou fini? 1112 01:00:23,000 --> 01:00:27,000 Tout dwa, definitivman santi yo lib a-we're pral gen etikèt espesyal sou diskite. 1113 01:00:27,000 --> 01:00:30,000 Nou pral gen yon yo yon sèl, se konsa definitivman santi yo lib yo itilize sa. 1114 01:00:30,000 --> 01:00:34,000 Si ou vle travay avèk kondisip ou sou pwojè 1115 01:00:34,000 --> 01:00:37,000 oubyen ede konpwan kèk o aza yo bagay 1116 01:00:37,000 --> 01:00:40,000 ezite imèl m 'yo, ak definitivman parkourir tout kòd sou entènèt la paske 1117 01:00:40,000 --> 01:00:43,000 jis nan enterè a nan tan nou kalite glossed sou plis nan 1118 01:00:43,000 --> 01:00:45,000 sibtilite detay grenn fen de bagay sa yo. 1119 01:00:45,000 --> 01:00:47,000 Men, si se pa sa, Lè sa a, bon chans sou yo pwojè ou a, e mwen espere ke nou gen 1120 01:00:47,000 --> 01:00:53,000 yon foul gwo apps nan magazen an app. 1121 01:00:53,000 --> 01:00:56,000 [CS50.TV]