1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [Seminārs] [iOS: Writing Apps Tāpat Boss] 2 00:00:02,000 --> 00:00:04,000 [Tomijs MacWilliam] [Hārvarda] 3 00:00:04,000 --> 00:00:08,000 [Tas ir CS50.] [CS50.TV] 4 00:00:08,000 --> 00:00:12,000 >> Labi, ikviens, laipni iOS: Writing Apps kā Boss. 5 00:00:12,000 --> 00:00:16,000 Šis seminārs ir gatavojas koncentrēties uz rakstiski progr par iPhone 6 00:00:16,000 --> 00:00:19,000 un savukārt rakstiski progr par iPad, un tāpēc mēs esam būtībā gatavojas staigāt cauri 7 00:00:19,000 --> 00:00:23,000 pāris dažādi piemēri par to, kā padarīt app, vienkārša spēle, piemēram, Tic Tac Toe, 8 00:00:23,000 --> 00:00:26,000 vai, ja jūs esat vairāk ieinteresēti padarīt app kā sava veida ziņu lasītājs 9 00:00:26,000 --> 00:00:30,000 vai kaut kas mijiedarbojas ar internetu es runāt par to, kā labi. 10 00:00:30,000 --> 00:00:32,000 Lūk, mūsu īss darba kārtība. 11 00:00:32,000 --> 00:00:36,000 >> IOS progr ir rakstīts valodā sauc Mērķis-C, 12 00:00:36,000 --> 00:00:39,000 un tāpēc tas ir mazliet līdzīga C, bet nav īsti nemaz, 13 00:00:39,000 --> 00:00:41,000 tāpēc mēs runājam mazliet par pašas valodas 14 00:00:41,000 --> 00:00:45,000 un tad kā veidot IPHONE progr izmantojot šo app programmu, ko sauc Xcode, 15 00:00:45,000 --> 00:00:48,000 kas, ja neesat lejupielādējis vēl justies brīvi, lai sāktu lejupielādi tagad. 16 00:00:48,000 --> 00:00:50,000 Tas ir vairākas gigabaitiem. 17 00:00:50,000 --> 00:00:54,000 Tas būtu brīva no App Store, tāpēc jums būs nepieciešams, lai ir Mac 18 00:00:54,000 --> 00:00:57,000 ideālā darbojas jaunāko versiju OS X. 19 00:00:57,000 --> 00:00:59,000 Ja jūs neesat, nav problēmu. 20 00:00:59,000 --> 00:01:02,000 Mums ir Mac zinātnē centrā pieejama jūsu lietošanai 21 00:01:02,000 --> 00:01:05,000 ar Xcode uzstādītas, un lai justies brīvi izmantot tos attīstībai. 22 00:01:05,000 --> 00:01:07,000 Ja jūs vēlaties, lai app bet nav Mac, nav jāuztraucas. 23 00:01:07,000 --> 00:01:09,000 Tur ir daudz Campus resursus. 24 00:01:09,000 --> 00:01:15,000 Un tad mēs ejam, lai segtu 2 lielāks piemērus dažādu progr jūs varat darīt. 25 00:01:15,000 --> 00:01:19,000 Mērķis-C ir tehniski tas, ko sauc super kopums C. 26 00:01:19,000 --> 00:01:24,000 Tas nozīmē, ka jebkurš C kods ir arī derīgs Mērķis-C kodu. 27 00:01:24,000 --> 00:01:29,000 Tas nozīmē, ka mēs veida vadu lentu par papildu funkcijas uz C. 28 00:01:29,000 --> 00:01:33,000 Dažas no šīm iezīmēm ietver ne kam kādreiz uzrakstīt malloc atkal, paldies Dievam, 29 00:01:33,000 --> 00:01:36,000 Nav jāuztraucas par tiem stulbajiem norādes un atbrīvojot viņus un visu, kas stuff 30 00:01:36,000 --> 00:01:40,000 Jūs ienīda par C, un tas ir sava veida aizgāja Mērķis-C. 31 00:01:40,000 --> 00:01:43,000 >> Tagad, Mērķis-C arī ir daudz lielāka standarta bibliotēka, 32 00:01:43,000 --> 00:01:47,000 tāpēc tur daudz vairāk funkcionalitāti jūs saņemsiet par brīvu iekšpusē Mērķis-C. 33 00:01:47,000 --> 00:01:50,000 Atceros, kad mēs bijām rakstot PHP mēs ievērojām, ka mēs devāmies uz 34 00:01:50,000 --> 00:01:54,000 Tas mazākais valodu ar milzu bibliotēkā visu šo crazy lietām, ko var darīt. 35 00:01:54,000 --> 00:01:56,000 Tas pats notiek iOS. 36 00:01:56,000 --> 00:01:59,000 Ir priekšmeti lietām, piemēram, budistu kalendāru, un tiešām kaut 37 00:01:59,000 --> 00:02:05,000 Jūs varat iespējams iedomāties, iespējams, pastāv jau Mērķis-C īstenošanā. 38 00:02:05,000 --> 00:02:08,000 Mērķis daļa Mērķis-C ir atsauces kaut 39 00:02:08,000 --> 00:02:11,000 sauc Object-Oriented Programming. 40 00:02:11,000 --> 00:02:14,000 Tas ir sava veida jauna koncepcija, bet mēs esam patiesībā lielākoties iemācījušies 41 00:02:14,000 --> 00:02:17,000 daudz no šiem jēdzieniem jau. 42 00:02:17,000 --> 00:02:19,000 Aiz Object-Oriented Programming ideja ir, ka jūs gatavojas, lai strukturētu 43 00:02:19,000 --> 00:02:23,000 Jūsu koda daudz ap šīm lietām sauc klasēm, 44 00:02:23,000 --> 00:02:26,000 un šīs nodarbības ir patiešām pagodināts structs. 45 00:02:26,000 --> 00:02:30,000 Iekšpusē struct mēs būtībā teica šeit ir lieta, 46 00:02:30,000 --> 00:02:32,000 un šī lieta var būt biedri. 47 00:02:32,000 --> 00:02:35,000 Piemēram, kādā saistīts saraksts mezgls varētu būt citas lietas 48 00:02:35,000 --> 00:02:38,000 kā vērtība, rādītājs uz nākamo mezglu sarakstā, 49 00:02:38,000 --> 00:02:44,000 un kopā tas rādītājs, un šī vērtība veido šo vienu gadījumu struct. 50 00:02:44,000 --> 00:02:47,000 Nodarbības ir ļoti līdzīgas, izņemot 51 00:02:47,000 --> 00:02:50,000 klases var būt arī funkcijas iekšpusē no tiem. 52 00:02:50,000 --> 00:02:54,000 Kad mēs paziņoja struct, mēs varētu tikai teikt int n vai mezglā * nākamo. 53 00:02:54,000 --> 00:02:57,000 >> Tagad ar Mērķis-C mēs faktiski var nodot funkcijas 54 00:02:57,000 --> 00:02:59,000 iekšpusē no šīm lietām. 55 00:02:59,000 --> 00:03:03,000 Cita lieta, ka nodarbības var darīt, ir viņi var mantot datus no citām klasēm. 56 00:03:03,000 --> 00:03:07,000 Piemēram, mēs būsim apskatot ķekars iebūvētās Mērķis-C klasēs. 57 00:03:07,000 --> 00:03:11,000 Viens no tiem varētu būt klase, kas pārstāv viedokli par ekrānu, 58 00:03:11,000 --> 00:03:14,000 un tāpēc, sakot, es gribu, lai īstenotu savu viedokli 59 00:03:14,000 --> 00:03:18,000 mēs būtībā teikt kāds vairāk nekā pie Apple, iespējams, tiešām jauki cilvēki, 60 00:03:18,000 --> 00:03:21,000 rakstīja šo klasi par mani, un to rokturi lietas, piemēram attēlot pogas 61 00:03:21,000 --> 00:03:25,000 vai padarot ekrānu, un mēs būtu patiešām sāpināts 62 00:03:25,000 --> 00:03:28,000 lai īstenotu visus šo funkcionalitāti paši, un tāpēc vienkārši 63 00:03:28,000 --> 00:03:31,000 mantojumu datiem mēs varam teikt visu, ko esat darījuši šajā klasē 64 00:03:31,000 --> 00:03:34,000 Es arī gribu iekšā manas klases, un tad es esmu gatavojas darīt dažas citas lietas, 65 00:03:34,000 --> 00:03:37,000 proti īstenot app. 66 00:03:37,000 --> 00:03:40,000 Tas, ko šis vārds nozīmē mantojums. Mēs redzēsim daudz konkrētu piemēru. 67 00:03:40,000 --> 00:03:42,000 >> Un visbeidzot, ar Object-Oriented Programming Galvenais ir, ka 68 00:03:42,000 --> 00:03:45,000 tas noved pie datu iekapsulēšanas. 69 00:03:45,000 --> 00:03:48,000 Dažās no mūsu problēma noteikti mēs varētu būt šie lielie, pasaules mainīgie 70 00:03:48,000 --> 00:03:51,000 un globals visur, un tas, kā mēs gribētu sekot stāvoklī. 71 00:03:51,000 --> 00:03:55,000 Ar klasēm mēs varam sākt iekapsulētājmateriālu informāciju iekšpusē objekta. 72 00:03:55,000 --> 00:03:58,000 Ja mums ir viena ekrāna mūsu app, mums nav īsti nepieciešams, lai ir kādi dati no 73 00:03:58,000 --> 00:04:01,000 citu ekrāna mūsu app iekšpusē, ka, 74 00:04:01,000 --> 00:04:04,000 un tā iekapsulētājmateriālu lietas ietvaros klasēs tas patiesībā noved 75 00:04:04,000 --> 00:04:08,000 daudz labāk kodu dizainu, un tas ir iespējams ar dažiem papildu funkcijas 76 00:04:08,000 --> 00:04:11,000 gada mērķa-C. 77 00:04:11,000 --> 00:04:15,000 Forewarning, par mērķa-C sintakse ir banāni. 78 00:04:15,000 --> 00:04:19,000 Tas ir kā nekas, mēs esam redzējuši līdz šim, 79 00:04:19,000 --> 00:04:22,000 tāpēc tas ir mazliet mācīšanās līkne, lai pierastu pie 80 00:04:22,000 --> 00:04:24,000 ko heck tas nozīmē? 81 00:04:24,000 --> 00:04:27,000 Bet tad, kad jums pēdējo ka sākotnējā mācīšanās līkne tas ir ļoti, ļoti gluda 82 00:04:27,000 --> 00:04:29,000 lai sāktu rakstīt progr. 83 00:04:29,000 --> 00:04:33,000 >> Pasludināt klasi, teikt, šeit ir mana klase, tā pastāv, 84 00:04:33,000 --> 00:04:35,000 un varbūt šeit ir dažas lietas, ka es esmu gatavojas noteikt vēlāk, 85 00:04:35,000 --> 00:04:38,000 Es esmu gatavojas teikt @ interfeisu. 86 00:04:38,000 --> 00:04:41,000 Es esmu gatavojas teikt @ interfeisu. Es esmu gatavojas sniegt manas klases nosaukumu. 87 00:04:41,000 --> 00:04:43,000 Un tad vēlāk kaut kur citur es esmu gatavojas teikt @ beigas, 88 00:04:43,000 --> 00:04:46,000 un viss starp @ saskarni un @ beigās 89 00:04:46,000 --> 00:04:48,000 būs mana klase. 90 00:04:48,000 --> 00:04:51,000 Kas būs, kas ir iekšā mūsu. H failus. 91 00:04:51,000 --> 00:04:55,000 Tāpat kā C mūsu. H faili būtībā teica šeit ir dažas lietas, kas pastāv. 92 00:04:55,000 --> 00:04:57,000 Es ne vienmēr stāsta jums to, ko viņi dara vēl, 93 00:04:57,000 --> 00:04:59,000 bet kompilators jāzina, ka tie pastāv. 94 00:04:59,000 --> 00:05:04,000 Vēlāk iekšā mūsu. M faili, jo m Mērķis-C 95 00:05:04,000 --> 00:05:08,000 ir kur mēs esam patiešām gatavojas noteikt, ko šajās klasēs darīt. 96 00:05:08,000 --> 00:05:11,000 Daudz, piemēram, mūsu. C failus, mēs sniedza īstenošanu funkcijām. 97 00:05:11,000 --> 00:05:15,000 Iekšpusē mūsu. M faila mēs spēsim pateikt šeit ir tas, ko visi no funkcijām 98 00:05:15,000 --> 00:05:18,000 iekšpusē mana klases, ko viņi visi dara. 99 00:05:18,000 --> 00:05:22,000 Un visbeidzot, iekšpusē struct mēs varētu teikt iekšā šos cirtaini lencēm 100 00:05:22,000 --> 00:05:25,000 int n vai mezglā * blakus, 101 00:05:25,000 --> 00:05:28,000 un mērķa-C mēs spēsim izmantot atslēgvārdu @ īpašumu, 102 00:05:28,000 --> 00:05:31,000 un tas ir tas, kas notiek, lai noteiktu īpašības, 103 00:05:31,000 --> 00:05:36,000 vai ne-funkcijas, kas ir daļa no manas klases. 104 00:05:36,000 --> 00:05:40,000 >> Zvanot funkcijas Mērķis-C ir arī banāni. 105 00:05:40,000 --> 00:05:43,000 Kad mēs paziņoja funkcijas K mums teica kaut ko līdzīgu int foo 106 00:05:43,000 --> 00:05:46,000 un atvērta paren un tad deva to argumentu sarakstā. 107 00:05:46,000 --> 00:05:51,000 Tas ir tas, ko deklarējot metodes vai funkcijas izskatās Mērķis-C. 108 00:05:51,000 --> 00:05:54,000 Ja es gribu paziņot funkciju vai metode 109 00:05:54,000 --> 00:05:58,000 kur es saku metode patiešām ir tikai funkcija, kas ir loceklis klases, 110 00:05:58,000 --> 00:06:01,000 tāpēc veida aizstājami, bet nav īsti, 111 00:06:01,000 --> 00:06:03,000 tāpēc iekšpusē manu metodi es gribu, lai izveidotu jaunu metodi. 112 00:06:03,000 --> 00:06:06,000 Tas notiek, lai atgrieztos nekas, tāpēc tas būs tipa neesošu. 113 00:06:06,000 --> 00:06:08,000 Tas ir atgriešanās veids manu darbību. 114 00:06:08,000 --> 00:06:11,000 Tagad mums ir parens šeit, jo, es nezinu. 115 00:06:11,000 --> 00:06:14,000 Nākamais būs nosaukums manu darbību, 116 00:06:14,000 --> 00:06:17,000 un tad beidzot mums ir semikolu tāpat kā mums bija C. 117 00:06:17,000 --> 00:06:19,000 Kas jauns šeit ir tas puisis šeit. 118 00:06:19,000 --> 00:06:22,000 Šī defise ir faktiski vajadzīgs, un ko tas saka, ka 119 00:06:22,000 --> 00:06:26,000 šī metode šeit ir aicinātas gadījumam klasi. 120 00:06:26,000 --> 00:06:29,000 >> Kad mēs paziņoja mūsu structs mēs, iespējams, teica kaut ko līdzīgu 121 00:06:29,000 --> 00:06:32,000 struct mezglā n, un kas faktiski radīja 122 00:06:32,000 --> 00:06:35,000 vai instantiated vienu no šiem structs lai es patiešām varētu sākt strādāt 123 00:06:35,000 --> 00:06:38,000 ar to, kas iekšpusē tā, lai tas svītra nozīmē, ka mums ir 124 00:06:38,000 --> 00:06:41,000 instantiate klasē tāpat kā mēs instantiated ka struct 125 00:06:41,000 --> 00:06:43,000 Pirms mēs varam zvanīt šo metodi par to. 126 00:06:43,000 --> 00:06:46,000 Ja es gribu, lai sāktu pievienot argumentus manas metodes 127 00:06:46,000 --> 00:06:48,000 tā kļūst vēl vairāk banānus. 128 00:06:48,000 --> 00:06:50,000 Te ir mana metodes nosaukums. 129 00:06:50,000 --> 00:06:53,000 Tad es esmu nāksies kolu, un pēc šīs resnās ir teikts šeit runa dažus argumentus. 130 00:06:53,000 --> 00:06:56,000 Šī metode ņem vienu argumentu. 131 00:06:56,000 --> 00:06:59,000 Tās pieņēmuma veids ir int, un ar šo argumentu nosaukums 132 00:06:59,000 --> 00:07:03,000 vai mainīgā ka es esmu gatavojas sākt izmantot iekšpusē metodi sauc i. 133 00:07:03,000 --> 00:07:05,000 Atkal, tas ir metode. Tas aizņem vienu argumentu. 134 00:07:05,000 --> 00:07:10,000 >> Ja jūs vēlaties, lai sāktu pievienot vairāk argumentu tas izpaužas vairāk banānus 135 00:07:10,000 --> 00:07:13,000 jo mēs esam tas resnās kas saka šeit nāk mana argumentu sarakstā. 136 00:07:13,000 --> 00:07:15,000 Šis pirmais arguments ir skaitlis. 137 00:07:15,000 --> 00:07:17,000 Tagad, šis otrais arguments ir interesanti. 138 00:07:17,000 --> 00:07:20,000 Mainīgais, ka es esmu būs izmantojot iekšpusē manu darbību 139 00:07:20,000 --> 00:07:23,000 sauc f, tāpēc iekšā manu darbību es varētu teikt 140 00:07:23,000 --> 00:07:25,000 F + = 1 vai kaut. 141 00:07:25,000 --> 00:07:30,000 Šī lieta šeit ir būtībā galvenais šī argumentu vai parametru. 142 00:07:30,000 --> 00:07:34,000 Tāpat kā mums bija galvenā vērtība pārus un tāpat JSON vai asociatīvo bloki kaut 143 00:07:34,000 --> 00:07:37,000 Mērķis-C pieņēma lēmumu, lai pateiktu, labi, tikai tāpēc, ka tas tiešām skaidrs 144 00:07:37,000 --> 00:07:39,000 kad jūs zvanu metodi, ko visi šie parametri tiek 145 00:07:39,000 --> 00:07:41,000 Es tiešām gatavojas nosaukt tos visus. 146 00:07:41,000 --> 00:07:45,000 Kad jūs zvanu metodi, jūs tiešām teikt andFloat, 147 00:07:45,000 --> 00:07:47,000 un tad jūs nodot to collas 148 00:07:47,000 --> 00:07:50,000 >> Interesanti, ka šis viens nav nosaukts, bet visi pārējie parametri ir, 149 00:07:50,000 --> 00:07:53,000 tāpēc, ja mums bija 3rd argumentu es varētu teikt andFloat 150 00:07:53,000 --> 00:07:56,000 un vēl peldēt un tā tālāk. 151 00:07:56,000 --> 00:08:01,000 Kad es aicinu šīs metodes ir, protams banānu, 152 00:08:01,000 --> 00:08:04,000 tāpēc, ja man ir objektu, un es noteikti metodi sauc foo, 153 00:08:04,000 --> 00:08:09,000 un es vēlos, lai izsauktu to, nevis pasakot foo atvērt / aizvērt parens 154 00:08:09,000 --> 00:08:11,000 Es esmu gatavojas atvērt skava. 155 00:08:11,000 --> 00:08:13,000 Lūk mana metode nosaukums. 156 00:08:13,000 --> 00:08:17,000 Es esmu gatavojas slēgt kronšteinu, un tas ir objekts es esmu aicinot to. 157 00:08:17,000 --> 00:08:20,000 Atcerieties, visas šīs metodes pastāvēt klasēs 158 00:08:20,000 --> 00:08:23,000 jo nodarbības var būt metodes noteiktas iekšpusē no tiem. 159 00:08:23,000 --> 00:08:26,000 >> Šeit es esmu patvaļīgi izveidojis objektu dažiem klases, 160 00:08:26,000 --> 00:08:28,000 un tas ir sintakse, lai dara to. 161 00:08:28,000 --> 00:08:31,000 Ir 2 soļi, lai izveidotu objektu. 162 00:08:31,000 --> 00:08:34,000 Pirmais solis ir, es gribu piešķirt telpu. 163 00:08:34,000 --> 00:08:37,000 Tas ir ekvivalents malloc. Mums nav ko teikt malloc vairs. 164 00:08:37,000 --> 00:08:42,000 Mēs samazinājās m, padarīja alloc, un aizstāja. C ar. M. 165 00:08:42,000 --> 00:08:47,000 Kad mēs alloc kaut ko mēs tad nepieciešams, lai sāktu to. 166 00:08:47,000 --> 00:08:49,000 Būtībā, kad jūs izveidot objektus jūs varētu vēlēties, lai būtu kādu loģiku 167 00:08:49,000 --> 00:08:53,000 kas izpilda tad, kad viņi radīja, lai jūs varētu pāriet dažu noklusējuma vērtībām 168 00:08:53,000 --> 00:08:57,000 vai kaut kas tamlīdzīgs, un tāpēc šī init metode ir tas, ko faktiski rada objektu. 169 00:08:57,000 --> 00:08:59,000 Mēs vispirms piešķirt telpu, tāpat kā mēs to darījām C, 170 00:08:59,000 --> 00:09:04,000 un tad mēs sāktu to, ko var vai nevar darīt visu daudz. 171 00:09:04,000 --> 00:09:07,000 Tad mēs atgriežoties šī lieta par objekta o. 172 00:09:07,000 --> 00:09:09,000 Tur zvaigzne šeit, jo tas ir tehniski rādītājs, 173 00:09:09,000 --> 00:09:12,000 bet nav jāuztraucas, norādes nav, ka liels darījumu Mērķis-C vairs. 174 00:09:12,000 --> 00:09:15,000 >> Tagad mēs esam instantiated šo klasi sauc NSObject, 175 00:09:15,000 --> 00:09:19,000 un tas ir tikai izlases klase, kas Apple ir. 176 00:09:19,000 --> 00:09:22,000 Mēs esam instantiated šo, un tagad man ir gadījums šajā klasē 177 00:09:22,000 --> 00:09:25,000 Šajā objektā o, lai tas nozīmē, ka ja es noteikti 178 00:09:25,000 --> 00:09:29,000 šīs metodes es varētu viņiem piezvanīt, kā šis. 179 00:09:29,000 --> 00:09:31,000 Tāpat, ja es gribēju, lai izsauktu metodi ar vienu argumentu, 180 00:09:31,000 --> 00:09:34,000 tāpēc šī ir josla metode, kas ņem vienu argumentu, 181 00:09:34,000 --> 00:09:38,000 un šeit ir baz: qux metode, tāpēc tas aizņem 2 argumentus. 182 00:09:38,000 --> 00:09:44,000 Šis ir aicinājums viena funkcija par šo objektu o. 183 00:09:44,000 --> 00:09:46,000 Jēga? 184 00:09:46,000 --> 00:09:50,000 Sintakse būtu jēga, bet jūs veida pierast pie tā. 185 00:09:50,000 --> 00:09:54,000 >> Labi, parunāsim par dažām lietām, kas ir iebūvēti Mērķis-C 186 00:09:54,000 --> 00:09:56,000 kas ne vienmēr iebūvēts C. 187 00:09:56,000 --> 00:09:59,000 C mēs veida bija jānodarbojas ar stīgām, jo ​​šie stulba raksturs masīvi, 188 00:09:59,000 --> 00:10:01,000 un tas ieguva tiešām kaitinošas. 189 00:10:01,000 --> 00:10:04,000 Mērķis-C ir tie visi celta par mums, un tas ir iebūvēts 190 00:10:04,000 --> 00:10:06,000 izmantojot šo klasi sauc NSString. 191 00:10:06,000 --> 00:10:10,000 Kad es gribu, lai izveidotu NSString mums ir vairāk mistiskā sintaksi. 192 00:10:10,000 --> 00:10:15,000 Nevis pasakot "CS50" Mēs sakām @ "CS50" 193 00:10:15,000 --> 00:10:17,000 un tas ir tikai sintakse deklarējot virknes Mērķis-C. 194 00:10:17,000 --> 00:10:21,000 Tas ir ļoti viegli aizmirst, tāpēc nav. 195 00:10:21,000 --> 00:10:24,000 Tagad, kad man ir tas, tas ir virkne, bet paziņojums 196 00:10:24,000 --> 00:10:26,000 tas patiešām ir tikai objekts. 197 00:10:26,000 --> 00:10:30,000 Es teicu NSString, kas nozīmē, es instantiated klasē 198 00:10:30,000 --> 00:10:32,000 sauc NSString, ko kāds cits rakstīja par mani, 199 00:10:32,000 --> 00:10:35,000 un viņi bija ļoti jauki par to, un tāpēc tagad 200 00:10:35,000 --> 00:10:37,000 Es varētu sākt aicinot metodes par to. 201 00:10:37,000 --> 00:10:40,000 Ja es zvanu metodi garumu par šo objektu iem 202 00:10:40,000 --> 00:10:43,000 tas notiek, lai atgrieztos pie manis garumu virknes. 203 00:10:43,000 --> 00:10:45,000 Tas ir tāpat kā strlen jo C. 204 00:10:45,000 --> 00:10:47,000 Tas varētu atgriezties 4. 205 00:10:47,000 --> 00:10:51,000 >> Līdzīgi, citu metodi es varētu vēlēties, lai rūpētos par to ir šis characterAtIndex. 206 00:10:51,000 --> 00:10:54,000 Šī ir metode, kas saka par šī virkne iem 207 00:10:54,000 --> 00:10:57,000 Es gribu, lai jūs iegūtu 0. raksturs, 208 00:10:57,000 --> 00:10:59,000 un tāpēc tas atkal būtu man raksturs c, 209 00:10:59,000 --> 00:11:02,000 un tur viss ķekars vairāk no šīm metodēm, kas jūs varat Google patiešām viegli. 210 00:11:02,000 --> 00:11:07,000 Apple dokumentācija ir liels, un mēs to apskatīt, kas ir mazliet. 211 00:11:07,000 --> 00:11:09,000 Tie ir stīgas. 212 00:11:09,000 --> 00:11:11,000 Mēs arī esam dažāda lieluma masīvi iebūvēts 213 00:11:11,000 --> 00:11:13,000 Atceros C kad mēs paziņoja masīvs 214 00:11:13,000 --> 00:11:16,000 mums bija teikt jums ir 5 elementi, beigās stāsts. 215 00:11:16,000 --> 00:11:18,000 Kad mēs saņēmām uz JavaScript un PHP, mēs varētu sākt 216 00:11:18,000 --> 00:11:20,000 darot lietas, piemēram, pievienojot elementus vai kustīgiem elementiem. 217 00:11:20,000 --> 00:11:22,000 Mēs varam darīt pašu mērķa-C. 218 00:11:22,000 --> 00:11:26,000 Nevis izveidot masīvu kā parasti C ceļā 219 00:11:26,000 --> 00:11:30,000 Mums ir atkal cits klasi sauc NSMutableArray. 220 00:11:30,000 --> 00:11:33,000 Pastāv arī NSArray, 221 00:11:33,000 --> 00:11:35,000 un tas ir gatavojas būtībā rezumēju dažas masīvs. 222 00:11:35,000 --> 00:11:38,000 Šis saka pirmā lieta, ko es gribu darīt, ir es gribu piešķirt 223 00:11:38,000 --> 00:11:41,000 vieta jaunu bloku, un pēc tam es tas jāsadala 224 00:11:41,000 --> 00:11:43,000 Es tad nepieciešams, lai sāktu to. 225 00:11:43,000 --> 00:11:45,000 Atkal, tāpat aicinot šos 2 metodes. 226 00:11:45,000 --> 00:11:48,000 Tagad tas nozīmē, ka iekšpusē šo objektu ar 227 00:11:48,000 --> 00:11:50,000 Man ir tukša masīvs sēdēja. 228 00:11:50,000 --> 00:11:54,000 Ja es gribu, lai pievienotu kaut ko šī masīva, es varu zvanīt addObject metodi. 229 00:11:54,000 --> 00:11:59,000 Es gribu, lai pievienotu objektu masīvā ir, un es vēlos pievienot virkni CS50. 230 00:11:59,000 --> 00:12:02,000 Ja es gribēju otrādi noņemt, ka es varu teikt, es gribu 231 00:12:02,000 --> 00:12:09,000 noņemt objektu pirmajā vietā par masīvu vai iebildumus. 232 00:12:09,000 --> 00:12:11,000 >> Jēga? 233 00:12:11,000 --> 00:12:14,000 Labi, jūs veida pierast pie šo kvadrātiekava lieta. 234 00:12:14,000 --> 00:12:18,000 Starp citu, iekšpusē daudz Apple bibliotēku jūs redzat šo NS. 235 00:12:18,000 --> 00:12:21,000 NS faktiski stendi nākamo soli, kas bija viens no Steve Jobs pirmajiem uzņēmumiem, 236 00:12:21,000 --> 00:12:24,000 un ka tur viņš tiešām sāka rakstīt daudz kodu 237 00:12:24,000 --> 00:12:27,000 kā sava veida pamatu Mac OS X un visiem citiem stuff, 238 00:12:27,000 --> 00:12:32,000 un tāpēc šis NS ir veida šo jauku mantojums izkliegt uz iepriekšējām sabiedrībām, proti 239 00:12:32,000 --> 00:12:34,000 atpakaļ, kad Apple bija pirmo reizi sākot out. 240 00:12:34,000 --> 00:12:36,000 Tas ir visur. 241 00:12:36,000 --> 00:12:41,000 Pieņemsim to apskatīt vienotāka Mērķis-C piemērs. 242 00:12:41,000 --> 00:12:44,000 Šeit es esmu iekšā Xcode. 243 00:12:44,000 --> 00:12:47,000 Lai saņemtu šeit, es vispirms lejupielādēt Xcode no App Store, 244 00:12:47,000 --> 00:12:50,000 atver to uz augšu, un tad es devos šurp uz failu, 245 00:12:50,000 --> 00:12:54,000 nekā šeit uz jaunu, un pēc tam projektu. 246 00:12:54,000 --> 00:12:57,000 Pēc man, ka man ir visas šīs iespējas, ko es gribu, lai izveidotu, 247 00:12:57,000 --> 00:12:59,000 un tāpēc mēs to apskatīt šīm iespējām vēlāk, 248 00:12:59,000 --> 00:13:03,000 bet tikai par šo, piemēram, tāpēc, ka mēs neesam tiešām nāksies app vēl, 249 00:13:03,000 --> 00:13:06,000 Es atbraucu uz šejieni, un es teicu Komandrindas rīks, 250 00:13:06,000 --> 00:13:09,000 un tas ir app, ka es varētu palaist komandrindas 251 00:13:09,000 --> 00:13:12,000 tāpat kā mēs esam darbojas no C. 252 00:13:12,000 --> 00:13:16,000 Tas ir, kā es izveidojis šo projektu, un tāpēc tagad es esmu šeit, 253 00:13:16,000 --> 00:13:20,000 Tātad, pieņemsim vispirms apskatīt šo failu, un tas izskatās diezgan pazīstams. 254 00:13:20,000 --> 00:13:24,000 Man ir int nosaukumu. Tur ir mans draugs argc, citi mani draugs argv. 255 00:13:24,000 --> 00:13:30,000 Un tā mēs varam redzēt, ka tas ir sākumpunkts mans pirmais mērķis-C pieteikumu. 256 00:13:30,000 --> 00:13:32,000 Šeit mēs varam ignorēt šo tagad. 257 00:13:32,000 --> 00:13:35,000 Tas ir būtībā dažus atmiņas pārvaldības sīkumi, ka jums nav īsti 258 00:13:35,000 --> 00:13:37,000 kādreiz ir jāuztraucas par. 259 00:13:37,000 --> 00:13:39,000 >> Apskatīsim pirmajā blokā šeit. 260 00:13:39,000 --> 00:13:46,000 Šis pirmais rindā, ja es saku Studentu * Alise = [[Studentu alloc] init] kas tas dara? 261 00:13:46,000 --> 00:13:50,000 Šis pirmais students šeit, tas ir iespējams klasē. 262 00:13:50,000 --> 00:13:54,000 Tas nav klases, ka Apple rakstīja, bet tas ir klases, kas man rakstīja. 263 00:13:54,000 --> 00:13:57,000 Pirmais, ko es gribu darīt, ir es gribu piešķirt telpu jauns students, 264 00:13:57,000 --> 00:14:00,000 un tad es gribu, lai sāktu to, tāpēc tas dod man atpakaļ 265 00:14:00,000 --> 00:14:05,000 Šī jaunā studente objektu, un es esmu saglabājot šo mainīgo sauc Alise. 266 00:14:05,000 --> 00:14:07,000 No kurienes, kas klasi nāk no? 267 00:14:07,000 --> 00:14:12,000 Nu, nekā šeit kreisajā pusē tie visi ir no dažādiem failiem iekšpusē manu projektu. 268 00:14:12,000 --> 00:14:16,000 Mēs varam redzēt šeit man ir Student.h un Student.m. 269 00:14:16,000 --> 00:14:20,000 . H failu, atcerieties, ir vieta, kur es apliecinu visas lietas 270 00:14:20,000 --> 00:14:22,000 kas pastāv klases ietvaros. 271 00:14:22,000 --> 00:14:25,000 >> Pieņemsim to apskatīt to. 272 00:14:25,000 --> 00:14:29,000 Labi, šeit mums ir šis @ interfeiss, un tas saka, ka šeit nāk 273 00:14:29,000 --> 00:14:33,000 deklarācijas par visu, kas pastāvēs manā klasē. 274 00:14:33,000 --> 00:14:36,000 Tad man ir ar kolu. Tad man ir šī NSObject lieta. 275 00:14:36,000 --> 00:14:40,000 Šī resnās nozīmē, ka mantojuma mazliet runājām mazliet agrāk. 276 00:14:40,000 --> 00:14:43,000 Šis saka viss NSObject var darīt 277 00:14:43,000 --> 00:14:46,000 ja NSObject ir šī klase raksta kāds cits, 278 00:14:46,000 --> 00:14:50,000 viss tas NSObject var darīt es gribu, lai varētu to darīt. 279 00:14:50,000 --> 00:14:54,000 , Sakot: NSObject tas nozīmē, ka es būtībā 280 00:14:54,000 --> 00:14:58,000 mantoja visu funkcionalitāti citas klases. 281 00:14:58,000 --> 00:15:02,000 Tas tiešām deva man visu ķekars dažādu metodes un īpašības, ka es varētu izmantot. 282 00:15:02,000 --> 00:15:05,000 Noteikti šeit es esmu radot 2 īpašības. 283 00:15:05,000 --> 00:15:08,000 Tas nozīmē, mans students, ja tas būtu struktūrai, tie varētu būt 2 lietas 284 00:15:08,000 --> 00:15:11,000 iekšpusē manu struct, lai katrs students ir nosaukums 285 00:15:11,000 --> 00:15:14,000 ka ir virkne, un students ir arī pakāpē, 286 00:15:14,000 --> 00:15:17,000 kas ir int. 287 00:15:17,000 --> 00:15:23,000 >> Visbeidzot, noteikti šeit es esmu gatavojas izveidot metodi manu studentu. 288 00:15:23,000 --> 00:15:26,000 I sauc mana metode, initWithName, un tas aizņem vienu argumentu, 289 00:15:26,000 --> 00:15:31,000 un šis arguments ir virkne, un es to sauca nosaukt. 290 00:15:31,000 --> 00:15:35,000 Tagad aplūkosim, kā mēs faktiski īstenoti šo klasi. 291 00:15:35,000 --> 00:15:38,000 Lūk, tagad es esmu iekšā manu. M failu, 292 00:15:38,000 --> 00:15:40,000 m īstenošanai, I guess. 293 00:15:40,000 --> 00:15:44,000 Man ir mana īstenošanu, manu galu, un šeit ir tas, kur es esmu faktiski nosakot 294 00:15:44,000 --> 00:15:47,000 ko initWithName dara. 295 00:15:47,000 --> 00:15:50,000 Man ir initWithName, mana parametra nosaukums, un tad šī 296 00:15:50,000 --> 00:15:53,000 ir vieta, kur es esmu faktiski radot students, 297 00:15:53,000 --> 00:15:56,000 un tāpēc tas ir mazliet noslēpumains, bet tas ir sava veida tekstveidnes 298 00:15:56,000 --> 00:15:58,000 ka jūs vēlaties iekļaut jūsu uzņēmēji. 299 00:15:58,000 --> 00:16:02,000 Šī inicializācijas funkcija šeit, initWithName, ir veids konstruktors. 300 00:16:02,000 --> 00:16:05,000 Jūs būtībā būvējot jaunu studentu objektu 301 00:16:05,000 --> 00:16:07,000 un varbūt nosūtot dažus datus no tā. 302 00:16:07,000 --> 00:16:11,000 Pirmais, ko es gribu darīt, ir es gribu aicināt init par šo super lieta. 303 00:16:11,000 --> 00:16:15,000 >> Atcerieties, ka tad, kad es teicu atpakaļ šeit. H failu 304 00:16:15,000 --> 00:16:21,000 ka viss NSObject ir students ir arī. 305 00:16:21,000 --> 00:16:24,000 Tas nozīmē, ja es izveidotu students, kas man arī jādara, ir 306 00:16:24,000 --> 00:16:28,000 pārliecinieties, ka NSObject ka es esmu pārmanto visus, ka dati no 307 00:16:28,000 --> 00:16:32,000 ir arī inicializēts pareizi. 308 00:16:32,000 --> 00:16:36,000 Kas man ir nepieciešams pateikt, ir tas super ir faktiski gatavojas atsaukties uz mātes klasē 309 00:16:36,000 --> 00:16:39,000 ka es esmu pārmantot no, tāpēc es gribu, lai pārliecinātos, es sāktu 310 00:16:39,000 --> 00:16:43,000 viss, ko es esmu atkarībā pirms es sākt mēģināt to izmantot. 311 00:16:43,000 --> 00:16:46,000 Tad, ja tas inicializēts pareizi tas ir tāpat kā teikt, ja malloc 312 00:16:46,000 --> 00:16:50,000 neatgriezās Null, tad es varētu sākt nosakot dažas īpašības. 313 00:16:50,000 --> 00:16:54,000 >> JavaScript un PHP, mums bija šis atslēgvārds sauc šo, 314 00:16:54,000 --> 00:16:58,000 un tas atsaucās uz pašreizējo gadījumu klasi. 315 00:16:58,000 --> 00:17:00,000 Mērķa-C mēs saucam sevi. 316 00:17:00,000 --> 00:17:04,000 Kad es saku self.name, tas nozīmē, ka objekts 317 00:17:04,000 --> 00:17:07,000 Es tikko izveidots, kad es teicu students alloc init, 318 00:17:07,000 --> 00:17:09,000 kas notiek, lai dotu man atpakaļ objektu. 319 00:17:09,000 --> 00:17:12,000 Tas nozīmē, ka es vēlos, lai uzstādītu nosaukumu šo objektu 320 00:17:12,000 --> 00:17:15,000 lai kāds man tikko pagājis iekšā 321 00:17:15,000 --> 00:17:18,000 Tāpat kā C, mēs piekļūt locekļi ar šo dot, 322 00:17:18,000 --> 00:17:21,000 tāpēc self.name saka par studentu objekta nosaukums 323 00:17:21,000 --> 00:17:24,000 tagad būs kāds jūs tikko pagājis collas 324 00:17:24,000 --> 00:17:28,000 Un tā beidzot, es varētu atdot, lai es tiešām saņemt kaut ko atpakaļ. 325 00:17:28,000 --> 00:17:30,000 >> Jautājumi? 326 00:17:30,000 --> 00:17:34,000 Labi, tāpēc sevis = super init, 327 00:17:34,000 --> 00:17:37,000 ja Jums nav pilnībā saprast mantojuma sīkumi nav jāuztraucas. 328 00:17:37,000 --> 00:17:40,000 Tikai zinu, ka, ja jūs kādreiz vēlaties, lai jūsu pašu init metodi tikko 329 00:17:40,000 --> 00:17:42,000 darīt, un jums būs labi iet. 330 00:17:42,000 --> 00:17:44,000 Yeah >> [Studentu]. Ko ja self nozīmē? 331 00:17:44,000 --> 00:17:49,000 Tas nozīmē, ja mēs malloc kaut mēs vienmēr pārbaudīt, vai tas bija vienāds ar null, 332 00:17:49,000 --> 00:17:51,000 un ja tas bija nulle, tad mēs izbrauc. 333 00:17:51,000 --> 00:17:55,000 Tas ir tas pats, jo, ja tas atgriež null, tad mēs, iespējams, gatavojas SEG vaina 334 00:17:55,000 --> 00:17:57,000 ja mēs sākt mēģināt manipulēt ar to. 335 00:17:57,000 --> 00:18:01,000 Tas ir mūsu students klasē. 336 00:18:01,000 --> 00:18:03,000 Tas nozīmē, ka mēs varam inicializēt mūsu studentiem vienā no diviem veidiem. 337 00:18:03,000 --> 00:18:08,000 Ja es saku students alloc init es neesmu, izmantojot šo metodi, ka es tikko rakstīja, 338 00:18:08,000 --> 00:18:11,000 un tā vietā es varētu vienkārši pateikt alice.name, 339 00:18:11,000 --> 00:18:14,000 un tagad es esmu gatavojas noteikt, ka īpašuma nosaukums. 340 00:18:14,000 --> 00:18:17,000 >> Tāpat, ja es vēlos izmantot šo initWithName metodi 341 00:18:17,000 --> 00:18:20,000 Es varētu vienkārši pateikt alloc, un tad nevis pasakot init 342 00:18:20,000 --> 00:18:24,000 Es esmu dodas uz zvanu, ka metode, kas man tikko izveidoto, un es esmu gatavojas iet ar Bobu. 343 00:18:24,000 --> 00:18:30,000 Šajā brīdī, šis objekts Bobs ir vārds, kas vienāds ar Bobu. 344 00:18:30,000 --> 00:18:35,000 Labi, noteikti šeit es esmu, izmantojot šo NSMutableArray ka mēs paskatījās agrāk. 345 00:18:35,000 --> 00:18:38,000 Es esmu piešķirot space.Then es esmu inicializēšana jaunu masīvu. 346 00:18:38,000 --> 00:18:40,000 Es esmu gatavojas pievienot 2 lietas ar to. 347 00:18:40,000 --> 00:18:43,000 Šis masīvs tagad pieder studentu objektus. 348 00:18:43,000 --> 00:18:46,000 Ievērojiet, ka nekur nebija man jāsaka tas ir masīvs studentiem. 349 00:18:46,000 --> 00:18:48,000 Es teicu, tas ir masīvs, periods. 350 00:18:48,000 --> 00:18:50,000 Tad es varētu īstenot neatkarīgi iekšpusē tā, ka es gribu. 351 00:18:50,000 --> 00:18:52,000 Šeit man ir 2 objekti. 352 00:18:52,000 --> 00:18:56,000 >> Visbeidzot, man ir cits priekšmets šeit, šo TF. 353 00:18:56,000 --> 00:18:59,000 Vairāk nekā šeit TF.h būtībā tas pats. 354 00:18:59,000 --> 00:19:01,000 Es esmu pārmantot no NSObject, un starp citu, 355 00:19:01,000 --> 00:19:03,000 kad jūs izveidot klases tas ir viss darīts, lai jūs, 356 00:19:03,000 --> 00:19:06,000 šāda veida interfeisu tekstveidnes. 357 00:19:06,000 --> 00:19:08,000 Tā ir īpašums studentiem. 358 00:19:08,000 --> 00:19:15,000 Man ir pāris metodes šeit, kas nav īsti darīt visu daudz, 359 00:19:15,000 --> 00:19:18,000 un tādējādi tas nozīmē, kad es izveidot šo TF objektu 360 00:19:18,000 --> 00:19:23,000 Es varētu nosaukt šo metodi pakāpē par to, kā šis. 361 00:19:23,000 --> 00:19:26,000 Visus jautājumus par Mērķis-C sintaksi, pirms mēs sākam pārceļas daži vairāk 362 00:19:26,000 --> 00:19:30,000 Interesanti Apps attīstības sīkumi? 363 00:19:30,000 --> 00:19:34,000 >> Labi, tāpēc pieņemsim faktiski padara iPhone app. 364 00:19:34,000 --> 00:19:39,000 Kodols klases, kas jums tiks izmantojot iekšpusē jūsu iPhone app sauc view kontrolieri, 365 00:19:39,000 --> 00:19:42,000 un skats kontrolieris būtībā pārstāv vienu ekrānu 366 00:19:42,000 --> 00:19:46,000 iekšā jūsu app, tāpēc, ja es esmu par mūzikas app, piemēram, 367 00:19:46,000 --> 00:19:50,000 viens skats kontrolieris varētu pārstāvēt viedokli, kurā es apskatīt visas dziesmas par manu iPhone. 368 00:19:50,000 --> 00:19:53,000 Vēl viens skats kontrolieris varētu būt, kad es noklikšķiniet uz dziesmu un sākt spēlēt to 369 00:19:53,000 --> 00:19:55,000 vai kā es esmu urbšanas leju māksliniekiem. 370 00:19:55,000 --> 00:19:59,000 Katrs no šiem dažādiem ekrāniem varētu pārstāvēja citu skatu kontrolieris, 371 00:19:59,000 --> 00:20:04,000 un skats kontrolieris ir tiešām tikai klase, kas saka, kā šis ekrāns darbojas. 372 00:20:04,000 --> 00:20:07,000 Lietas iekšpusē skata kontrolieris, mēs esam nāksies īpašības, 373 00:20:07,000 --> 00:20:10,000 tāpēc lietas kā poga būs īpašumā mūsu domām kontrolieris. 374 00:20:10,000 --> 00:20:13,000 >> Mēs arī nāksies metodes, un tie ir pamatā notikumu apstrādes. 375 00:20:13,000 --> 00:20:16,000 Šī metode saka, nospiežot šo pogu 376 00:20:16,000 --> 00:20:19,000 Es gribu kaut ko darīt, un, visbeidzot, atkal, 377 00:20:19,000 --> 00:20:24,000 mēs gribam būt, izmantojot šo sevis atslēgvārdu, lai piekļūtu pašreizējo gadījumu. 378 00:20:24,000 --> 00:20:29,000 Lai izveidotu saskarnes iOS ir tiešām ļoti, ļoti viegli. 379 00:20:29,000 --> 00:20:32,000 Viņi ir šo jauku vilkšanas un nomešanas interfeisu sauc Interface Builder, 380 00:20:32,000 --> 00:20:37,000 un 2 pamatkoncepcijas ka vadi līdz jūsu mērķis-C Interface Builder 381 00:20:37,000 --> 00:20:40,000 ir IBOutlet un IBAction. 382 00:20:40,000 --> 00:20:44,000 IBOutlet vienkārši saka, ka, ja jūs atzīt īpašumu, kas ir poga, 383 00:20:44,000 --> 00:20:47,000 un jūs vēlaties, lai aizšmaukt līdz kaut ko jūsu faktisko UI, 384 00:20:47,000 --> 00:20:49,000 jūs gatavojas teikt, tas ir izeja. 385 00:20:49,000 --> 00:20:51,000 Tāpat, ja jūs vēlaties, lai pārstāvētu notikumu apdarinātājs 386 00:20:51,000 --> 00:20:54,000 tad jūs gatavojas teikt tā darbība. 387 00:20:54,000 --> 00:20:57,000 >> Faktiski vadi līdz šī grafiskā 388 00:20:57,000 --> 00:21:00,000 un jūsu kods tas ir ļoti, ļoti vienkārša. 389 00:21:00,000 --> 00:21:03,000 Ja jūs vēlaties, lai pievienotu IBOutlet, viss, kas jums jādara, ir jums kontrolēt klikšķis, 390 00:21:03,000 --> 00:21:05,000 un mēs redzēt piemēru tas tiešām ātri. 391 00:21:05,000 --> 00:21:07,000 Tu kontrolē noklikšķiniet, kur ir teikts Skatīt Controller. 392 00:21:07,000 --> 00:21:09,000 Jūs gatavojas vilkt uz saskarni, vai otrādi, 393 00:21:09,000 --> 00:21:13,000 ja jūs vēlaties āķa notikuma apdarinātājs jūs gatavojas vilkt no interfeisa 394 00:21:13,000 --> 00:21:15,000 citā virzienā. 395 00:21:15,000 --> 00:21:20,000 Pieņemsim to apskatīt ļoti vienkāršs iOS piemērs. 396 00:21:20,000 --> 00:21:23,000 >> Pieņemsim izveidot jaunu projektu. 397 00:21:23,000 --> 00:21:25,000 Es esmu gatavojas nākt klajā šeit Pieteikumā 398 00:21:25,000 --> 00:21:28,000 un es esmu gatavojas uz vienā skatā Application. 399 00:21:28,000 --> 00:21:31,000 Es esmu gatavojas uz nākamo. Es došu mans projekts ar nosaukumu. 400 00:21:31,000 --> 00:21:33,000 Es aicinu to Sveiki. 401 00:21:33,000 --> 00:21:36,000 Interesanti, Apple neuzņemas jūs radot produktu 402 00:21:36,000 --> 00:21:38,000 lai jūs varētu pārdot, un viņi var dot naudu. 403 00:21:38,000 --> 00:21:41,000 Noteikti šeit es esmu gatavojas teikt, ka tas ir iPhone app. 404 00:21:41,000 --> 00:21:44,000 Jūs varat izveidot iPad app, vai, ja jūs vēlaties, lai radītu vienu no šiem apps 405 00:21:44,000 --> 00:21:47,000 kas atbalsta abas ierīces jūs varat darīt, ka pārāk. 406 00:21:47,000 --> 00:21:49,000 Tie ir tas, ko jūs vēlaties, lai jūsu checkmarks izskatās. 407 00:21:49,000 --> 00:21:51,000 >> Jūs vēlaties izmantot storyboards, ko mēs redzēsim vēlāk, 408 00:21:51,000 --> 00:21:54,000 un jūs noteikti vēlaties izmantot automātisko atsauces skaitīšanu, 409 00:21:54,000 --> 00:21:58,000 kas ir jauka iezīme, kas neļauj jums, kam pateikt malloc un bez maksas. 410 00:21:58,000 --> 00:22:03,000 Ja vien jūs vēlaties, lai izsauktu malloc un brīva, es atstāt šo pārbaudīta. 411 00:22:03,000 --> 00:22:07,000 Es noklikšķiniet uz nākamo, un, visbeidzot, tas ir gatavojas lūgt man, kur es gribu, lai to saglabātu. 412 00:22:07,000 --> 00:22:14,000 Es hit izveidot, un šeit mēs iet. 413 00:22:14,000 --> 00:22:16,000 Es izveidojis jaunu projektu. 414 00:22:16,000 --> 00:22:19,000 Vairāk nekā šeit pa kreisi ir visi faili, kas ir iekšpusē manu projektu, 415 00:22:19,000 --> 00:22:22,000 un ievēroju, ka es saņēmu visu ķekars, un man nav pat darīt neko. 416 00:22:22,000 --> 00:22:24,000 IOS ir lieliski. 417 00:22:24,000 --> 00:22:27,000 >> Piemēram, šeit tas ViewController.h, 418 00:22:27,000 --> 00:22:30,000 Tas ir gatavojas pārstāvēt savu pirmo skatu kontrolieris, 419 00:22:30,000 --> 00:22:32,000 tāpēc pirmā ekrāna iekšpusē manu app. 420 00:22:32,000 --> 00:22:34,000 Tagad mēs zinām, ko tas saka. 421 00:22:34,000 --> 00:22:36,000 Mēs esam sakot es esmu aicinot šīs klases ViewController, 422 00:22:36,000 --> 00:22:40,000 un ViewController dara visu, kas UIViewController dara, 423 00:22:40,000 --> 00:22:43,000 un tas atkal ir daži klases ka Apple rakstīja, ka nav daudz ērts sīkumi mums 424 00:22:43,000 --> 00:22:46,000 patīk parādīt uz ekrāna. 425 00:22:46,000 --> 00:22:50,000 Te ir vieta, kur es patiesībā var sākt definēt, kāds ir mans viedoklis kontrolieris dara, 426 00:22:50,000 --> 00:22:52,000 un izrādās, ka es tiešām nav nepieciešams kāds no šo. 427 00:22:52,000 --> 00:22:55,000 Tas ir tekstveidnes kods, ka Apple dod man par brīvu. 428 00:22:55,000 --> 00:22:59,000 I did nepieciešams, ka pirmo līniju, vai man nav klasi, 429 00:22:59,000 --> 00:23:02,000 lai mēs varētu atbrīvoties no tā un atbrīvoties no tā. 430 00:23:02,000 --> 00:23:05,000 Labi, tā tas ir mans tukšs ekrāns. 431 00:23:05,000 --> 00:23:08,000 >> Tagad noklikšķiniet uz šo MainStoryboard.storyboard, 432 00:23:08,000 --> 00:23:11,000 un tas ir, ja tā sāk iegūt interesantu. 433 00:23:11,000 --> 00:23:14,000 Tas ir pirmais ekrāna manu app. 434 00:23:14,000 --> 00:23:17,000 Ja es gribu, lai pievienotu pogu, HTML man bija izveidot pogu tag. 435 00:23:17,000 --> 00:23:20,000 Android jums izveidot pogu tagu, 436 00:23:20,000 --> 00:23:23,000 bet iOS, ja es vienkārši nāk uz leju šeit uz leju pa labi 437 00:23:23,000 --> 00:23:27,000 un ja es noklikšķiniet uz šajā 3 vienu šeit, kur ir teikts Objekti, 438 00:23:27,000 --> 00:23:31,000 un es varētu ritiniet uz leju, vai es varu sākt meklēt pogu. 439 00:23:31,000 --> 00:23:35,000 Un izskatās, pogu, tāpēc, ja es tiešām vilkt un nomest šīs tiesības tur, 440 00:23:35,000 --> 00:23:38,000 Esmu tikko pievienotās pogu uz šo ekrānu par manu app. 441 00:23:38,000 --> 00:23:41,000 Ja es gribu, lai mainītu tekstu, es varu divreiz noklikšķiniet uz tā, 442 00:23:41,000 --> 00:23:47,000 saka kaut ko vilinošs, piemēram, "Spiediet Me". 443 00:23:47,000 --> 00:23:51,000 Labi, tagad, ja man palaist šo app, tāpēc mēs apkopo to, 444 00:23:51,000 --> 00:23:54,000 tāpēc, lai palaistu to es noklikšķiniet uz atskaņošanas pogas augšējā kreisajā, un tur ir mans app. 445 00:23:54,000 --> 00:23:58,000 Es to nedarīju neko, un es saņēmu salds meklējat iPhone app. 446 00:23:58,000 --> 00:24:01,000 Ja es gribu, lai apturētu to, jūs varat noklikšķināt uz stop pogas 447 00:24:01,000 --> 00:24:03,000 jo tas ir daudz jautrības. 448 00:24:03,000 --> 00:24:07,000 >> Pieņemsim, ka es tiešām gribu kaut kas notiktu, ja es nospiediet šo taustiņu. 449 00:24:07,000 --> 00:24:09,000 Lai to izdarītu, ko man vajag darīt, ir man ir nepieciešams, lai radītu 450 00:24:09,000 --> 00:24:13,000 jaunu notikumu apdarinātājs, vai darbība. 451 00:24:13,000 --> 00:24:16,000 Tas nozīmē, ka man ir nepieciešams, lai izveidotu kādu metodi, kas es vēlos būt saukta 452 00:24:16,000 --> 00:24:18,000 kad es nospiediet pogu, tāpēc pieņemsim izveidot jaunu metodi. 453 00:24:18,000 --> 00:24:20,000 Es esmu iekšā ViewController.h. 454 00:24:20,000 --> 00:24:22,000 Man jāsaka, ka metode pastāv. 455 00:24:22,000 --> 00:24:26,000 Man vajag defisi vispirms tāpēc es esmu būs aicinot šo uz skata kontrolieris. 456 00:24:26,000 --> 00:24:28,000 Man vajag, lai dotu šo veidu. 457 00:24:28,000 --> 00:24:31,000 Šī veida būs kas IBAction lieta, ka mēs redzējām agrāk. 458 00:24:31,000 --> 00:24:35,000 Tas ir notikums apdarinātājs, tāpēc tas būs atgriezt IBAction, 459 00:24:35,000 --> 00:24:38,000 un tas ir mājiens uz Xcode teikt, ka 460 00:24:38,000 --> 00:24:40,000 tas ir kaut kas es gribu, lai vadu kaut ko. 461 00:24:40,000 --> 00:24:45,000 Es varu dot tam nosaukumu, piemēram buttonPressed, semikolu. 462 00:24:45,000 --> 00:24:48,000 >> Tagad es esmu atzīts jaunu metodi iekšpusē manā klasē. 463 00:24:48,000 --> 00:24:50,000 Man teica šī metode ir pastāvēt. 464 00:24:50,000 --> 00:24:53,000 Tagad pieņemsim nonāk ViewController.m, 465 00:24:53,000 --> 00:24:56,000 un teiksim, ko šī metode var darīt. 466 00:24:56,000 --> 00:25:03,000 Ja es sāktu rakstīt, piemēram, (anulēts) buttonPressed 467 00:25:03,000 --> 00:25:06,000 paziņojums Xcode ir tiešām jauks un autocompletes par mani. 468 00:25:06,000 --> 00:25:09,000 Tas ir patiešām brīnišķīgi. 469 00:25:09,000 --> 00:25:12,000 Pamanīt šeit, ka iekšpusē. M failu es varu arī teikt par spēkā neesošu, 470 00:25:12,000 --> 00:25:15,000 un tas ir tāpēc, ka IBAction faktiski nav veids. 471 00:25:15,000 --> 00:25:19,000 Tas faktiski hashtag definēts kaut būt spēkā neesošu, 472 00:25:19,000 --> 00:25:22,000 un atkal, tas ir tikai mājiens uz Xcode, kas saka 473 00:25:22,000 --> 00:25:25,000 Es gribu šo būt notikumu apdarinātājs, un mēs redzēsim, kāpēc tikai sekundi. 474 00:25:25,000 --> 00:25:28,000 Ja šī poga tiek nospiesta es esmu gatavojas darīt kaut kaitinošas 475 00:25:28,000 --> 00:25:30,000 patīk rādīt uznirstošo. 476 00:25:30,000 --> 00:25:35,000 >> Lai to izdarītu, es varētu izveidot jaunu šīs klases instanci sauc UIAlertView, 477 00:25:35,000 --> 00:25:39,000 un tas ir klases, ka Apple rakstīja, ka gatavojas parādīt kaitinošas logus. 478 00:25:39,000 --> 00:25:43,000 Mēs to saucam par uznirstošo brīdinājumu, un man ir 2 soļus, atcerieties, lai radītu šo objektu. 479 00:25:43,000 --> 00:25:46,000 Pirmā lieta man ir nepieciešams darīt, ir piešķirt telpu. 480 00:25:46,000 --> 00:25:48,000 Es gribu UIAlertView. 481 00:25:48,000 --> 00:25:51,000 Es gribu piešķirt telpu. Tas ir mans pirmais metode. 482 00:25:51,000 --> 00:25:53,000 Mans nākamais metode ir es gribu, lai sāktu to, 483 00:25:53,000 --> 00:25:58,000 un tāpēc man ir šī lielā, ilgi metodi sauc initWithTitle. 484 00:25:58,000 --> 00:26:01,000 Tas ir būtībā gatavojas kontrolēt, ko šis uznirstošo saka. 485 00:26:01,000 --> 00:26:04,000 Mana Popup nosaukums var būt sveiki. 486 00:26:04,000 --> 00:26:08,000 Lai šis uznirstošo ziņojumu var būt "Šis ir iOS." 487 00:26:08,000 --> 00:26:10,000 Delegāts lieta, es nezinu, kas tas ir. 488 00:26:10,000 --> 00:26:13,000 Teiksim tas nav nekas. 489 00:26:13,000 --> 00:26:18,000 Tagad poga, kas notiek, lai parādās, var teikt kaut ko līdzīgu "Tas tiešām ir," 490 00:26:18,000 --> 00:26:24,000 un man nav īsti gribu nekādas citas pogas, tāpēc pieņemsim izdzēst to un aizveriet kronšteinu. 491 00:26:24,000 --> 00:26:27,000 >> Labi, es izveidojis papildus vienu. Tur mums iet. 492 00:26:27,000 --> 00:26:30,000 Tas ir, kā es varu izveidot jaunu popup. 493 00:26:30,000 --> 00:26:35,000 Ja es gribu, lai faktiski parādīt uznirstošo es vēlos, lai izsauktu parādīt metodi. 494 00:26:35,000 --> 00:26:38,000 Lai to izdarītu, es varu teikt brīdinājumu un parādīt, 495 00:26:38,000 --> 00:26:40,000 un atkal, automātiskās pabeigšanas bija super jauki. 496 00:26:40,000 --> 00:26:42,000 Ja es aizmirsu, ko tas bija, ja es vienkārši ierakstījāt s, 497 00:26:42,000 --> 00:26:45,000 Es var ritināt šeit izdomāt, kas tas bija, 498 00:26:45,000 --> 00:26:48,000 un tas filtri labi. 499 00:26:48,000 --> 00:26:52,000 Tagad es izveidojis šo jauno popup. 500 00:26:52,000 --> 00:26:55,000 Mēs būsim atpakaļ uz to delegāts nozīmē vēlāk, 501 00:26:55,000 --> 00:26:58,000 un tagad es vēlos teikt, ka es gribu šo metodi karsēt 502 00:26:58,000 --> 00:27:01,000 kad es nospiediet pogu, tāpēc es esmu gatavojas atgriezties uz manu storyboard, 503 00:27:01,000 --> 00:27:04,000 un es gribu tagad pievienot šo IBAction. 504 00:27:04,000 --> 00:27:06,000 Pirmā lieta, jūs vēlaties darīt, ir noklikšķiniet uz pogas. 505 00:27:06,000 --> 00:27:08,000 Kad es nospiediet šo taustiņu es gribu kaut kas notiktu. 506 00:27:08,000 --> 00:27:10,000 Es neesmu gatavojas turiet kontroli. 507 00:27:10,000 --> 00:27:13,000 Es esmu gatavojas noklikšķiniet un velciet no pogas 508 00:27:13,000 --> 00:27:15,000 līdz vairāk nekā šeit, kur ir teikts View Controller. 509 00:27:15,000 --> 00:27:17,000 Mēs varam redzēt, ka tas labi iedegas. 510 00:27:17,000 --> 00:27:22,000 >> Ja es let iet ar manu peli man tagad ir tas uznirstošo nekā šeit, kur man ir dažas iespējas. 511 00:27:22,000 --> 00:27:24,000 Viens no tiem ir notikumi, kas man var reģistrēt. 512 00:27:24,000 --> 00:27:28,000 Tie visi ir no šīm metodēm es deklarēti manā h failu kā IBActions. 513 00:27:28,000 --> 00:27:31,000 Tas ir kā Xcode zina vajadzētu parādīties šajā maz sarakstā, 514 00:27:31,000 --> 00:27:33,000 tā, ka ir tikai mājienu. 515 00:27:33,000 --> 00:27:37,000 Ja es noklikšķiniet uz presēta pogas, es esmu tagad reģistrējies notikuma apdarinātājs. 516 00:27:37,000 --> 00:27:41,000 Jo JavaScript mums bija, ka man ir daži kodu, kas reģistrēta notikuma apdarinātājs. 517 00:27:41,000 --> 00:27:43,000 Mērķa-C tas bija tiešām tik vienkārši. 518 00:27:43,000 --> 00:27:46,000 Ja es palaist šo vēlreiz 519 00:27:46,000 --> 00:27:49,000 Tagad, kad es nospiediet pogu mans notikumu apdarinātājs gatavojas uguns, 520 00:27:49,000 --> 00:27:51,000 un es esmu gatavojas saņemt šo uznirstošo. 521 00:27:51,000 --> 00:27:54,000 Super, super vienkārši tur. 522 00:27:54,000 --> 00:27:57,000 >> Ja jūs kādreiz vēlaties redzēt visus notikumus, kas ir reģistrētas 523 00:27:57,000 --> 00:28:00,000 uz sastāvdaļu, ja es noklikšķiniet uz šīs pogas 524 00:28:00,000 --> 00:28:02,000 un es nāk vairāk nekā šeit uz labo pusi 525 00:28:02,000 --> 00:28:05,000 Vispirms jūs varat redzēt vairāk nekā šeit es varētu darīt lietas, piemēram, kāda veida pogas, 526 00:28:05,000 --> 00:28:08,000 tādēļ, ja jūs vēlaties viens no tiem, ko es devēja vai pievienot kontaktu pogu 527 00:28:08,000 --> 00:28:10,000 vai neatkarīgi. 528 00:28:10,000 --> 00:28:13,000 Ja es vēlos redzēt visus notikumus, kas ir uz šīs pogas 529 00:28:13,000 --> 00:28:16,000 ja es nāk visu ceļu pāri šeit uz labo pusi 530 00:28:16,000 --> 00:28:19,000 mēs varam redzēt šeit notikumiem man ir visas šīs dažādiem notikumiem. 531 00:28:19,000 --> 00:28:23,000 Es var nospiest pogu, kad es let aiziet no pogas, kad es divreiz krānu vai neatkarīgi, 532 00:28:23,000 --> 00:28:26,000 un viens es tikko reģistrēts tas ir notikums sauc Touch up iekšpusē, 533 00:28:26,000 --> 00:28:29,000 un tas saka, ka, tiklīdz mana pirkstu nāk off poga 534 00:28:29,000 --> 00:28:32,000 ka pasākums notiek ar uguni, un tas ir tieši tas, kas tikko notika. 535 00:28:32,000 --> 00:28:36,000 Tas ir sava veida noklusējuma poga nospiesta notikumu. 536 00:28:36,000 --> 00:28:39,000 >> Kādi jautājumi līdz šim? 537 00:28:39,000 --> 00:28:43,000 Labi, ka ir, kā mēs varam sākt ar vadu lietas mūsu kodu 538 00:28:43,000 --> 00:28:46,000 vērā lietas iekšpusē mūsu interfeisu. 539 00:28:46,000 --> 00:28:49,000 Atcerieties pirmā lieta, mums bija darīt bija atrast kodu, 540 00:28:49,000 --> 00:28:54,000 un tad mēs vadu veido saskarni ar kodu, 541 00:28:54,000 --> 00:28:57,000 un tur ir mūsu pirmā app. 542 00:28:57,000 --> 00:29:00,000 Labi, ka bija tiešām forši, un mēs izveidojām šo pogu. 543 00:29:00,000 --> 00:29:03,000 Ko darīt, ja mēs negribam, lai būtu izveidot ķekars īpašību 544 00:29:03,000 --> 00:29:05,000 pārstāvot šīs pogas? 545 00:29:05,000 --> 00:29:08,000 Piemēram, Tic Tac Toe Man ir 9 pogas, 546 00:29:08,000 --> 00:29:11,000 un tas lūdzu būt super, super kaitinošas ir vilkt un nomest 9 reizes 547 00:29:11,000 --> 00:29:14,000 vai, ja man bija darīt Tic Tac Toe ar 81 nevis no 9 548 00:29:14,000 --> 00:29:17,000 un man bija vilkt un nomest 81 reizes, un tas ir klibs. 549 00:29:17,000 --> 00:29:20,000 Ko mēs varam darīt tā vietā, ir daudz, piemēram, HTML 550 00:29:20,000 --> 00:29:23,000 kad mums bija lietas, piemēram, identifikācijas datus un vārdus, un mēs varam meklēt lietas 551 00:29:23,000 --> 00:29:27,000 pēc to ID, tur līdzīga iOS jēdziens sauc tagus. 552 00:29:27,000 --> 00:29:31,000 >> Tag ir vienkārši unikāls ciparu identifikators sastāvdaļa. 553 00:29:31,000 --> 00:29:34,000 Ja es saku ir tag ir 0, piemēram, 554 00:29:34,000 --> 00:29:38,000 ja es izveidotu pogu un piešķir tai tag ir 0, un mēs redzēsim, kā to darīt, ka tikai otrajā, 555 00:29:38,000 --> 00:29:41,000 ja es gribu, lai iegūtu, ka poga es varētu vienkārši teikt, es vēlos, lai izsauktu 556 00:29:41,000 --> 00:29:45,000 the viewWithTag metodi uz objekta nekā šeit, 557 00:29:45,000 --> 00:29:48,000 the self.view, kas pārstāv pašreizējo ekrānu, piemēram. 558 00:29:48,000 --> 00:29:53,000 Ja es zvanu, ka viewWithTag metodi, es esmu gatavojas pull atpakaļ pogu ar 0 tag. 559 00:29:53,000 --> 00:29:58,000 Pieņemsim to apskatīt, attīstot Tic Tac Toe. 560 00:29:58,000 --> 00:30:01,000 Pirmkārt, tas ir mans storyboard. 561 00:30:01,000 --> 00:30:05,000 Es esmu izveidojis šos 10 UI pogas. 562 00:30:05,000 --> 00:30:07,000 Pamanīt viņi visi vienāda izmēra. 563 00:30:07,000 --> 00:30:11,000 Ja es noklikšķiniet uz viena no šiem, un es atgriezties nekā šeit uz šo labajā pusē 564 00:30:11,000 --> 00:30:15,000 jūs redzēsiet es koriģē fontu šeit, tāpēc es fontu mazliet lielāks, 565 00:30:15,000 --> 00:30:19,000 bet ko es arī darīju, bija es noteikti šo birku. 566 00:30:19,000 --> 00:30:23,000 Es teicu, ka tas ir tag 1, un tas ir augšpusē pa kreisi. 567 00:30:23,000 --> 00:30:26,000 >> Tagad, ja es noklikšķiniet uz citas pogas, piemēram, šo otru šeit, 568 00:30:26,000 --> 00:30:29,000 Tagad jūs redzēsiet, ka mans tag ir 2. 569 00:30:29,000 --> 00:30:32,000 Katrs no šiem taustiņiem vienkārši ir unikāls tag, 570 00:30:32,000 --> 00:30:35,000 un tāpēc tas ir vēlāk, kā es esmu gatavojas sākt sadarboties 571 00:30:35,000 --> 00:30:38,000 ar manu app. 572 00:30:38,000 --> 00:30:40,000 Tas viss ir iekšā no viena skata kontrolieris, 573 00:30:40,000 --> 00:30:42,000 bet šeit ir tas, ko mēs esam. 574 00:30:42,000 --> 00:30:44,000 Mums ir 3 īpašības šeit. 575 00:30:44,000 --> 00:30:49,000 Pirmais un pēdējais gatavojas pārstāvēt valsts mana kuģa. 576 00:30:49,000 --> 00:30:53,000 Būtībā šis pirmais ir masīvs, kas pārstāv kur Xs un Os ir. 577 00:30:53,000 --> 00:30:57,000 Tas otrs šeit stāsta, kuras kārta ir. 578 00:30:57,000 --> 00:31:01,000 Jūs pamanīsiet, ka arī man ir šīs lietas šeit. 579 00:31:01,000 --> 00:31:05,000 Pirms kad mēs paziņoja īpašības, mēs viņiem deva vārdu un veidu. 580 00:31:05,000 --> 00:31:08,000 Mēs varam arī sniegt viņiem papildu informāciju šeit. 581 00:31:08,000 --> 00:31:11,000 Šis pirmais saka nonatomic, un ko tas saka 582 00:31:11,000 --> 00:31:16,000 būtībā tikai viena lieta jebkad tiks mēģina piekļūt šo mainīgo laikā. 583 00:31:16,000 --> 00:31:19,000 Jūs varētu darīt vairāk sarežģītas programmas, kas ir multi-vītņotiem, 584 00:31:19,000 --> 00:31:22,000 un tāpēc atpakaļ Scratch mums bija dažādas tēmas, 585 00:31:22,000 --> 00:31:25,000 un dažādas sprites varētu darīt dažādas lietas, tajā pašā laikā. 586 00:31:25,000 --> 00:31:29,000 >> Ja tas nav noticis, kas nav kaut kas, ka mēs būsim apskatot, 587 00:31:29,000 --> 00:31:33,000 ja mēs sakām nonatomic tas tiešām gatavojas darīt lietas nedaudz ātrāk. 588 00:31:33,000 --> 00:31:37,000 Mums arī ir šī lieta, ko sauc piešķiršana, stipra, vai vāja. 589 00:31:37,000 --> 00:31:40,000 Tas piešķirtu tikai saka, ka tas ir standarta tipa. 590 00:31:40,000 --> 00:31:43,000 Tas nav objekts vai rādītājs, jo tas ir tikai loģiska, 591 00:31:43,000 --> 00:31:46,000 tāpēc loģiska ir iebūvēts Mērķis-C. 592 00:31:46,000 --> 00:31:49,000 Šis saka, nav mēģināt darīt kaut ko fancy ar norādes šeit. 593 00:31:49,000 --> 00:31:51,000 Tas ir regulārs vecs scaler. 594 00:31:51,000 --> 00:31:54,000 Spēcīga un vāja, tas vāja saka, ka faktiski 595 00:31:54,000 --> 00:31:57,000 Es vēlas, lai tas norāda uz kaut ko skata kontrolieris. 596 00:31:57,000 --> 00:32:00,000 Es neesmu gatavojas faktiski piešķirt vai init šo sevi. 597 00:32:00,000 --> 00:32:04,000 Interfeiss celtnieks, kad es palaist app, gatavojas rīkoties visu šo inicializāciju. 598 00:32:04,000 --> 00:32:07,000 Ja es saku vāja, ka saka kāds cits tiks veidojot šo. 599 00:32:07,000 --> 00:32:09,000 Ja es saku spēcīgs, tas saka, ka es esmu būs viens 600 00:32:09,000 --> 00:32:12,000 kas ir radot šajā valdē objektu, 601 00:32:12,000 --> 00:32:14,000 un tāpēc šeit man ir daži vairāk metodes šeit, 602 00:32:14,000 --> 00:32:18,000 Piemēram, prasība, kad jaunā spēle poga tiek nospiesta, 603 00:32:18,000 --> 00:32:20,000 prasība par kad kāds no pārējiem pogas ir nospiests, 604 00:32:20,000 --> 00:32:23,000 un uc. 605 00:32:23,000 --> 00:32:26,000 >> Mēs ne iekļuvuši pārāk daudz loģikas Tic Tac Toe, 606 00:32:26,000 --> 00:32:30,000 lai gan tas ir ļoti aizraujoši, bet pieņemsim apskatīt 607 00:32:30,000 --> 00:32:33,000 dažas no lietām, ko mēs varam darīt iekšpusē iOS. 608 00:32:33,000 --> 00:32:35,000 Šī jaunā spēle metode būs karsēt 609 00:32:35,000 --> 00:32:37,000 kad es nospiediet jaunu spēli pogu. 610 00:32:37,000 --> 00:32:41,000 Lai āķis, ka līdz es vienkārši nākt uz manu storyboard. 611 00:32:41,000 --> 00:32:43,000 Es noklikšķinājis uz jaunu spēli. 612 00:32:43,000 --> 00:32:47,000 Ja es nāk vairāk nekā šeit uz labo es redzu, ka 613 00:32:47,000 --> 00:32:50,000 Pieskarties iekšpusē ir vadu uz newGame metodi. 614 00:32:50,000 --> 00:32:53,000 Tieši tāpēc tas ir gatavojas saņemt karsētie. 615 00:32:53,000 --> 00:32:56,000 The newGame metode būs darīt kādu iestatīšanu. 616 00:32:56,000 --> 00:32:59,000 Tas notiek, lai teikt, es gribu, lai jūs skaidri stāvokli kuģa. 617 00:32:59,000 --> 00:33:01,000 Šī ir jauka metode uz mainīgs masīvi. 618 00:33:01,000 --> 00:33:03,000 Tas ir gatavojas teikt, tas ir tagad X kārta, 619 00:33:03,000 --> 00:33:07,000 un tagad es esmu gatavojas izmantot šo viewWithTag lieta. 620 00:33:07,000 --> 00:33:11,000 >> Es zinu, ka mans pogas ir tagus 1-9, 621 00:33:11,000 --> 00:33:13,000 un tas ir kaut kas es patvaļīgi paņēmu. 622 00:33:13,000 --> 00:33:15,000 Ja es gribu, lai teksts par katru pogu būt tukšs 623 00:33:15,000 --> 00:33:17,000 jo es tikko sāku jaunu spēli, un es negribu 624 00:33:17,000 --> 00:33:20,000 Xs vai OS atstāt pāri es varu darīt. 625 00:33:20,000 --> 00:33:24,000 Es varu teikt, es gribu skatu ar tagu, 1, 2, 3, 4 un tā tālāk. 626 00:33:24,000 --> 00:33:27,000 Tas pull dažādas pogas katru reizi. 627 00:33:27,000 --> 00:33:30,000 Šeit es esmu gatavojas nodot to UIButton. 628 00:33:30,000 --> 00:33:33,000 Tāpat kā mēs varētu likt Ints ar pludiņu un vice versa 629 00:33:33,000 --> 00:33:37,000 Tas saka, ka es gribu nodot šo uz UIButton. 630 00:33:37,000 --> 00:33:40,000 Tas nozīmē, šī veida būs UIButton * 631 00:33:40,000 --> 00:33:43,000 jo norādes, bet neuztraucieties, viņi nav biedējošu vairs. 632 00:33:43,000 --> 00:33:47,000 >> Kad man ir šī poga es esmu gatavojas aicināt metodi par to. 633 00:33:47,000 --> 00:33:50,000 Šī metode tiek saukta setTitle forState, un tāpēc šis saka 634 00:33:50,000 --> 00:33:53,000 Es gribu, lai teksts uz pogas būt tukša virkne, 635 00:33:53,000 --> 00:33:57,000 un es gribu, lai to tukša virkne, kad tas nav nospiests. 636 00:33:57,000 --> 00:34:01,000 Ja es esmu, izmantojot šo metodi, es varētu mainīt tekstu pogas 637 00:34:01,000 --> 00:34:04,000 tiklīdz kāds hits, bet mēs gribam pateikt, kad poga ir tikai sēž tur 638 00:34:04,000 --> 00:34:07,000 Es gribu teksts ir tukša. 639 00:34:07,000 --> 00:34:10,000 Visbeidzot, mēs ejam, lai sāktu mana kuģa, 640 00:34:10,000 --> 00:34:12,000 un es esmu gatavojas teikt, ka viss šobrīd ir 0, 641 00:34:12,000 --> 00:34:15,000 tāpēc šis valdes locekļi negrozāma ir mainīgs masīvs, 642 00:34:15,000 --> 00:34:21,000 kas nozīmē, ka es varu piezvanīt addObject metodi un tikai 0 iekšpusē no tā. 643 00:34:21,000 --> 00:34:23,000 Tas, kas notiek, kad es izveidoju jaunu spēli. 644 00:34:23,000 --> 00:34:25,000 >> Pieņemsim to apskatīt vienu citu. 645 00:34:25,000 --> 00:34:28,000 Šī metode šeit ir IBAction kas būs nospiesta 646 00:34:28,000 --> 00:34:31,000 Katru reizi, kad kāds no šiem laukumiem tiek nospiests. 647 00:34:31,000 --> 00:34:33,000 Tagad mums ir daži Tic Tac Toe loģika šeit. 648 00:34:33,000 --> 00:34:36,000 Mēs izdomāt, kuras kārta ir, 649 00:34:36,000 --> 00:34:39,000 un, pamatojoties uz to mēs vai nu noteikt X vai O, 650 00:34:39,000 --> 00:34:43,000 taču mēs pamanām, ka mēs atkārtoti šo pašu notikumu apdarinātājs 651 00:34:43,000 --> 00:34:45,000 par katru vienu no šiem taustiņiem. 652 00:34:45,000 --> 00:34:49,000 Tas nozīmē, ka man nav metodi augšējā kreisajā pogu, 653 00:34:49,000 --> 00:34:52,000 atšķirīgu metodi labajā apakšējā poga, kaut gan es varētu būt darījuši. 654 00:34:52,000 --> 00:34:54,000 Tas nav īsti būt labs dizains. 655 00:34:54,000 --> 00:34:57,000 Ko es daru šeit ir es esmu patiešām gatavojas noteikt 656 00:34:57,000 --> 00:35:00,000 kāda no pogas, kas tika nospiests tag ir. 657 00:35:00,000 --> 00:35:04,000 Jūs ievērosiet, ka šī spēle metode ņem vienu argumentu. 658 00:35:04,000 --> 00:35:07,000 To sauc sūtītājs, un ko sūtītājs ir sūtītājs gatavojas 659 00:35:07,000 --> 00:35:10,000 pārstāvētu tieši to bija veikušas pasākumus pēc. 660 00:35:10,000 --> 00:35:15,000 Ja es nospiediet pogu, šis sūtītājs būs, ka UIButton 661 00:35:15,000 --> 00:35:18,000 ka es tiešām nospiests, lai tas nozīmē, ka UIButton 662 00:35:18,000 --> 00:35:20,000 ir birku, jo es izveidojis tag. 663 00:35:20,000 --> 00:35:23,000 >> Ja es vēlos saņemt pie tag es varētu vienkārši pateikt 664 00:35:23,000 --> 00:35:26,000 Es gribu tagu sūtītāja, 665 00:35:26,000 --> 00:35:28,000 un atkal, es esmu tikko izliets to uz UIButton. 666 00:35:28,000 --> 00:35:32,000 Es zinu, ka sūtītājs būs UIButton. 667 00:35:32,000 --> 00:35:34,000 Tas ne vienmēr ir jābūt UIButton. 668 00:35:34,000 --> 00:35:36,000 Es varētu, piemēram, reģistrēt to pašu notikumu apdarinātājs 669 00:35:36,000 --> 00:35:38,000  vienam par pogu, viena slīdni. 670 00:35:38,000 --> 00:35:40,000 Šajā gadījumā, es zinu, ka viņi visas pogas, tāpēc es esmu gatavojas teikt 671 00:35:40,000 --> 00:35:43,000 Es vēlos lai tas būtu pogu, un tad es varu saņemt tag, 672 00:35:43,000 --> 00:35:48,000 un no taga es tagad zinu, kur es esmu iekšā kuģa. 673 00:35:48,000 --> 00:35:51,000 Tad es varētu vienkārši noteikt vai nu X vai O, var uzsist savukārt, 674 00:35:51,000 --> 00:35:54,000 pārbauda, ​​kurš ir uzvarējis, uc. 675 00:35:54,000 --> 00:35:59,000 >> Visus jautājumus par šo līdz šim? 676 00:35:59,000 --> 00:36:02,000 Labi, visi kodu mēs ievietojis internetā, mēs negribam, lai nokļūt pārāk daudz 677 00:36:02,000 --> 00:36:06,000 no Tic Tac Toe loģiku, bet tagad jūs varat redzēt, ka patiešām 678 00:36:06,000 --> 00:36:09,000 visi mēs darām, ir mēs looping par šo masīvs, 679 00:36:09,000 --> 00:36:13,000 tāpēc mums ir pāris uz cilpas šeit, un mēs esam tikai salīdzinot redzēt 680 00:36:13,000 --> 00:36:18,000 mums ir maču visās rindās, mača kolonnā vai kaut kā tā. 681 00:36:18,000 --> 00:36:21,000 Lai tiešām palaist šo app, ja es pieskarieties uz vienu no šīm pogām 682 00:36:21,000 --> 00:36:24,000 kas spēlē metode tika atlaists, lai tas nozīmē, es tikai noteikt 683 00:36:24,000 --> 00:36:31,000 pogu, lai būtu X, tāpēc tagad šī poga būs O, un tā tālāk, 684 00:36:31,000 --> 00:36:35,000 un tā tas ir, kā mēs sākam sadarboties ar šo vienu lapu app. 685 00:36:35,000 --> 00:36:38,000 >> Mēs post kodu, lai justies brīvi iepazīties ka, 686 00:36:38,000 --> 00:36:43,000 bet pieņemsim tagad runāt par dažām lietotnēm, kas ir vairāk nekā tikai vienu lapu. 687 00:36:43,000 --> 00:36:47,000 Tikpat aizraujoša kā Tic Tac Toe bija daudz progr iekšpusē iOS 688 00:36:47,000 --> 00:36:50,000 ir sava veida šo urbja paredz lietas ar vairākiem ekrāniem. 689 00:36:50,000 --> 00:36:54,000 Pirmais jēdziens, kas mums būs jārunā par ir protokoli, 690 00:36:54,000 --> 00:36:57,000 un protokols ir vienkārši metožu kopums 691 00:36:57,000 --> 00:36:59,000 ka jūs varat apsolīt definēt. 692 00:36:59,000 --> 00:37:02,000 Ja es izveidotu šo jauno protokolu ar 2 metodēm, šī pirmā, 693 00:37:02,000 --> 00:37:05,000 ja atgriešanās tips ir anulēts, es to sauca foo. 694 00:37:05,000 --> 00:37:07,000 Tas aizņem nav argumentu. Man ir citu metodi. 695 00:37:07,000 --> 00:37:11,000 Tā atgriež int. Es sauc to joslā, un tas aizņem vienu argumentu. 696 00:37:11,000 --> 00:37:14,000 Viss šis protokols ka sauc SomeProtocol šeit, 697 00:37:14,000 --> 00:37:19,000 Tas ir kopums lietas, ka kāds varētu īstenot. 698 00:37:19,000 --> 00:37:22,000 Man nav iekšā šī protokola teica to foo dara. 699 00:37:22,000 --> 00:37:26,000 Tā vietā, es tikai saku, jūs varētu noteikt foo ja vēlaties. 700 00:37:26,000 --> 00:37:30,000 Ja es esmu radot skata kontrolieris vai radot klasi 701 00:37:30,000 --> 00:37:33,000 Es varu iekšā šajā klasē solījumu īstenot 702 00:37:33,000 --> 00:37:40,000 dažas no šīm metodēm, tā, piemēram, ja saka 703 00:37:40,000 --> 00:37:43,000 tagad tas saka, ka es esmu padarot solījumu jums, ka iekšā 704 00:37:43,000 --> 00:37:50,000 Šīs view kontroliera klasē man būs definīcijas gan foo un bāru. 705 00:37:50,000 --> 00:37:52,000 >> Kāpēc ir tā, ka noderīga? 706 00:37:52,000 --> 00:37:55,000 Komponentu iekšpusē iOS partijas izmantot šo 707 00:37:55,000 --> 00:37:58,000 dizaina modelis sauc delegāciju, un ko delegācija saka 708 00:37:58,000 --> 00:38:01,000 ir tā, ka, piemēram, ja man ir teksta lodziņu 709 00:38:01,000 --> 00:38:04,000 un tur ir daži notikumi, kas varētu tikt reģistrēti iekšpusē manu Tekstlodziņā 710 00:38:04,000 --> 00:38:07,000 nevis radot atsevišķus pasākumus, ko es varu darīt, ir es varu teikt 711 00:38:07,000 --> 00:38:10,000 Šīs tekstlodziņa delegāts būs kādu objektu. 712 00:38:10,000 --> 00:38:13,000 Kad es saku, ka tas ir delegāts tagad tas nozīmē, ka 713 00:38:13,000 --> 00:38:16,000 kad kāds notikums būtu dedzināta tekstlodziņā 714 00:38:16,000 --> 00:38:18,000 nevis to reģistrēt, nekādas tādas 715 00:38:18,000 --> 00:38:21,000 tas ir tikai gatavojas, lai izsauktu metodi uz delegāts. 716 00:38:21,000 --> 00:38:24,000 Piemēram, iekšpusē mana tekstlodziņa Man ir metode, kad es nospiediet 717 00:38:24,000 --> 00:38:27,000 kas izdarīts pogu apakšējā labajā, 718 00:38:27,000 --> 00:38:30,000 un tā vietā, reģistrējoties notikuma apdarinātājs, ko es varu teikt, ir 719 00:38:30,000 --> 00:38:34,000 tekstlodziņš, šeit ir objekts, kas es gribu jūs aicināt metodi par 720 00:38:34,000 --> 00:38:37,000 Katru reizi, kad kāds nospiež pogu Gat, 721 00:38:37,000 --> 00:38:40,000 un tas nozīmē, ka objekts ir, lai īstenotu dažus protokolu 722 00:38:40,000 --> 00:38:45,000 ka saka, ka es apsolu, lai definētu, ka darīts pogas darbība, 723 00:38:45,000 --> 00:38:47,000 jo, ja tas nav noteikts, ka metode, un jūs nospiediet Done, 724 00:38:47,000 --> 00:38:49,000 tad tas būs mulsinoši. 725 00:38:49,000 --> 00:38:55,000 >> Pieņemsim apskatīt piemērs. 726 00:38:55,000 --> 00:38:58,000 Šeit es vienkārši ir viens tekstlodziņu, 727 00:38:58,000 --> 00:39:04,000 un viens no šīs tekstlodziņā īpašībām nekā šeit uz labajā pusē ir delegāts. 728 00:39:04,000 --> 00:39:06,000 Tas ir īpašums klasē. 729 00:39:06,000 --> 00:39:09,000 Ko es darīju šeit ir kontrolēt noklikšķinājuši, un es vilka no šīs vietas nekā šeit 730 00:39:09,000 --> 00:39:13,000 līdz skats kontrolieris, un kas saka tagad delegātu šajā tekstlodziņā 731 00:39:13,000 --> 00:39:18,000 būs skats kontrolieris. 732 00:39:18,000 --> 00:39:20,000 Tas nozīmē, ka tad, kad daži pasākumi notiks, nevis reģistrējot 733 00:39:20,000 --> 00:39:25,000 atsevišķas notikumu apstrādes Es gribu, lai jūs sūtīt tos uz delegātu. 734 00:39:25,000 --> 00:39:28,000 Tagad pieņemsim apskatīt manu viedokli kontrolieris. 735 00:39:28,000 --> 00:39:32,000 Iekšpusē. H failu es esmu solījums. 736 00:39:32,000 --> 00:39:36,000 Es esmu apsolījis īstenot dažas metodes iekšpuses šo protokolu 737 00:39:36,000 --> 00:39:38,000 sauc UITextFieldDelegate, un atkal, 738 00:39:38,000 --> 00:39:42,000 tas ir tikai daži saraksts ar dažām lietām, kas man varētu izvēlēties īstenot. 739 00:39:42,000 --> 00:39:46,000 >> Ja es šeit ierodas manā. M failu, man ir īstenojušas vienu šādu metodi. 740 00:39:46,000 --> 00:39:49,000 Es esmu to sauca textFieldShouldReturn 741 00:39:49,000 --> 00:39:52,000 jo tas, ko tā sauca iekšā protokola. 742 00:39:52,000 --> 00:39:57,000 Un tagad, kad es nospiediet pogu Gat iekšpusē šī teksta laukā 743 00:39:57,000 --> 00:40:00,000 tas ir tas, kas notiek, lai get sauc, tāpēc man nav reģistrēt notikuma apdarinātājs. 744 00:40:00,000 --> 00:40:03,000 Es pievienoju delegātu, un ja šis notikums tiek kurināti 745 00:40:03,000 --> 00:40:08,000 šī ir metode, kas būs get sauc, tāpēc, ja es nāk vairāk nekā šeit uz manu storyboard un palaist to- 746 00:40:08,000 --> 00:40:11,000 bet iekraušanas mēs varam redzēt, ko tas dara. 747 00:40:11,000 --> 00:40:13,000 Ekrānā man ir 2 lietas. 748 00:40:13,000 --> 00:40:16,000 Man ir šī teksta lauku, un es šo etiķeti. 749 00:40:16,000 --> 00:40:19,000 Es esmu vienkārši sakot, es gribu tekstu šīs etiķetes 750 00:40:19,000 --> 00:40:23,000 jābūt vienādam ar neatkarīgi lietotājs drukāti iekšpusē teksta laukā. 751 00:40:23,000 --> 00:40:26,000 Šis nākamais līnija šeit ir vienkārši metode, ka es esmu aicinot 752 00:40:26,000 --> 00:40:29,000 uz teksta lauka, kas saka es gribu, lai jūs slēpt tastatūru. 753 00:40:29,000 --> 00:40:33,000 Tas ir tikai patvaļīgi metode ka Apple izvēlējās. 754 00:40:33,000 --> 00:40:38,000 >> Atkal, pirms es darīju kaut man bija vadu viss uz augšu, tāpēc es pirmo nāca pāri šeit. 755 00:40:38,000 --> 00:40:42,000 No skata kontrolieris man vilkt pāri teksta lodziņā. 756 00:40:42,000 --> 00:40:46,000 Es let iet, un es redzu, ka es varētu darīt šo teksta lauka rekvizītu 757 00:40:46,000 --> 00:40:49,000 jo vairāk nekā šeit skata kontrolieris es esmu noteikti īpašumu 758 00:40:49,000 --> 00:40:52,000 ka ir IBOutlet no teksta lauka. 759 00:40:52,000 --> 00:40:55,000 Šis saka, ka es varētu wire īpašumu augšu 760 00:40:55,000 --> 00:40:59,000 teksta laukā manā UI. 761 00:40:59,000 --> 00:41:03,000 Tagad, kad es noklikšķiniet šo es varētu sākt rakstīt. 762 00:41:03,000 --> 00:41:06,000 Tagad, ja es noklikšķiniet uz pogas Gatavs tas notiek, lai ugunsgrēka 763 00:41:06,000 --> 00:41:08,000 notikums, kas es tagad var reaģēt. 764 00:41:08,000 --> 00:41:10,000 Nav notikumu apstrādes. 765 00:41:10,000 --> 00:41:13,000 Tas ir, kā es tikko atbildēja uz šo darīts pogu. 766 00:41:13,000 --> 00:41:15,000 Jēga? 767 00:41:15,000 --> 00:41:20,000 >> Tas nav dizaina modelis, kas, iespējams, kādreiz atrast sev 768 00:41:20,000 --> 00:41:23,000 izveidojot savu protokolu, bet tikai zinu, ka daži 769 00:41:23,000 --> 00:41:27,000 dažādi iOS komponenti reģistrēt notikumus dažādos veidos. 770 00:41:27,000 --> 00:41:29,000 Pogas, piemēram, izmantot šos IBActions. 771 00:41:29,000 --> 00:41:32,000 Teksta lauki, no otras puses, gatavojas izmantot delegātiem. 772 00:41:32,000 --> 00:41:36,000 Mēs varam redzēt, un jūs varat apskatīt visu šo up iekšpusē dokumentāciju. 773 00:41:36,000 --> 00:41:41,000 Starp citu, tur ir tiešām no UI stuff ton iebūvēts iOS par jums, 774 00:41:41,000 --> 00:41:46,000 tā, piemēram, kā es, ka saku darīts labajā apakšējā 775 00:41:46,000 --> 00:41:48,000 tiek es izvēlējos šo teksta lauku. 776 00:41:48,000 --> 00:41:50,000 Man nāca pāri šeit. 777 00:41:50,000 --> 00:41:53,000 Es apskatus mazliet atgriezties atslēgu, 778 00:41:53,000 --> 00:41:56,000 un es faktiski var veikt šo visu ķekars lietas, piemēram, ja es gribu, ka teikt 779 00:41:56,000 --> 00:42:00,000 Ārkārtas zvana vietā es varētu darīt, kas ir pilnīgi nejauši, 780 00:42:00,000 --> 00:42:02,000 un es nezinu, kāpēc tur ir iebūvēts ārkārtas zvanu poga, 781 00:42:02,000 --> 00:42:06,000 bet tur, tas saka ārkārtas zvaniem patiešām maziem burtiem. 782 00:42:06,000 --> 00:42:08,000 Tur jums iet. 783 00:42:08,000 --> 00:42:12,000 >> Noteikti izpētīt visas šīs dažādās iespējām iOS. 784 00:42:12,000 --> 00:42:14,000 Kādi jautājumi par delegātu? 785 00:42:14,000 --> 00:42:18,000 Atkal, tāpat interesanta dizaina modelis, kas jums ir jāapzinās. 786 00:42:18,000 --> 00:42:22,000 Labi, pieņemsim nākamā apskatīt galda viedokli. 787 00:42:22,000 --> 00:42:26,000 Tabulā ir būtībā, ka saraksts kas ir visas vietā iOS. 788 00:42:26,000 --> 00:42:29,000 Kad esat flipping cauri visiem saviem kontaktiem, jūs meklējat pie 789 00:42:29,000 --> 00:42:34,000 nosakot lapā, un ka sarakstu lietas veida sauc galda viedokli. 790 00:42:34,000 --> 00:42:37,000 Īstenojot tabulas skatu iOS ir diezgan vienkāršs. 791 00:42:37,000 --> 00:42:41,000 Tā vietā, lai klase, kas nolaižas no šī UIViewController 792 00:42:41,000 --> 00:42:44,000 kā mēs esam darījuši, pirms mēs vienkārši jāpasaka, nevis 793 00:42:44,000 --> 00:42:46,000 viss UIViewController tas ko es gribu darīt, 794 00:42:46,000 --> 00:42:50,000 Es saku viss UITableViewController tas ko es gribu darīt, 795 00:42:50,000 --> 00:42:54,000 lai vienkārši piebilst dažas papildu lietas, kas ir pilnīgi darīts, lai mums. 796 00:42:54,000 --> 00:42:58,000 Mums jādara ļoti maz, lai būtībā aizpildīt iekšpusē tabulas sagataves. 797 00:42:58,000 --> 00:43:02,000 >> Lai parādītu tabulu man ir nepieciešams, lai atbildētu uz dažiem jautājumiem. 798 00:43:02,000 --> 00:43:06,000 Pirmais jautājums man ir nepieciešams, lai atbildētu, ir, cik daudz sadaļas ir tabulā? 799 00:43:06,000 --> 00:43:08,000 Kad esat flipping caur jūsu kontaktu app jūs ievērosiet, ka tas ir sava veida 800 00:43:08,000 --> 00:43:12,000 organizēja Kā, tad jums ir BS, un jums ir, ka maz sub galvenes. 801 00:43:12,000 --> 00:43:14,000 Katrs no tiem sauc sadaļā. 802 00:43:14,000 --> 00:43:16,000 Jūs var vai nevar nepieciešams šos. 803 00:43:16,000 --> 00:43:19,000 Pirmā lieta, kas jums jādara, ir īstenot metodi 804 00:43:19,000 --> 00:43:22,000 sauc Tableview: numberOfSectionsInTableView. 805 00:43:22,000 --> 00:43:25,000 Tas vienkārši atgriež cik sadaļas jums ir, 806 00:43:25,000 --> 00:43:29,000 tā tas varētu teikt atgriezties vienu, ja jums ir viens liels tabulu skatu. 807 00:43:29,000 --> 00:43:33,000 Nākamais jautājums, kas iOS ir jāzina, cik daudz rindu jums ir? 808 00:43:33,000 --> 00:43:36,000 Piemēram, jūs esat flipping caur tabulas skatā. 809 00:43:36,000 --> 00:43:39,000 Jums ir fiksēts vairākas dziesmas, jūs meklējat pie vai fiksētu kontaktu skaita. 810 00:43:39,000 --> 00:43:41,000 Ja jūs esat man, protams, nav tik daudz, 811 00:43:41,000 --> 00:43:44,000 un tādējādi, kā iOS zina, cik daudz šūnu parādīt. 812 00:43:44,000 --> 00:43:46,000 >> Atkal, tas varētu teikt kaut ko līdzīgu 3 pretī. 813 00:43:46,000 --> 00:43:49,000 Mana galda viedoklis ir 3 rindas. 814 00:43:49,000 --> 00:43:52,000 Visbeidzot, iOS nepieciešams zināt, ko katra šūna izskatās, 815 00:43:52,000 --> 00:43:54,000 lai ko tas faktiski gatavojas darīt, ir zvanīt šo metodi šeit lejā, 816 00:43:54,000 --> 00:43:57,000 šo tabulas: cellForRowAtIndexPath. 817 00:43:57,000 --> 00:44:01,000 Tas notiek, lai izsauktu šo metodi, par katru šūnu iekšpusē jūsu galda. 818 00:44:01,000 --> 00:44:03,000 Kā tas zina, cik reizes to nosaukt? 819 00:44:03,000 --> 00:44:06,000 Nu, jūs teicis tā iekšpusē rindu skaitu sadaļā. 820 00:44:06,000 --> 00:44:08,000 Mēs ejam, lai izsauktu šo par katru no mūsu šūnām, 821 00:44:08,000 --> 00:44:11,000 un iekšpusē tas ir, ja jūs faktiski var darīt lietas, piemēram, 822 00:44:11,000 --> 00:44:16,000 noteikt tekstu vai pateikt to, ka maz zilo pogu labajā pusē dara. 823 00:44:16,000 --> 00:44:19,000 Modelis, lai iegūtu šīs šūnas, mēs spēsim izmantot šo metodi 824 00:44:19,000 --> 00:44:22,000 sauc dequeueReusableCellWithIdentifier. 825 00:44:22,000 --> 00:44:29,000 >> Mērķis-C ir tiešām ļoti labi zināms par smieklīgu garumam metodi vārdus, 826 00:44:29,000 --> 00:44:32,000 un tas ir patiešām jauks gadījums piemērs. 827 00:44:32,000 --> 00:44:37,000 Ko šī metode dara tas ir tikai saka, ka es gribu, lai jūs man šūnu. 828 00:44:37,000 --> 00:44:39,000 Tikai iOS lieta. 829 00:44:39,000 --> 00:44:41,000 Ja jums ir kaut kas līdzīgs 100.000 dziesmas uz jūsu iPod 830 00:44:41,000 --> 00:44:45,000 ko iOS nevēlas to darīt, ir piešķirt 100,000 šūnas, 831 00:44:45,000 --> 00:44:48,000 jo, ja tu esi augšā savu sarakstu, jums tiešām ir nepieciešams piešķirt atmiņu 832 00:44:48,000 --> 00:44:51,000 par šūnas, kas ir 99.000 rindas uz leju? 833 00:44:51,000 --> 00:44:55,000 Nē, jo, kā jūs ritinot varat veida piešķirt kā jums iet līdzi. 834 00:44:55,000 --> 00:44:57,000 Tas tiek darīts jums. 835 00:44:57,000 --> 00:44:59,000 Jums nav jāuztraucas par visu, kas stulba snieguma sīkumi. 836 00:44:59,000 --> 00:45:02,000 Viss, kas Jums pateikt, ir jums zvana šo metodi dequeueReusableCellWithIdentifier, 837 00:45:02,000 --> 00:45:06,000 un tas saka, labi, ja jums ir nepieciešams, lai es esmu gatavojas izveidot jaunu šūnu jums. 838 00:45:06,000 --> 00:45:09,000 >> Bet, ja tu esi apakšā galda un esat jau piešķirti aptuveni šūnas 839 00:45:09,000 --> 00:45:12,000 augšpusē tabulas, ka jūs tiešām nav būs nepieciešama jebkurā tuvākajā 840 00:45:12,000 --> 00:45:15,000 Es esmu gatavojas sniegt jums vienu no tiem atpakaļ vietā piešķirot jaunu, 841 00:45:15,000 --> 00:45:17,000 un tāpēc tas ir jauki sniegumu bažas. 842 00:45:17,000 --> 00:45:21,000 Jums nav jāpiešķir šūnas sevi. 843 00:45:21,000 --> 00:45:23,000 Kas notiek, lai dotu jums atpakaļ šūnu. 844 00:45:23,000 --> 00:45:25,000 Tas notiek, lai atgrieztos pie jums šūnu objektu. 845 00:45:25,000 --> 00:45:28,000 Kad esat šūnu objektu jūs varat darīt lietas ar to. 846 00:45:28,000 --> 00:45:32,000 Jūs varat iestatīt tekstu šūnā ar šo īpašumu sauc teksta etiķeti. 847 00:45:32,000 --> 00:45:36,000 Jūs varat pievienot šo bultiņas uz tiesību vai kādu citu izlases stuff 848 00:45:36,000 --> 00:45:41,000 ar šo citu īpašumu sauc accessoryType, un tā tālāk un tā tālāk. 849 00:45:41,000 --> 00:45:46,000 >> Pieņemsim to apskatīt faktiski īsteno galda viedokli tagad. 850 00:45:46,000 --> 00:45:49,000 Kad es izveidojis šo projektu 851 00:45:49,000 --> 00:45:53,000 nevis pasakot vienā skatā pieteikumu es tiešām nāca pār šeit 852 00:45:53,000 --> 00:45:57,000 līdz meistars-detail pieteikumu, un tāpēc būtībā tas atbilst pasta app 853 00:45:57,000 --> 00:46:01,000 par iPad ar tabulas kreisajā skatu un pēc tam par tiesībām saturu. 854 00:46:01,000 --> 00:46:07,000 Par iPod vai iPhone tas notiek, lai atbilstu viena galda skatā. 855 00:46:07,000 --> 00:46:10,000 Tas ir, ja es saņēmu savu startera kodu. 856 00:46:10,000 --> 00:46:13,000 >> Pieņemsim vispirms to apskatīt storyboard. 857 00:46:13,000 --> 00:46:15,000 Tas viss tika darīts attiecībā uz mani, būtībā radīja. 858 00:46:15,000 --> 00:46:18,000 Šī navigācijas josla man parādīja, ko piemērs šūnas varētu izskatīties, 859 00:46:18,000 --> 00:46:22,000 un es varētu dubultklikšķi tas, mainīt nosaukumu. 860 00:46:22,000 --> 00:46:25,000 Jebkuri citi UI bažas es varētu rīkoties tur. 861 00:46:25,000 --> 00:46:27,000 Header failu izskatās ļoti vienkārša. 862 00:46:27,000 --> 00:46:30,000 Nevis sakot, tas ir UIViewController mēs tagad sakot, tas ir 863 00:46:30,000 --> 00:46:35,000 TableViewController, tāpēc mēs zinām, ka mēs vēlamies aicināt visus šos tabulu metodes. 864 00:46:35,000 --> 00:46:38,000 Tālāk es gribu izveidot īpašumu, kas notiek, lai pārstāvētu 865 00:46:38,000 --> 00:46:40,000 lietas iekšpusē mana galda. 866 00:46:40,000 --> 00:46:43,000 Šī tabula ir gatavojas patvaļīgi parādītu 867 00:46:43,000 --> 00:46:46,000 sarakstu augļu, un tāpēc man ir nepieciešams, lai izveidotu kādu masīvu 868 00:46:46,000 --> 00:46:49,000 , kurā es varētu ievietot augļus. 869 00:46:49,000 --> 00:46:52,000 Iekšā manas īstenošanas failu Pirmais, ko es gribu darīt 870 00:46:52,000 --> 00:46:55,000 ir es gribu, lai pārliecinātos, es sāktu šo masīvu. 871 00:46:55,000 --> 00:46:58,000 >> Es teicu alloc Pr, izveidojis savu augļu masīvs, 872 00:46:58,000 --> 00:47:03,000 un es esmu pievienojot 4 lietas ar to, no kuriem viens ir daudz pretrunīgu nekā pārējās 3. 873 00:47:03,000 --> 00:47:06,000 Un tagad man ir masīvs 4 izmērs. 874 00:47:06,000 --> 00:47:08,000 Mēs kratot to uz augšu CS50. 875 00:47:08,000 --> 00:47:11,000 Man tagad ir masīvs 4 izmērs. 876 00:47:11,000 --> 00:47:13,000 Tagad es esmu gatavojas sākt atbildēt uz šiem jautājumiem, un faktiski, 877 00:47:13,000 --> 00:47:16,000 kad es izveidojis šo app tas viss tika izdarīts par mani. 878 00:47:16,000 --> 00:47:19,000 Man nav rakstīt out sekciju skaits tabulas skatā. 879 00:47:19,000 --> 00:47:22,000 Tas bija jau tur, un es esmu aizpildot veidlapas. 880 00:47:22,000 --> 00:47:24,000 Cik sadaļas man ir? 881 00:47:24,000 --> 00:47:26,000 Viens. Visu izdarīt. 882 00:47:26,000 --> 00:47:28,000 Cik rindas man ir? 883 00:47:28,000 --> 00:47:31,000 Nu, man ir viena rinda par katru augļu, tāpēc šis skaits 884 00:47:31,000 --> 00:47:34,000 ir īpašums jebkuru masīvu, kas saka, cik liels tas ir? 885 00:47:34,000 --> 00:47:36,000 Tas ir, cik rindas man ir. 886 00:47:36,000 --> 00:47:42,000 Visbeidzot, man ir nepieciešams pateikt, ko tas katru šūnu izskatās? 887 00:47:42,000 --> 00:47:46,000 Es esmu gatavojas teikt dequeueReusableCellWithIdentifier. 888 00:47:46,000 --> 00:47:48,000 >> Atkal, tas bija jau rakstīts par mani. 889 00:47:48,000 --> 00:47:51,000 Man nebija darīt sevi, un es vēlos, lai saņemtu atpakaļ 890 00:47:51,000 --> 00:47:54,000 Šis mobilais šajā vietā. 891 00:47:54,000 --> 00:47:57,000 Atcerieties, ka mēs esam aicinot šo pašu metodi, par katru šūnu, 892 00:47:57,000 --> 00:48:01,000 un šis arguments šeit, tas indexPath arguments, 893 00:48:01,000 --> 00:48:03,000 saka to rinda es esmu iekšā 894 00:48:03,000 --> 00:48:05,000 Ja es saku indexPath.row leju šeit 895 00:48:05,000 --> 00:48:09,000 tas būs 0, tad tas būs 1, tad tas būs 2, un tas ir, lai es zinu 896 00:48:09,000 --> 00:48:11,000 ko mobilo es esmu šobrīd izlikšana. 897 00:48:11,000 --> 00:48:15,000 Es gribu, lai noteiktu no šūnas tekstu, izmantojot šo TekstaIezīme īpašumu 898 00:48:15,000 --> 00:48:19,000 iet iekšā manu augļu masīvā un saņemt 899 00:48:19,000 --> 00:48:21,000 objekts atbilst katras rindas. 900 00:48:21,000 --> 00:48:24,000 Ja tas ir virkne, es esmu tagad nosakot 901 00:48:24,000 --> 00:48:28,000 teksts īpašumu virkni. 902 00:48:28,000 --> 00:48:30,000 Es varu darīt viena cita lieta. 903 00:48:30,000 --> 00:48:32,000 Es varu arī reģistrēt notikuma apdarinātājs par katru šūnu, 904 00:48:32,000 --> 00:48:35,000 tāpēc, kad es pieskarieties katram no šīm šūnām 905 00:48:35,000 --> 00:48:39,000 Šī didSelectRowAtIndexPath, tas tiks saukts par mani, 906 00:48:39,000 --> 00:48:42,000 tik vienkārši nosakot šo es tagad var rīkoties, kas notiek 907 00:48:42,000 --> 00:48:46,000 kad jūs pieskarieties šūnu, un atkal, mēs esam iet kurā šūna tika spiešanai 908 00:48:46,000 --> 00:48:50,000 lai mēs varētu atkārtoti šo pašu notikumu apdarinātājs visiem mūsu šūnām. 909 00:48:50,000 --> 00:48:53,000 >> Atkal, tas ir kaut kas iOS dara par mani. 910 00:48:53,000 --> 00:48:55,000 Pieņemsim parādīt citu kaitinošas uznirstošo 911 00:48:55,000 --> 00:48:59,000 kas vienkārši saka jums ir palielinājies kaut kur kaut kas 912 00:48:59,000 --> 00:49:04,000 būs rinda objektu. 913 00:49:04,000 --> 00:49:10,000 Kad es palaist šo, es esmu nāksies šo jauku tabulu skatu 914 00:49:10,000 --> 00:49:14,000 ar vienu rindu katram no šiem augļiem, un ja es pieskarieties vienam 915 00:49:14,000 --> 00:49:16,000 tas stāsta man, kas ir noticis. 916 00:49:16,000 --> 00:49:21,000 Jēga? 917 00:49:21,000 --> 00:49:24,000 Veidosim mazliet sarežģītāka par app, 918 00:49:24,000 --> 00:49:28,000 tik daudz, kā noklikšķinot jūs noplūktiem tomātus. 919 00:49:28,000 --> 00:49:31,000 Jauka daļa par storyboarding 920 00:49:31,000 --> 00:49:35,000 ir tas nav tikai gatavojas, lai palīdzētu mums dizains ekrāniem individuāli, 921 00:49:35,000 --> 00:49:38,000 tas arī notiek, lai palīdzētu mums tie kopā visa mūsu app, 922 00:49:38,000 --> 00:49:42,000 tāpēc galīgais app mēs būsim ēka ir tas jauki sporta ziņu lasītājs, 923 00:49:42,000 --> 00:49:45,000 un tā tas notiek, lai ir vairākas ekrāniem, un tāpēc es patiesībā var pārstāvēt 924 00:49:45,000 --> 00:49:48,000 Katrs no šiem vairākiem ekrāniem uz storyboard, 925 00:49:48,000 --> 00:49:52,000 un es varētu attālināt un redzēt manu app no ​​augstā līmenī. 926 00:49:52,000 --> 00:49:55,000 >> Lai izveidotu jaunu elementu iekšpusē manu storyboard 927 00:49:55,000 --> 00:49:59,000 tas ir patiešām vienkārši iekšpusē Interface Builder. 928 00:49:59,000 --> 00:50:01,000 Ja es gribu, lai pievienotu citu ekrānu tas, piemēram, 929 00:50:01,000 --> 00:50:06,000 Es var vispirms tālināt ar šķipsnu tālummaiņu ka Apple mīl tik daudz, 930 00:50:06,000 --> 00:50:09,000 un noteikti šeit pirms es meklēt pogu 931 00:50:09,000 --> 00:50:12,000 un es vilkt un nomest pogu 932 00:50:12,000 --> 00:50:15,000 ja es gribu, lai izveidotu jaunu ekrānu es patiesībā var tikai vilkt un nomest 933 00:50:15,000 --> 00:50:19,000 viss skats kontrolieris, tāpēc, ja es izvēlētos šo, velciet to vairāk nekā šeit, 934 00:50:19,000 --> 00:50:23,000 hey, tur ir cits ekrāns, un tāpēc tagad, izmantojot šo pašu storyboard failu 935 00:50:23,000 --> 00:50:26,000 Es varu būt visas iekšpusē manu app ekrāniem, un es varētu attālināt 936 00:50:26,000 --> 00:50:28,000 un redzēt, kā tie mijiedarbojas. 937 00:50:28,000 --> 00:50:32,000 Tie būs ne mijiedarbība vēl. 938 00:50:32,000 --> 00:50:36,000 Veids, kā šie 2 ekrāniem mijiedarbojas ir jums noteikt attiecības. 939 00:50:36,000 --> 00:50:39,000 Jūs varat būtībā teikt šo ekrānu, nospiežot šo pogu, 940 00:50:39,000 --> 00:50:42,000 Es gribu, lai jūs slaidu pār šo jauno ekrānu. 941 00:50:42,000 --> 00:50:44,000 Tas nozīmē, ka tas ir par attiecībām starp veida 942 00:50:44,000 --> 00:50:46,000  Pirmais ekrāns un otrā ekrāna. 943 00:50:46,000 --> 00:50:49,000 Jums ir būtībā bultu no šīs pogas uz otrā ekrāna 944 00:50:49,000 --> 00:50:53,000 sakot, ka tad, kad jūs nospiediet šo taustiņu, kas ir, ja es gribu iet. 945 00:50:53,000 --> 00:50:57,000 Tāpat kā mēs kontrole uzklikšķināt un vilka definēt šos noieta 946 00:50:57,000 --> 00:51:01,000 mēs esam gatavojas darīt to pašu, lai definētu šīs segues. 947 00:51:01,000 --> 00:51:05,000 >> Mēs redzam piemēru par to, un, pirms mēs patiesībā pāreja 948 00:51:05,000 --> 00:51:08,000 no viena ekrāna uz citu iOS ir jauka pietiekami, lai izsauktu šo metodi 949 00:51:08,000 --> 00:51:11,000 sauc prepareForSegue, un tas ir tas, kur mēs varam sākt 950 00:51:11,000 --> 00:51:14,000 nosūtot datus no viena app uz otru. 951 00:51:14,000 --> 00:51:17,000 Piemērā mēs esam par to apskatīt to būs pamatā ļaus mums 952 00:51:17,000 --> 00:51:20,000 lai filtrētu beisbola komandas ar līgu un tās sašķeltība. 953 00:51:20,000 --> 00:51:23,000 Kad es izvēlētos līgā, piemēram, es gribu pāreja 954 00:51:23,000 --> 00:51:25,000 uz manu nākamo ekrānu, kur es varētu parādīt visu nodaļu 955 00:51:25,000 --> 00:51:27,000 šajā līgā, vai visas dažādās komandās. 956 00:51:27,000 --> 00:51:31,000 Man vajag, lai nosūtītu uz šo ekrānu, ko komandas jums vajadzētu parādīt. 957 00:51:31,000 --> 00:51:35,000 Lai to izdarītu, es esmu gatavojas izmantot šo metodi šeit. 958 00:51:35,000 --> 00:51:39,000 >> Visbeidzot, tikai izlases punkts uz iOS. 959 00:51:39,000 --> 00:51:41,000 Ja jūs vēlaties, lai uzglabātu datus tur ir šo lietu sauc pamatdati, 960 00:51:41,000 --> 00:51:44,000 kas ir faktiski veida sarežģīti strādāt. 961 00:51:44,000 --> 00:51:47,000 Jūs varat arī izmantot SQL datu glabāšanai, 962 00:51:47,000 --> 00:51:51,000 kas, atkal, ir jauka, bet sava veida uz sarežģītāku puses strādāt, 963 00:51:51,000 --> 00:51:55,000 bet iOS arī atbalsta šos tiešām atdzist lietas, ko sauc īpašuma sarakstus, 964 00:51:55,000 --> 00:52:00,000 un īpašumu saraksts ir tikai fails, kas pārstāv galvenās vērtības pārus. 965 00:52:00,000 --> 00:52:03,000 Jūs definētu sarakstu atslēgas, un jūs sakāt šī atslēga būs masīvs. 966 00:52:03,000 --> 00:52:06,000 Šī atslēga būs stīgu, un būtībā visu, ko jūs varat darīt 967 00:52:06,000 --> 00:52:10,000 JSON jūs varat darīt iekšpusē īpašuma sarakstu, 968 00:52:10,000 --> 00:52:14,000 un tā tas tiešām labi ļauj mums strādāt ar dažiem datiem. 969 00:52:14,000 --> 00:52:18,000 Piemēram, man ir šī Teams.plist ka esmu izveidojis. 970 00:52:18,000 --> 00:52:22,000 Es izveidojis jaunu plist failu, un es varētu urbt uz leju. 971 00:52:22,000 --> 00:52:26,000 Tas ir vārdnīca, tas ir vārdnīca, tie ir stīgas, 972 00:52:26,000 --> 00:52:30,000 un tāpēc tas ir jauki grafisks JSON dokumentu 973 00:52:30,000 --> 00:52:33,000 vai tikai par galvenajiem vērtību pāriem, 974 00:52:33,000 --> 00:52:37,000 un tā tas ir dati, ka es būšu strādā ar iekšpusē manu app. 975 00:52:37,000 --> 00:52:40,000 >> Pieņemsim vispirms nāk vairāk nekā šeit. Mums ir daudz vairāk failus tagad. 976 00:52:40,000 --> 00:52:44,000 Bet pieņemsim vispirms nāk vairāk nekā šeit uz storyboard. 977 00:52:44,000 --> 00:52:48,000 Montāžas šeit-ja es varētu tālinātu- 978 00:52:48,000 --> 00:52:51,000 tagad mēs varam redzēt, ka tas ir plūsma manu app. 979 00:52:51,000 --> 00:52:53,000 Es esmu 1. gatavojas sākt šo ekrānu. 980 00:52:53,000 --> 00:52:55,000 Es esmu gatavojas urbt uz leju, lai šo ekrānu, 981 00:52:55,000 --> 00:52:58,000 un es esmu gatavojas, lai urbt uz leju, lai šo ekrānu, un mēs varam redzēt šeit, ka, ja es veida 982 00:52:58,000 --> 00:53:04,000 pārvietot vienu no šiem ap mēs esam šīs bultas iet no šeit šeit, 983 00:53:04,000 --> 00:53:08,000 un kā es noteikt, ka bultiņas bija, ja es tuvinātu mazliet, 984 00:53:08,000 --> 00:53:12,000 un, ja es nāk pāri uz šo skatu kontrolieris, 985 00:53:12,000 --> 00:53:16,000 un šeit ir šūna, un es gribu teikt, ka tad, kad jūs pieskarieties šūnu 986 00:53:16,000 --> 00:53:18,000 Es gribu, lai jūs slaidu pāri uz citu ekrānu. 987 00:53:18,000 --> 00:53:21,000 Es varētu vienkārši turēt kontroli, 988 00:53:21,000 --> 00:53:26,000 ritināt pa mazliet, turiet kontroli, velciet šo šūnu pāri un ļaut aiziet. 989 00:53:26,000 --> 00:53:30,000 >> Un vairāk nekā šeit mēs sakām, kas ir pāreja, kas jūs vēlaties izmantot? 990 00:53:30,000 --> 00:53:32,000 Vai jūs vēlaties izmantot šo slaidu lieta, ka sauc push? 991 00:53:32,000 --> 00:53:34,000 Vai jūs vēlaties, lai slaidu uz augšu no apakšas? 992 00:53:34,000 --> 00:53:36,000 Ka sauc modālā. 993 00:53:36,000 --> 00:53:40,000 Un, kad es noklikšķiniet uz viena no šiem, tas notiek, lai pievērstu šīs bultiņas uz mani, 994 00:53:40,000 --> 00:53:44,000 un tas nozīmē, ka es esmu patiešām jārīkojas, kas notiek, kad es nospiediet šo taustiņu grafiski. 995 00:53:44,000 --> 00:53:48,000 Man nav rakstīt jebkuru kodu faktiski slīdēt no viena ekrāna uz nākamo. 996 00:53:48,000 --> 00:53:51,000 Es noteikti tas vizuāli iekšpusē Interface Builder. 997 00:53:51,000 --> 00:53:55,000 Ja es noklikšķiniet uz šīs bultiņas, mēs varam redzēt, ka man deva šī lieta vārdu. 998 00:53:55,000 --> 00:53:59,000 Es to nosauca showDivisions, un tas ir tāpēc, ka es varētu zināt 999 00:53:59,000 --> 00:54:03,000 kāda pāreja varētu notikt, un mēs redzēsim, kāpēc tikai sec. 1000 00:54:03,000 --> 00:54:06,000 Tas ir, kā es esmu vadu līdz dažādus ekrānus manā app. 1001 00:54:06,000 --> 00:54:09,000 Ja tas bija poga, piemēram, nevis tabulas skatu, 1002 00:54:09,000 --> 00:54:11,000 Es varētu kontrolēt noklikšķiniet uz pogas, velciet pāri uz nākamo ekrānu, 1003 00:54:11,000 --> 00:54:16,000 un tas, kā es varu darīt navigācijas ka veidā. 1004 00:54:16,000 --> 00:54:19,000 >> Tiešām ātri, ja mēs nonāk MasterViewController, 1005 00:54:19,000 --> 00:54:22,000 atkal, mēs vienkārši gatavojas noteikt sarakstu ar lietām 1006 00:54:22,000 --> 00:54:26,000 , kas tiks parādīts tabulā skatā. 1007 00:54:26,000 --> 00:54:29,000 Šeit es saku es gribu, lai jūs pieņemt, ka plist failu, 1008 00:54:29,000 --> 00:54:32,000 un es gribu, lai jūs slodze to uz vārdnīcu, 1009 00:54:32,000 --> 00:54:35,000 un, kad jums ir, ka vārdnīcu, es esmu gatavojas atbildēt uz šiem pašiem jautājumiem atkal. 1010 00:54:35,000 --> 00:54:37,000 Šeit ir nodalījumu skaits. 1011 00:54:37,000 --> 00:54:41,000 Viens ir viena rinda par katru līgā, un katras šūnas tekstu 1012 00:54:41,000 --> 00:54:46,000 jābūt vai nu pirmais, Pirmās līgas, otrajā līgā, un tā tālāk. 1013 00:54:46,000 --> 00:54:51,000 Visbeidzot, es esmu gatavojas izmantot šo metodi, mēs tikko redzēju sauc prepareForSegue, 1014 00:54:51,000 --> 00:54:54,000 un tas ir metode, kas notiek, lai karsēt, kad es noklikšķiniet 1015 00:54:54,000 --> 00:54:57,000 uz vienu no šīm rindām un tāpēc aktivizējot ka pāreja 1016 00:54:57,000 --> 00:54:59,000 ka es noteikti ar bultiņām. 1017 00:54:59,000 --> 00:55:02,000 Tas ir saprotams, ka man var būt vairāki 1018 00:55:02,000 --> 00:55:05,000 attiecības no viena ekrāna uz otru. 1019 00:55:05,000 --> 00:55:08,000 Ja man ir 2 pogas un katra poga aizved jūs uz citu ekrānu 1020 00:55:08,000 --> 00:55:10,000 Es esmu gatavojas ir 2 segues, 1 katrai pogai. 1021 00:55:10,000 --> 00:55:14,000 Bet tas prepareForSegue ir, atkal, tiks atkārtoti 1022 00:55:14,000 --> 00:55:17,000 par katru no dažādām attiecībām, lai tas nozīmē, ka man ir nepieciešams veids 1023 00:55:17,000 --> 00:55:21,000 identificēt, ja jūs nospiediet pirmo pogu vai nospiežot otro pogu. 1024 00:55:21,000 --> 00:55:25,000 >> Atceros, kad man deva šo segue vārdu, šis showDivisions, 1025 00:55:25,000 --> 00:55:29,000 tas, kā es tagad zinu, ka tas ir segue kas tika aktivizēts. 1026 00:55:29,000 --> 00:55:32,000 Viss, ko es gribu darīt, ir es gribu teikt 1027 00:55:32,000 --> 00:55:35,000 Es gribu, lai saprastu, ko es tikko hit, 1028 00:55:35,000 --> 00:55:38,000 un tāpēc, lai iegūtu, ka es varu teikt, es gribu indexPath izvēlētā rindā, 1029 00:55:38,000 --> 00:55:42,000 atceros indexPath vienkārši saka, kur es tikko noklikšķinājuši, 1030 00:55:42,000 --> 00:55:47,000 un tad es gribu teikt, es gribu saprast, kur es esmu,. 1031 00:55:47,000 --> 00:55:50,000 Tas destinationViewController, kas ir īpašumā segue. 1032 00:55:50,000 --> 00:55:53,000 Tas ir ekrāna es esmu gatavojas, 1033 00:55:53,000 --> 00:55:56,000 tāpēc es zinu, ka ekrāns es esmu gatavojas sauc DivisionsViewController 1034 00:55:56,000 --> 00:55:59,000 jo es izveidojis šo kategoriju, 1035 00:55:59,000 --> 00:56:02,000 un tāpēc tagad, ja es saku d.divisions 1036 00:56:02,000 --> 00:56:06,000 Es tagad nosakot mantu skata kontrolieris es esmu par doties. 1037 00:56:06,000 --> 00:56:10,000 Tas ir kā es esmu nosūtot datus no viena ekrāna uz citu ekrānu. 1038 00:56:10,000 --> 00:56:13,000 >> Tikai apskatot šo DivisionsViewController 1039 00:56:13,000 --> 00:56:16,000 Jūs varat redzēt šeit, ka. h failu 1040 00:56:16,000 --> 00:56:20,000 tur ir tas, ka īpašuma sadalīšanai, un tas, ko es esmu būtībā aizpildi 1041 00:56:20,000 --> 00:56:25,000 Tātad tas, kā es zinu, ka es esmu parādot dalījumu atbilstoši 1042 00:56:25,000 --> 00:56:28,000 līga ka es noklikšķinājuši, un atkal, 1043 00:56:28,000 --> 00:56:31,000 faktiskais tabulas skatu izskatās diezgan daudz to pašu, tikai atbildot tiem 1044 00:56:31,000 --> 00:56:34,000 3 vienkārši jautājumi, kā arī identificējot 1045 00:56:34,000 --> 00:56:37,000 kas notiek, ja jūs pārvietot uz nākamo ekrānu. 1046 00:56:37,000 --> 00:56:40,000 Tikai pāris citas lietas šeit. 1047 00:56:40,000 --> 00:56:43,000 Jūs ievērosiet augšpusē šeit, ka nevis pasakot # ietvert 1048 00:56:43,000 --> 00:56:45,000 Es esmu tagad saka # importēt. 1049 00:56:45,000 --> 00:56:47,000 Tas ir tikai Mērķis-C lieta. 1050 00:56:47,000 --> 00:56:52,000 Importa būtībā jaukāku versija ietver, 1051 00:56:52,000 --> 00:56:57,000 un, piemēram, mums ir nepieciešams zināt, ko šī klase ir, 1052 00:56:57,000 --> 00:57:00,000 tāpēc es nevaru vienkārši pateikt DivisionsViewController. 1053 00:57:00,000 --> 00:57:05,000 Ja mums nebūtu hashtag standardio.c iekšpusē mūsu. C faila 1054 00:57:05,000 --> 00:57:07,000 kompilators nebija ne jausmas, kas printf bija. 1055 00:57:07,000 --> 00:57:12,000 Tāpat, ja man nav importēt DivisionsViewController 1056 00:57:12,000 --> 00:57:16,000 kompilators tiešām nav ne jausmas, ko DivisionsViewController ir. 1057 00:57:16,000 --> 00:57:19,000 Tikai pārliecinieties, ka iekšpusē jūsu dažādu. M failiem pārliecinieties importēt 1058 00:57:19,000 --> 00:57:25,000 atbilstošie. h failus, lai kompilators zina, kas notiek. 1059 00:57:25,000 --> 00:57:31,000 >> Visbeidzot, ko Apple galu galā tas ir parādīt dažus datus, izmantojot tīmekļa skatu, 1060 00:57:31,000 --> 00:57:35,000 un tā tīmekļa skats ir objekts, kurā jūs varat iegult 1061 00:57:35,000 --> 00:57:37,000 mazliet interneta pārlūku iekšpusē jūsu app. 1062 00:57:37,000 --> 00:57:40,000 Viss, kas jums jādara, ir sniegt URL uz jūsu tīmekļa pārlūku, 1063 00:57:40,000 --> 00:57:43,000 tāpēc es gribu iet uz mlb.mlb.com, 1064 00:57:43,000 --> 00:57:46,000 un tas ir, kā es varu piekļūt mājas lapā par katru komandu, 1065 00:57:46,000 --> 00:57:49,000 un tādējādi nokārtojot šis URL 1066 00:57:49,000 --> 00:57:52,000 Web skats var parādīt šo man, un es varu pārlūkot ap, 1067 00:57:52,000 --> 00:58:01,000 un simulators ir lietots ar šo vienu. 1068 00:58:01,000 --> 00:58:03,000 Tagad tas nāca no mana plist. 1069 00:58:03,000 --> 00:58:07,000 Ja es noklikšķiniet šis tas arī nāca no mana plist, un šī bīdāmās bija jārīkojas 1070 00:58:07,000 --> 00:58:09,000 definējot šo segues. 1071 00:58:09,000 --> 00:58:12,000 Es noklikšķiniet šo un vēl vienu, 1072 00:58:12,000 --> 00:58:15,000 un tagad šeit ir mana UIWebView, lai tieši tāpat 1073 00:58:15,000 --> 00:58:19,000 šeit ir par URL mājas lapu, kas man tikko iegultās, 1074 00:58:19,000 --> 00:58:21,000 un man nebija rīkoties kaut traks. 1075 00:58:21,000 --> 00:58:24,000 Tas ir veids, kā parādīt tīmekļa lapu. 1076 00:58:24,000 --> 00:58:27,000 Lietas, piemēram, šā atpakaļ pogu šeit tiek dota man 1077 00:58:27,000 --> 00:58:33,000 pilnīgi bez maksas, jo es esmu noteikti šīs attiecības izmantojot segues. 1078 00:58:33,000 --> 00:58:37,000 >> Kādi jautājumi? Yeah. 1079 00:58:37,000 --> 00:58:40,000 [Studentu] Tātad, ja jūs izmantojat alloc, jums nekad nav brīvu kaut ko? 1080 00:58:40,000 --> 00:58:43,000 Tieši tā, kad jūs zvanu alloc un Pr jums nav, lai atbrīvotu to. 1081 00:58:43,000 --> 00:58:46,000 IOS gatavojas rīkoties ar visu, kas jums. 1082 00:58:46,000 --> 00:58:51,000 Tas ir brīnišķīgi, un jūs ne nepārkāptu noteikumus. Yeah. 1083 00:58:51,000 --> 00:58:54,000 [Studentu] Ja tu būtu iekļaut vairāk komandas, kas varētu fit uz ekrāna, 1084 00:58:54,000 --> 00:58:58,000 būtu tas automātiski ir ritināšanas iespēja, vai arī tas ir kaut kas jums ir nepieciešams, lai pievienotu? 1085 00:58:58,000 --> 00:59:01,000 Tieši tā, ja man bija vairāk komandas, piemēram, tas varētu automātiski apstrādāt 1086 00:59:01,000 --> 00:59:04,000 ritināšanu par mani, un visi veiktspējas bažas 1087 00:59:04,000 --> 00:59:08,000 ar milzīgu tabulā ir arī jārīkojas pilnīgi par mani. 1088 00:59:08,000 --> 00:59:11,000 >> Citi jautājumi? 1089 00:59:11,000 --> 00:59:13,000 Visa šī koda gatavojas publicēt. 1090 00:59:13,000 --> 00:59:16,000 Mēs veida noklusēti mazliet vairāk nelielas detaļas, 1091 00:59:16,000 --> 00:59:19,000 bet lietas, piemēram nosakot dažas īpašības, lai mājas skatā 1092 00:59:19,000 --> 00:59:22,000 ir tikai lietas, ko jūs varat saņemt, pārlūkojot Apple dokumentāciju, 1093 00:59:22,000 --> 00:59:24,000 kas ir ļoti, ļoti labi izklāstīts. 1094 00:59:24,000 --> 00:59:27,000 Viņiem ir vairāki izlases progr daudz un piemēru paražas 1095 00:59:27,000 --> 00:59:34,000 dažādu API, tāpēc noteikti iepazīties tiem, ja jūs varat. 1096 00:59:34,000 --> 00:59:36,000 Tikai dažas noderīgas saites jūs varētu vēlēties, lai apskatīt. 1097 00:59:36,000 --> 00:59:38,000 Tie ir daži parocīgu dokumentācija gidi. 1098 00:59:38,000 --> 00:59:41,000 URL ir milzīgi, lai viņi saīsināts. 1099 00:59:41,000 --> 00:59:44,000 Tas pirmais ir visu bibliotēku dokumentācijas. 1100 00:59:44,000 --> 00:59:46,000 Ir maz meklēt bāri, tādēļ, ja jūs sākat rakstīt pogu 1101 00:59:46,000 --> 00:59:50,000 tas sāks sniedzot jums visu informāciju par visām lietām, ko jūs varat darīt ar pogu. 1102 00:59:50,000 --> 00:59:53,000 Es esmu iekļauts arī tabulu skatu Programming Guide. 1103 00:59:53,000 --> 00:59:56,000 Tā rokturi galda viedokli daudz sīkāk, 1104 00:59:56,000 --> 01:00:00,000 kā darīt lietas, piemēram, dinamiski pievienot šūnas vai rediģētu šūnu vai noņemt. 1105 01:00:00,000 --> 01:00:02,000 >> Ir daudz izlases progr no Apple, kas parādīs, kā to darīt, 1106 01:00:02,000 --> 01:00:05,000 un visbeidzot, šis pēdējais ir interfeisa pamatnostādnes, 1107 01:00:05,000 --> 01:00:09,000 un tas ir pamatā dažiem diskusiju par UI komponenti, 1108 01:00:09,000 --> 01:00:12,000 lietas, piemēram, nav padarīt pogu, kas ir 4 pikseļi par 4 pikseļiem. 1109 01:00:12,000 --> 01:00:15,000 Tas ir slikta ideja, un citas lietas, kas Apple vēlas, lai jūs darīt 1110 01:00:15,000 --> 01:00:18,000 veicināt labu dizainu. 1111 01:00:18,000 --> 01:00:23,000 >> Jebkuras pēdējie jautājumi, pirms mēs pabeigt līdz? 1112 01:00:23,000 --> 01:00:27,000 Labi, noteikti justies brīvi, we're nāksies īpašas uzlīmes uz diskutēt. 1113 01:00:27,000 --> 01:00:30,000 Mums būs iOS vienu, tāpēc noteikti justies brīvi izmantot to. 1114 01:00:30,000 --> 01:00:34,000 Ja jūs vēlaties strādāt ar saviem klasesbiedriem par projektiem 1115 01:00:34,000 --> 01:00:37,000 vai palīdzēt izrēķināt daži izlases iOS sīkumi 1116 01:00:37,000 --> 01:00:40,000 justies brīvi uz e-pastu man, un noteikti iepazīties visu kodu tiešsaistē, jo 1117 01:00:40,000 --> 01:00:43,000 vienkārši interesēs laika mēs veida noklusēti vairāk 1118 01:00:43,000 --> 01:00:45,000 smalkāka graudainu ziņas par lietām. 1119 01:00:45,000 --> 01:00:47,000 Bet ja ne, tad lai jums veicas jūsu iOS projektiem, un es ceru, ka mums ir 1120 01:00:47,000 --> 01:00:53,000 liels pieplūdums progr no App Store. 1121 01:00:53,000 --> 01:00:56,000 [CS50.TV]