1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [Seminar] [IOS: Kitba apps Bħal Boss] 2 00:00:02,000 --> 00:00:04,000 [Tommy MacWilliam] [Università ta 'Harvard] 3 00:00:04,000 --> 00:00:08,000 [Dan huwa CS50.] [CS50.TV] 4 00:00:08,000 --> 00:00:12,000 >> Kull dritt, kulħadd, merħba lill IOS: Kitba apps bħal Boss. 5 00:00:12,000 --> 00:00:16,000 Dan is-seminar ser jiffoka fuq kitba apps għall-iPhone 6 00:00:16,000 --> 00:00:19,000 u min-naħa miktub apps għall-iPad, u għalhekk aħna qed bażikament se jimxu permezz 7 00:00:19,000 --> 00:00:23,000 xi eżempji differenti ftit ta 'kif tagħmel app, logħba sempliċi bħal Tic Tac Toe, 8 00:00:23,000 --> 00:00:26,000 jew jekk int aktar interessati li jagħmlu app bħal xi tip ta 'aħbarijiet qarrej 9 00:00:26,000 --> 00:00:30,000 jew xi ħaġa li jinteraġixxi ma 'l-Internet I se jitkellmu dwar dan ukoll. 10 00:00:30,000 --> 00:00:32,000 Hawn aġenda fil-qosor tagħna. 11 00:00:32,000 --> 00:00:36,000 >> Apps IOS huma miktuba b'lingwa imsejjaħ Objettiv-C, 12 00:00:36,000 --> 00:00:39,000 u għalhekk dan huwa ftit simili għal C iżda mhux verament fil-livelli kollha, 13 00:00:39,000 --> 00:00:41,000 hekk aħna ser tkun jitkellem ftit dwar il-lingwa nnifisha 14 00:00:41,000 --> 00:00:45,000 u mbagħad kif tibni apps iPhone jużaw dan il-programm app imsejħa Xcode, 15 00:00:45,000 --> 00:00:48,000 li jekk int ma jitniżżel encore tħossok liberu li tibda l-download issa. 16 00:00:48,000 --> 00:00:50,000 Huwa gigabytes diversi. 17 00:00:50,000 --> 00:00:54,000 Għandu jkun ħieles fuq il-Aħżen App, hekk ikollok bzonn li jkollhom Mac 18 00:00:54,000 --> 00:00:57,000 idealment jmexxu l-aħħar verżjoni ta 'OS X. 19 00:00:57,000 --> 00:00:59,000 Jekk int ma, l-ebda problema. 20 00:00:59,000 --> 00:01:02,000 Għandna MACs fil-ċentru tax-xjenza disponibbli għall-użu tiegħek 21 00:01:02,000 --> 00:01:05,000 ma Xcode installati, u hekk li tħossok liberu li juża dawk għall-iżvilupp. 22 00:01:05,000 --> 00:01:07,000 Jekk inti tixtieq li tagħmel app iżda ma jkollhomx Mac, tinkwetax. 23 00:01:07,000 --> 00:01:09,000 Hemm ħafna ta 'riżorsi kampus għal dan. 24 00:01:09,000 --> 00:01:15,000 U hekk allura aħna qed tmur biex tkopri 2 eżempji akbar ta 'apps differenti inti tista' tagħmel. 25 00:01:15,000 --> 00:01:19,000 Għan-C hija teknikament dak li sejjaħ sett super ta 'C. 26 00:01:19,000 --> 00:01:24,000 Dan ifisser li kwalunkwe kodiċi C hija wkoll valida Għan-C kodiċi. 27 00:01:24,000 --> 00:01:29,000 Dan ifisser li aħna tip ta 'kanal taped fuq xi karatteristiċi addizzjonali għal C. 28 00:01:29,000 --> 00:01:33,000 Xi wħud minn dawn il-karatteristiċi jinkludu ma jkollhom qatt tikteb malloc darb'oħra, nirringrazzjaw 'l Alla, 29 00:01:33,000 --> 00:01:36,000 ebda joqogħdu jinkwetaw dwar dawk il-pointers stupid u ħelsien tagħhom u dak kollu li Jittieħed 30 00:01:36,000 --> 00:01:40,000 inti hated dwar Ċ, u huwa tip ta 'marret fil-Objettiv-C. 31 00:01:40,000 --> 00:01:43,000 >> Issa, Objettiv-C għandha wkoll librerija standard ħafna akbar, 32 00:01:43,000 --> 00:01:47,000 hekk hemm funzjonalità ħafna aktar ikollok għal ġewwa mingħajr Objettiv-C. 33 00:01:47,000 --> 00:01:50,000 Tiftakar meta konna bil-miktub PHP aħna ndunat li aħna marru minn 34 00:01:50,000 --> 00:01:54,000 din il-lingwa iżgħar għall-librerija ġgant ta 'dawn l-affarijiet crazy li tista' tagħmel. 35 00:01:54,000 --> 00:01:56,000 L-istess ħaġa jiġri fil IOS. 36 00:01:56,000 --> 00:01:59,000 Hemm oġġetti għal affarijiet bħall-kalendarju Buddisti, u verament xejn 37 00:01:59,000 --> 00:02:05,000 inti tista 'possibilment taħseb probabbilment teżisti diġà fl-implimentazzjoni Objettiv-C ta. 38 00:02:05,000 --> 00:02:08,000 Il-parti objettiv ta 'Objettiv-C huwa referenzar xi ħaġa 39 00:02:08,000 --> 00:02:11,000 imsejħa Għan Orjentati Programmazzjoni-. 40 00:02:11,000 --> 00:02:14,000 Dan huwa tip ta 'kunċett ġdid, imma aħna ħadthom attwalment aktar tgħallmu 41 00:02:14,000 --> 00:02:17,000 ħafna ta 'dawn il-kunċetti diġà. 42 00:02:17,000 --> 00:02:19,000 L-idea wara Għan Orjentati Programmazzjoni huwa li inti qed tmur biex jistrutturaw 43 00:02:19,000 --> 00:02:23,000 ħafna tal-kodiċi tiegħek madwar dawn l-affarijiet imsejħa klassijiet, 44 00:02:23,000 --> 00:02:26,000 u dawn il-klassijiet huma verament glorified structs. 45 00:02:26,000 --> 00:02:30,000 Ġewwa ta 'Struct aħna bażikament qal hawnhekk hija ħaġa, 46 00:02:30,000 --> 00:02:32,000 u dan ħaġa jista 'jkollhom membri. 47 00:02:32,000 --> 00:02:35,000 Per eżempju, node f'lista marbut jista 'jkollhom affarijiet oħra 48 00:02:35,000 --> 00:02:38,000 bħal valur, pointer għall-node li jmiss fil-lista, 49 00:02:38,000 --> 00:02:44,000 u flimkien li pointer u li l-valur kompost f'dan il-każ wieħed ta 'Struct. 50 00:02:44,000 --> 00:02:47,000 Klassijiet huma simili ħafna ħlief 51 00:02:47,000 --> 00:02:50,000 klassijiet tista 'wkoll ikollhom funzjonijiet ġewwa minnhom. 52 00:02:50,000 --> 00:02:54,000 Meta aħna iddikjarat Struct, nistgħu biss jgħidu n INT jew * node jmiss. 53 00:02:54,000 --> 00:02:57,000 >> Issa ma Objettiv-C nistgħu fil-fatt imqiegħda funzjonijiet 54 00:02:57,000 --> 00:02:59,000 ġewwa ta 'dawk l-affarijiet. 55 00:02:59,000 --> 00:03:03,000 Ħaġa oħra li l-klassijiet tista 'tagħmel huwa ikunu jistgħu jirtu data minn klassijiet oħrajn. 56 00:03:03,000 --> 00:03:07,000 Per eżempju, aħna ser tkun tħares lejn mazz ta 'mibnija fil-Objettiv-C klassijiet. 57 00:03:07,000 --> 00:03:11,000 Wieħed minnhom jista 'jkun il-klassi li tirrappreżenta l-fehma għal screen, 58 00:03:11,000 --> 00:03:14,000 u dan billi qal nixtieq li jimplimentaw fehma tiegħi stess 59 00:03:14,000 --> 00:03:18,000 aħna bażikament ngħidu xi ħadd fuq medda ta 'Apple, in-nies probabbilment tassew sbieħ, 60 00:03:18,000 --> 00:03:21,000 kiteb din il-klassi għalija, u mankijiet affarijiet simili wiri buttuni 61 00:03:21,000 --> 00:03:25,000 jew jirrendu l-iskrin, u aħna se jkunu verament pained 62 00:03:25,000 --> 00:03:28,000 biex jimplimentaw dak kollu li funzjonalità nfusna, u dan billi sempliċiment 63 00:03:28,000 --> 00:03:31,000 jiret id-data nistgħu ngħidu dak kollu li għamilt f'dik il-klassi 64 00:03:31,000 --> 00:03:34,000 Nixtieq ukoll ġewwa ta 'klassi tiegħi, u mbagħad jien ser jagħmlu xi għalf ieħor, 65 00:03:34,000 --> 00:03:37,000 jiġifieri jimplimentaw app. 66 00:03:37,000 --> 00:03:40,000 Dak hu li wirt kelma tfisser. Ser naraw eżempju aktar konkreta. 67 00:03:40,000 --> 00:03:42,000 >> U fl-aħħarnett, il-muftieħ bil Għan Orjentati Programmazzjoni huwa li 68 00:03:42,000 --> 00:03:45,000 din twassal għal data inkapsulament. 69 00:03:45,000 --> 00:03:48,000 F'xi wħud mill-problema tagħna settijiet jista 'jkollna dawn kbar, varjabbli globali 70 00:03:48,000 --> 00:03:51,000 u globals kullimkien, u li l kif aħna'd jżommu rekord ta 'l-istat. 71 00:03:51,000 --> 00:03:55,000 Bil-klassijiet nkunu nistgħu nibdew siġillar informazzjoni minn ġewwa ta 'oġġett. 72 00:03:55,000 --> 00:03:58,000 Jekk aħna għandna waħda iskrin fuq app tagħna, aħna ma verament bżonn li jkollhom xi data minn 73 00:03:58,000 --> 00:04:01,000 ieħor iskrin fil ġewwa app tagħna ta 'dan, 74 00:04:01,000 --> 00:04:04,000 u dan billi siġillar affarijiet fil-klassijiet dan fil-fatt iwassal 75 00:04:04,000 --> 00:04:08,000 it-tfassil kodiċi ferm aħjar, u dan huwa possibbli ma 'wħud mill-karatteristiċi addizzjonali 76 00:04:08,000 --> 00:04:11,000 ta 'Objettiv-C. 77 00:04:11,000 --> 00:04:15,000 Forewarning, il-sintassi għall-Objettiv-C hija banana. 78 00:04:15,000 --> 00:04:19,000 Huwa simili xejn konna rajna qabel, 79 00:04:19,000 --> 00:04:22,000 għalhekk huwa xi ftit ta 'kurva tat-tagħlim jkollna użati biex 80 00:04:22,000 --> 00:04:24,000 dak l-Heck jfisser dan? 81 00:04:24,000 --> 00:04:27,000 Imma ladarba ikollok passat li kurva tat-tagħlim tal-bidu huwa tassew, tassew bla xkiel 82 00:04:27,000 --> 00:04:29,000 li tibda bil-miktub apps. 83 00:04:29,000 --> 00:04:33,000 >> Tiddikjara klassi, li jgħidu hawnhekk hija klassi tiegħi, dan jeżisti, 84 00:04:33,000 --> 00:04:35,000 u forsi hawn huma xi affarijiet li jien ser jiddefinixxu aktar tard, 85 00:04:35,000 --> 00:04:38,000 Jien se ngħid @ interface. 86 00:04:38,000 --> 00:04:41,000 Jien se ngħid @ interface. Jien ser tagħti klassi tiegħi isem. 87 00:04:41,000 --> 00:04:43,000 U mbagħad wara x'imkien ieħor jien se ngħid @ għan, 88 00:04:43,000 --> 00:04:46,000 u kollox bejn l-interface @ u t-tmiem @ 89 00:04:46,000 --> 00:04:48,000 se tkun klassi tiegħi. 90 00:04:48,000 --> 00:04:51,000 Dan se jkun x'hemm ġewwa ta 'fajls tagħna h.. 91 00:04:51,000 --> 00:04:55,000 Eżatt bħal fis-C tagħna. Fajls h bażikament qal hawn huma xi affarijiet li se jeżistu. 92 00:04:55,000 --> 00:04:57,000 Jien ma neċessarjament tghidlek dak li jagħmlu s'issa, 93 00:04:57,000 --> 00:04:59,000 iżda l-kumpilatur jeħtieġ li tkun taf li dawn jeżistu. 94 00:04:59,000 --> 00:05:04,000 Aktar tard ġewwa ta '. M tagħna files' għax m għall-Objettiv-C 95 00:05:04,000 --> 00:05:08,000 huwa fejn aħna qed attwalment għaddejjin biex jiddefinixxu liema dawn il-klassijiet do. 96 00:05:08,000 --> 00:05:11,000 Ħafna bħall-fajls tagħna c., Aħna ipprovdew implimentazzjoni għall-funzjonijiet. 97 00:05:11,000 --> 00:05:15,000 Ġewwa ta '. M fajl tagħna aħna qed tmur biex ngħid hawnhekk huwa dak li l-funzjonijiet kollha 98 00:05:15,000 --> 00:05:18,000 ġewwa ta 'tiegħi klassi dak dawn kollha jagħmlu. 99 00:05:18,000 --> 00:05:22,000 U fl-aħħarnett, ġewwa ta 'Struct nistgħu ngħidu ġewwa ta' dawk ċineg kaboċċi 100 00:05:22,000 --> 00:05:25,000 int, n jew node * li jmiss 101 00:05:25,000 --> 00:05:28,000 u fl-Għan-C aħna qed tmur biex tuża l-keyword @ proprjetà, 102 00:05:28,000 --> 00:05:31,000 u dan huwa dak li għaddej biex jiddefinixxu l-karatteristiċi, 103 00:05:31,000 --> 00:05:36,000 jew il-funzjonijiet mhux li huma parti ta 'klassijiet tiegħi. 104 00:05:36,000 --> 00:05:40,000 >> Sejħat funzjonijiet Objettiv-C hija wkoll banana. 105 00:05:40,000 --> 00:05:43,000 Meta aħna ddikjarat funzjonijiet C għidna xi ħaġa bħal int foo 106 00:05:43,000 --> 00:05:46,000 u miftuħa paren u mbagħad tatha lista ta 'argumenti. 107 00:05:46,000 --> 00:05:51,000 Dan huwa dak li tiddikjara metodi jew funzjonijiet Dehra fil Objettiv-C. 108 00:05:51,000 --> 00:05:54,000 Jekk irrid niddikjara funzjoni jew metodu 109 00:05:54,000 --> 00:05:58,000 fejn jien qal il-metodu huwa verament ftit funzjoni li l-membru ta 'klassi, 110 00:05:58,000 --> 00:06:01,000 għalhekk tip ta 'interkambjabbli, imma mhux verament, 111 00:06:01,000 --> 00:06:03,000 hekk ġewwa ta 'metodu tiegħi Irrid li toħloq metodu ġdid. 112 00:06:03,000 --> 00:06:06,000 Huwa ser jirritorna xejn, hekk li għaddej biex tkun ta 'tip null. 113 00:06:06,000 --> 00:06:08,000 Dan huwa t-tip ritorn ta 'funzjoni tiegħi. 114 00:06:08,000 --> 00:06:11,000 Issa għandna parens hawnhekk għaliex-I do not know. 115 00:06:11,000 --> 00:06:14,000 Li jmiss se tkun l-isem tal-funzjoni tiegħi, 116 00:06:14,000 --> 00:06:17,000 u mbagħad finalment aħna għandna punto virgola bħad kellna fil C. 117 00:06:17,000 --> 00:06:19,000 X'hemm ġdid hawn huwa dan Guy hawn. 118 00:06:19,000 --> 00:06:22,000 Dan sing huwa effettivament neċessarju, u dak li dan jgħid huwa li 119 00:06:22,000 --> 00:06:26,000 dan il-metodu hawn għandhom jiġu mistiedna każ ta 'klassi. 120 00:06:26,000 --> 00:06:29,000 >> Wara aħna ddikjarat structs tagħna aħna probabbilment qal xi ħaġa simili 121 00:06:29,000 --> 00:06:32,000 n node Struct, u li fil-fatt ħoloq 122 00:06:32,000 --> 00:06:35,000 jew instantiated wieħed minn dawk structs sabiex I jistgħu attwalment jibdew jaħdmu 123 00:06:35,000 --> 00:06:38,000 ma x'hemm ġewwa ta 'dan, sabiex dan sing ifisser li għandna biex 124 00:06:38,000 --> 00:06:41,000 instantiate-klassi bħad aħna instantiated li Struct 125 00:06:41,000 --> 00:06:43,000 qabel ma nistgħu sejħa dan il-metodu fuqha. 126 00:06:43,000 --> 00:06:46,000 Jekk irrid tibda żżid argumenti għall-metodi tiegħi 127 00:06:46,000 --> 00:06:48,000 jiġrilha banana saħansitra aktar. 128 00:06:48,000 --> 00:06:50,000 Hawn isem tal-metodu tiegħi. 129 00:06:50,000 --> 00:06:53,000 Imbagħad jien ser ikollhom kolon, u wara dan kolon jgħid hawnhekk jidħol xi argumenti. 130 00:06:53,000 --> 00:06:56,000 Dan il-metodu tieħu waħda argument. 131 00:06:56,000 --> 00:06:59,000 It-tip ta 'argument tagħha huwa int, u l-isem ta' dan l-argument 132 00:06:59,000 --> 00:07:03,000 jew il-varjabbli li jien ser tibda tuża ġewwa tal-metodu huwa msejjaħ i. 133 00:07:03,000 --> 00:07:05,000 Għal darb'oħra, dan huwa metodu. Huwa jieħu l-argument. 134 00:07:05,000 --> 00:07:10,000 >> Jekk inti tixtieq li tibda żżid l-argumenti aktar jiġrilha banana aktar 135 00:07:10,000 --> 00:07:13,000 f'dak aħna għandna dan kolon li tgħid hawnhekk jidħol lista tiegħi ta 'argumenti. 136 00:07:13,000 --> 00:07:15,000 Dan l-argument ewwel huwa integer. 137 00:07:15,000 --> 00:07:17,000 Issa, dan l-argument tat-tieni huwa interessanti. 138 00:07:17,000 --> 00:07:20,000 Il-varjabbli li jien se tkun qed tuża ġewwa tal-funzjoni tiegħi 139 00:07:20,000 --> 00:07:23,000 huwa msejjaħ f, hekk ġewwa ta 'funzjoni tiegħi nista' ngħid 140 00:07:23,000 --> 00:07:25,000 f = 1 + jew xi ħaġa. 141 00:07:25,000 --> 00:07:30,000 Din ħaġa hawnhekk huwa bażikament ewlieni għall dan l-argument jew parametru. 142 00:07:30,000 --> 00:07:34,000 Eżatt bħal kellna pari b'valur ewlenin u xi ħaġa simili JSON jew arrays ta 'assoċjazzjoni 143 00:07:34,000 --> 00:07:37,000 Għan-C għamlet id-deċiżjoni li jgħidu, okay, biss b'tali mod li huwa verament ċara 144 00:07:37,000 --> 00:07:39,000 meta inti sejħa metodu liema dawn il-parametri huma 145 00:07:39,000 --> 00:07:41,000 Jien fil-fatt ser insemmu lilhom kollha. 146 00:07:41,000 --> 00:07:45,000 Meta inti sejħa metodu, inti ser fil-fatt tgħid andFloat, 147 00:07:45,000 --> 00:07:47,000 u allura inti ser jgħaddu hija pulzieri 148 00:07:47,000 --> 00:07:50,000 >> Interessanti, dan huwa wieħed mhux imsemmi, iżda kollha tal-parametri l-oħra huma, 149 00:07:50,000 --> 00:07:53,000 hekk jekk kellna argument 3 nista 'ngħid andFloat 150 00:07:53,000 --> 00:07:56,000 u ieħor float u l-bqija. 151 00:07:56,000 --> 00:08:01,000 Meta I call dawn il-metodi huwa ta 'banana kors, 152 00:08:01,000 --> 00:08:04,000 hekk jekk I jkollhom oġġett, u I definit metodu msejjaħ foo, 153 00:08:04,000 --> 00:08:09,000 u nixtieq li hija sejħa, aktar milli qal foo miftuħa / mill-qrib parens 154 00:08:09,000 --> 00:08:11,000 Jien ser tiftaħ bracket. 155 00:08:11,000 --> 00:08:13,000 Hawn l-isem tal-metodu tiegħi. 156 00:08:13,000 --> 00:08:17,000 Jien ser tagħlaq il-kategorija, u dan huwa l-oġġett jien ssejjaħ fuq. 157 00:08:17,000 --> 00:08:20,000 Ftakar, kollha ta 'dawn il-metodi jeżistu fil-klassijiet 158 00:08:20,000 --> 00:08:23,000 minħabba klassijiet jista 'jkollhom metodi definiti ġewwa minnhom. 159 00:08:23,000 --> 00:08:26,000 >> Hawnhekk stajt arbitrarju maħluqa oġġett ta 'xi klassi, 160 00:08:26,000 --> 00:08:28,000 u dan huwa l-sintassi biex isir dan. 161 00:08:28,000 --> 00:08:31,000 Hemm 2 passi għall-ħolqien ta 'oġġett. 162 00:08:31,000 --> 00:08:34,000 L-ewwel pass huwa li jgħidu Irrid li jallokaw spazju. 163 00:08:34,000 --> 00:08:37,000 Dan huwa l-ekwivalenti ta 'malloc. Aħna ma jkollhom jgħidu malloc aktar. 164 00:08:37,000 --> 00:08:42,000 Aħna niżel l-m, għamilha alloc, u ssostitwixxa-c. Ma. M. 165 00:08:42,000 --> 00:08:47,000 Wara xi ħaġa alloc għandna aħna mbagħad bżonn li initialize dan. 166 00:08:47,000 --> 00:08:49,000 Bażikament meta inti joħolqu oġġetti li inti tista 'tixtieq li jkollha xi loġika 167 00:08:49,000 --> 00:08:53,000 li tesegwixxi meta jkunu qed maħluqa, sabiex inti tista 'tgħaddi f'xi valuri awtomatiċi 168 00:08:53,000 --> 00:08:57,000 jew xi ħaġa bħal dik, u għalhekk dan il-metodu Iniz huwa dak effettivament toħloq l-oġġett. 169 00:08:57,000 --> 00:08:59,000 Aħna l-ewwel talloka l-ispazju, bħal għamilna fis-C, 170 00:08:59,000 --> 00:09:04,000 u allura aħna initialize dan, li jistgħu jew ma jistgħux jagħmlu lott kollu. 171 00:09:04,000 --> 00:09:07,000 Imbagħad aħna qed jirritornaw din il-ħaġa fi o oġġett. 172 00:09:07,000 --> 00:09:09,000 Hemm stilla hawnhekk għaliex dan huwa teknikament pointer, 173 00:09:09,000 --> 00:09:12,000 imma tinkwetax, pointers mhumiex dik big ftehim fil-Objettiv-C aktar. 174 00:09:12,000 --> 00:09:15,000 >> Issa konna instantiated din il-klassi imsejħa NSObject, 175 00:09:15,000 --> 00:09:19,000 u dan huwa biss klassi każwali li Apple. 176 00:09:19,000 --> 00:09:22,000 Imxejna instantiated dan, u issa għandi każ ta 'din il-klassi 177 00:09:22,000 --> 00:09:25,000 f'dan o oġġett, b'tali mod li jfisser li jekk I definit 178 00:09:25,000 --> 00:09:29,000 dawn il-metodi I jistgħu jsejħulhom bħal dan. 179 00:09:29,000 --> 00:09:31,000 Bl-istess mod, jekk jien ridt li sejħa metodu ma 'wieħed argument, 180 00:09:31,000 --> 00:09:34,000 għalhekk dan huwa l-metodu bar, li tieħu waħda argument, 181 00:09:34,000 --> 00:09:38,000 u hawn huwa l-baz: metodu QUX, sabiex din tieħu 2 argumenti. 182 00:09:38,000 --> 00:09:44,000 Dan qed jitlob funzjoni waħda fuq dan o oġġett. 183 00:09:44,000 --> 00:09:46,000 Jagħmel sens? 184 00:09:46,000 --> 00:09:50,000 Is-sintassi għandu jagħmel sens, imma int it-tip ta jidraw lilha. 185 00:09:50,000 --> 00:09:54,000 >> Okay, ejja nitkellmu dwar ftit affarijiet li huma mibnija fil-Objettiv-C 186 00:09:54,000 --> 00:09:56,000 li ma kinux neċessarjament mibnija fis C. 187 00:09:56,000 --> 00:09:59,000 Fl C aħna tip ta kellha tittratta kordi kif dawn arrays karattru stupid, 188 00:09:59,000 --> 00:10:01,000 u li ltqajna verament annoying. 189 00:10:01,000 --> 00:10:04,000 Għan-C għandha dawk kollha mibnija għalina, u huwa mibni fil- 190 00:10:04,000 --> 00:10:06,000 jużaw din il-klassi imsejħa NSString. 191 00:10:06,000 --> 00:10:10,000 Meta Irrid li joħolqu NSString għandna sintassi aktar arcane. 192 00:10:10,000 --> 00:10:15,000 Pjuttost milli qal "cs50" aħna ngħidu @ "cs50" 193 00:10:15,000 --> 00:10:17,000 u dan huwa biss l-sintassi li tiddikjara kordi fl-Objettiv-C. 194 00:10:17,000 --> 00:10:21,000 Dan huwa estremament faċli li tinsa, hekk ma. 195 00:10:21,000 --> 00:10:24,000 Issa, ladarba I jkollhom din, dan huwa string, iżda avviż 196 00:10:24,000 --> 00:10:26,000 huwa verament biss oġġett. 197 00:10:26,000 --> 00:10:30,000 I said NSString, li jfisser I instantiated-klassi 198 00:10:30,000 --> 00:10:32,000 imsejħa NSString, li xi ħadd ieħor kiteb għalija, 199 00:10:32,000 --> 00:10:35,000 u dawn kienu sbieħ ħafna dwar dan, u hekk issa 200 00:10:35,000 --> 00:10:37,000 I tista 'tibda ssejjaħ metodi fuqha. 201 00:10:37,000 --> 00:10:40,000 Jekk I call it-tul metodu fuq dan i-oġġett 202 00:10:40,000 --> 00:10:43,000 li għaddej biex jirritornaw għall lili it-tul tas-sekwenza. 203 00:10:43,000 --> 00:10:45,000 Dan huwa biss bħal strlen fl C. 204 00:10:45,000 --> 00:10:47,000 Dan se jerġa 'lura 4. 205 00:10:47,000 --> 00:10:51,000 >> Bl-istess mod, metodu ieħor I tista 'tixtieq li jimpurtahom huwa dan characterAtIndex. 206 00:10:51,000 --> 00:10:54,000 Dan huwa metodu li tgħid dwar dan i string 207 00:10:54,000 --> 00:10:57,000 Nixtieq li tikseb l-karattru 0, 208 00:10:57,000 --> 00:10:59,000 u għalhekk dan se jerġa 'lura lili lc karattru, 209 00:10:59,000 --> 00:11:02,000 u hemm mazz sħiħ aktar ta 'dawn il-metodi li inti tista' Google verament faċilment. 210 00:11:02,000 --> 00:11:07,000 Dokumentazzjoni Apple huwa kbir, u aħna ser tagħti ħarsa lejn dak ftit. 211 00:11:07,000 --> 00:11:09,000 Dawk huma kordi. 212 00:11:09,000 --> 00:11:11,000 Għandna wkoll arrays daqs varjabbli mibnija pulzieri 213 00:11:11,000 --> 00:11:13,000 Ftakar fis-C meta aħna dikjarati firxa 214 00:11:13,000 --> 00:11:16,000 kellna ngħidu li għandek 5 elementi, tmiem ta 'l-istorja. 215 00:11:16,000 --> 00:11:18,000 Meta aħna ltqajna biex JavaScript u PHP aħna tista 'tibda 216 00:11:18,000 --> 00:11:20,000 tagħmel affarijiet simili żżid elementi jew li jiċċaqilqu elementi. 217 00:11:20,000 --> 00:11:22,000 Nistgħu nagħmlu l-istess Objettiv-C. 218 00:11:22,000 --> 00:11:26,000 Pjuttost milli toħloq firxa fil-mod normali C 219 00:11:26,000 --> 00:11:30,000 għandna mill-ġdid fi klassi oħra msejħa NSMutableArray. 220 00:11:30,000 --> 00:11:33,000 Hemm ukoll NSArray, 221 00:11:33,000 --> 00:11:35,000 u dan se bażikament jirrappreżentaw xi array. 222 00:11:35,000 --> 00:11:38,000 Dan jgħid l-ewwel ħaġa li nixtieq do huwa li nixtieq li jalloka 223 00:11:38,000 --> 00:11:41,000 ispazju għal firxa ġdida, u wara I tatiha 224 00:11:41,000 --> 00:11:43,000 I imbagħad jkollhom bżonn initialize dan. 225 00:11:43,000 --> 00:11:45,000 Għal darb'oħra, just ssejjaħ dawn il-metodi 2. 226 00:11:45,000 --> 00:11:48,000 Issa dan ifisser li ġewwa ta dan l-oġġett ta ' 227 00:11:48,000 --> 00:11:50,000 Għandi l-firxa vojta seduta hemmhekk. 228 00:11:50,000 --> 00:11:54,000 Jekk I tixtieq iżżid xi ħaġa ma 'din array, nista' sejħa tal-metodu addObject. 229 00:11:54,000 --> 00:11:59,000 I tixtieq iżżid oġġett għall-firxa ta ', u nixtieq li jżidu l-sekwenza CS50. 230 00:11:59,000 --> 00:12:02,000 Jekk jien ridt li bil-maqlub tneħħi li nista 'ngħid li nixtieq 231 00:12:02,000 --> 00:12:09,000 neħħi l-oġġett fl-ewwel post fuq il-firxa jew toġġezzjona a. 232 00:12:09,000 --> 00:12:11,000 >> Jagħmel sens? 233 00:12:11,000 --> 00:12:14,000 Okay, inti tip ta jidraw dan ħaġa parentesi kwadri. 234 00:12:14,000 --> 00:12:18,000 Mill-mod, ġewwa ta 'lott ta' libreriji Apple tkun taf tara dan NS. 235 00:12:18,000 --> 00:12:21,000 Il NS attwalment stands għall-pass li jmiss, li kienet waħda mill-kumpaniji Steve 1 Impjiegi, 236 00:12:21,000 --> 00:12:24,000 u li fejn hu verament beda kitba ta 'lott tal-kodiċi 237 00:12:24,000 --> 00:12:27,000 bħala tip ta 'l-bażi għall Mac OS X u kollha ta' l-għalf ieħor, 238 00:12:27,000 --> 00:12:32,000 u għalhekk dan NS huwa tip ta 'dan il-wirt sabiħ shout out għal waħda mill-kumpaniji preċedenti 239 00:12:32,000 --> 00:12:34,000 lura meta Apple kienet l-ewwel bdew. 240 00:12:34,000 --> 00:12:36,000 Huwa kullimkien. 241 00:12:36,000 --> 00:12:41,000 Ejja tagħti ħarsa lejn iktar olistiku Għan-C eżempju. 242 00:12:41,000 --> 00:12:44,000 Here I am ġewwa ta 'Xcode. 243 00:12:44,000 --> 00:12:47,000 Biex tikseb hawn, I-ewwel jitniżżel Xcode mill-Aħżen App, 244 00:12:47,000 --> 00:12:50,000 fetaħ it up, u mbagħad I marru hawn biex fajl, 245 00:12:50,000 --> 00:12:54,000 fuq hawn biex proġett ġdid, u mbagħad. 246 00:12:54,000 --> 00:12:57,000 Wara nagħmel li għandi dawn l-għażliet ta 'dak li nixtieq li joħolqu, 247 00:12:57,000 --> 00:12:59,000 u hekk aħna ser tagħti ħarsa lejn dawn l-għażliet aktar tard, 248 00:12:59,000 --> 00:13:03,000 iżda biss għal dan l-eżempju, għaliex aħna mhux qed fil-fatt se jkollhom app għadhom, 249 00:13:03,000 --> 00:13:06,000 I niżlet hawn, u I said Tool Linja ta 'Kmand, 250 00:13:06,000 --> 00:13:09,000 u dan huwa app li I tista 'tmexxi fil-linja tal-kmand 251 00:13:09,000 --> 00:13:12,000 bħad aħna kont qed jibda mid C. 252 00:13:12,000 --> 00:13:16,000 Li kif I ħolqot dan il-proġett, u hekk issa jien hawn, 253 00:13:16,000 --> 00:13:20,000 hekk ejja ewwel ħarsa lejn dan il-fajl, u din għandha tħares pretty familjari. 254 00:13:20,000 --> 00:13:24,000 I jkollhom isem int. Hemm ħabib argc tiegħi, barra buddy tiegħi ARGV. 255 00:13:24,000 --> 00:13:30,000 U hekk nistgħu naraw li dan huwa l-punt ta 'dħul għall-ewwel Għan-C tiegħi applikazzjoni. 256 00:13:30,000 --> 00:13:32,000 Hawnhekk nistgħu ninjoraw dan għal issa. 257 00:13:32,000 --> 00:13:35,000 Dan huwa bażikament xi għalf ġestjoni tal-memorja li int mhux se verament 258 00:13:35,000 --> 00:13:37,000 qatt ma jkollhom għalfejn tinkwieta dwar. 259 00:13:37,000 --> 00:13:39,000 >> Ejja nħarsu lejn din il-blokka 1 hawn. 260 00:13:39,000 --> 00:13:46,000 Din il-linja 1, jekk ngħidilhom Student * Alice = [alloc Student [] Iniz] x'hemm li tagħmel? 261 00:13:46,000 --> 00:13:50,000 Dan student 1 hawn, dan huwa probabbilment klassi. 262 00:13:50,000 --> 00:13:54,000 Din mhix klassi li Apple kiteb, imma hija klassi I li kiteb. 263 00:13:54,000 --> 00:13:57,000 L-ewwel ħaġa li nixtieq do huwa nixtieq li jallokaw spazju għal student ġdid, 264 00:13:57,000 --> 00:14:00,000 u mbagħad nixtieq li initialize dan, sabiex din tagħti me back 265 00:14:00,000 --> 00:14:05,000 dan l-oġġett student ġdid, u jien ħażna dan fil-varjabbli imsejjaħ Alice. 266 00:14:05,000 --> 00:14:07,000 Fejn ma dik il-klassi ġejjin minn? 267 00:14:07,000 --> 00:14:12,000 Well, hawn fuq fuq ix-xellug dawn huma kollha tal-fajls differenti ġewwa ta 'proġett tiegħi. 268 00:14:12,000 --> 00:14:16,000 Nistgħu naraw hawnhekk għandi Student.h u Student.m. 269 00:14:16,000 --> 00:14:20,000 Il-fajl h., Ftakar, huwa fejn niddikjara l-affarijiet 270 00:14:20,000 --> 00:14:22,000 li se jeżistu fi ħdan il-klassi. 271 00:14:22,000 --> 00:14:25,000 >> Ejja tagħti ħarsa lejn dak. 272 00:14:25,000 --> 00:14:29,000 Kull dritt, hawnhekk għandna dan interface @, u dan jgħid li hawnhekk jidħol 273 00:14:29,000 --> 00:14:33,000 dikjarazzjonijiet ta 'dak kollu li se jeżistu fi ħdan klassi tiegħi. 274 00:14:33,000 --> 00:14:36,000 Imbagħad I jkollhom kolon. Imbagħad I jkollhom din ħaġa NSObject. 275 00:14:36,000 --> 00:14:40,000 Dan kolon ifisser li ftit wirt aħna qed niddiskutu ftit qabel. 276 00:14:40,000 --> 00:14:43,000 Dan jgħid kollox l NSObject tista 'tagħmel 277 00:14:43,000 --> 00:14:46,000 fejn NSObject hija din il-klassi miktub minn xi ħadd ieħor, 278 00:14:46,000 --> 00:14:50,000 kollox dan NSObject tista 'tagħmel Irrid li tkun tista' tagħmel dan. 279 00:14:50,000 --> 00:14:54,000 Billi qal: NSObject dan ifisser li jien bażikament 280 00:14:54,000 --> 00:14:58,000 wiret kollha tal-funzjonalità ta 'klassi oħra. 281 00:14:58,000 --> 00:15:02,000 Li verament tatni mazz sħiħ ta 'metodi differenti u l-proprjetajiet li I jistgħu jużaw. 282 00:15:02,000 --> 00:15:05,000 Down hawn jien ħolqien 2 proprjetajiet. 283 00:15:05,000 --> 00:15:08,000 Dan ifisser istudenti tiegħi, jekk dan kien Struct, dawn ikunu l-affarijiet 2 284 00:15:08,000 --> 00:15:11,000 ġewwa ta 'Struct tiegħi, hekk kull student ikollu isem 285 00:15:11,000 --> 00:15:14,000 li hija sekwenza, u student għandha wkoll grad, 286 00:15:14,000 --> 00:15:17,000 li huwa int. 287 00:15:17,000 --> 00:15:23,000 >> Fl-aħħarnett, stabbiliti hawn jien ser toħloq metodu għall-istudenti tiegħi. 288 00:15:23,000 --> 00:15:26,000 I imsejħa metodu tiegħi, initWithName, u li tieħu 1 argument, 289 00:15:26,000 --> 00:15:31,000 u dan l-argument huwa string, u I sejħitilha isem. 290 00:15:31,000 --> 00:15:35,000 Issa ejja nħarsu lejn kif għandna attwalment implimentata din il-klassi. 291 00:15:35,000 --> 00:15:38,000 Hawnhekk, issa jien ġewwa tal-fajl tiegħi m., 292 00:15:38,000 --> 00:15:40,000 m għall-implimentazzjoni, I raden. 293 00:15:40,000 --> 00:15:44,000 Għandi l-implimentazzjoni tiegħi, tmiem tiegħi, u hawn huwa fejn jien attwalment tiddefinixxi 294 00:15:44,000 --> 00:15:47,000 dak initWithName ma. 295 00:15:47,000 --> 00:15:50,000 Għandi initWithName, l-isem tal-parametru tiegħi, u allura dan 296 00:15:50,000 --> 00:15:53,000 huwa fejn jien attwalment ħolqien ta 'student, 297 00:15:53,000 --> 00:15:56,000 u għalhekk dan huwa ftit cryptic, iżda dan huwa tip ta 'boilerplate 298 00:15:56,000 --> 00:15:58,000 li inti tixtieq li jinkludu fil-kostrutturi tiegħek. 299 00:15:58,000 --> 00:16:02,000 Din il-funzjoni inizjalizzazzjoni hawn, initWithName, huwa tip ta 'kostruttur. 300 00:16:02,000 --> 00:16:05,000 Inti bażikament tinbena oġġett student ġdid 301 00:16:05,000 --> 00:16:07,000 u forsi jibgħat xi data ġewwa ta 'dan. 302 00:16:07,000 --> 00:16:11,000 L-ewwel ħaġa li nixtieq do huwa li nixtieq sejħa Iniz fuq din il-ħaġa super. 303 00:16:11,000 --> 00:16:15,000 >> Ftakar li meta għidt lura hawn fil-fajl h. 304 00:16:15,000 --> 00:16:21,000 li kollox l NSObject għandu student wkoll. 305 00:16:21,000 --> 00:16:24,000 Dan ifisser li meta I joħolqu student dak I wkoll bżonn tagħmel huwa 306 00:16:24,000 --> 00:16:28,000 kun żgur li l-NSObject li jien jiret kollha ta 'dik id-data mill- 307 00:16:28,000 --> 00:16:32,000 huwa wkoll initialized suppost. 308 00:16:32,000 --> 00:16:36,000 What I bżonn li ngħid huwa dan super huwa attwalment għaddejjin biex jirreferi għall-klassi ġenitur 309 00:16:36,000 --> 00:16:39,000 li jien jiret minn, so I jixtiequ jagħmlu ċert I initialize 310 00:16:39,000 --> 00:16:43,000 dak kollu li jien jiddependi fuq qabel nibda jippruvaw jużaw dan. 311 00:16:43,000 --> 00:16:46,000 Imbagħad jekk dan initialized korrett din hija biss bħal ngħidu jekk malloc 312 00:16:46,000 --> 00:16:50,000 ma reġgħux lura null mbagħad I tista 'tibda iffissar xi proprjetajiet. 313 00:16:50,000 --> 00:16:54,000 >> Fil JavaScript u PHP kellna dan il-keyword sejjaħ din, 314 00:16:54,000 --> 00:16:58,000 u dan irrefera għall-każ attwali ta 'klassi. 315 00:16:58,000 --> 00:17:00,000 Fil Għan-C nitolbu din l-awto. 316 00:17:00,000 --> 00:17:04,000 Meta I say self.name, dan ifisser li l-oġġett 317 00:17:04,000 --> 00:17:07,000 I biss ħolqu meta għidt alloc student Iniz, 318 00:17:07,000 --> 00:17:09,000 li għaddej biex jagħti me lura xi oġġett. 319 00:17:09,000 --> 00:17:12,000 Dan ifisser Irrid li jistabbilixxu l-isem ta 'dik oġġett 320 00:17:12,000 --> 00:17:15,000 għal dak kollu li I biss għadda pulzieri 321 00:17:15,000 --> 00:17:18,000 Eżatt bħal fil Ċ, aħna jkollhom aċċess membri ma 'din dot, 322 00:17:18,000 --> 00:17:21,000 hekk self.name jgħid l-isem tal-oġġett istudent 323 00:17:21,000 --> 00:17:24,000 issa se tkun xi tkun biss għadda pulzieri 324 00:17:24,000 --> 00:17:28,000 U hekk finalment, I tista 'tibagħtu lura so I attwalment nikseb lura xi ħaġa. 325 00:17:28,000 --> 00:17:30,000 >> Mistoqsijiet? 326 00:17:30,000 --> 00:17:34,000 Okay, hekk din l-awto = super Iniz, 327 00:17:34,000 --> 00:17:37,000 jekk inti ma jifhmu totalment l-għalf wirt tinkwetax. 328 00:17:37,000 --> 00:17:40,000 Biss jafu li jekk inti qatt tixtieq li tagħmel il-metodu Iniz tiegħek stess biss 329 00:17:40,000 --> 00:17:42,000 tagħmel dan, u tkun taf tkun tajba biex tmur. 330 00:17:42,000 --> 00:17:44,000 Yeah. >> [Student] Xi tfisser awto jekk? 331 00:17:44,000 --> 00:17:49,000 Dan ifisser li meta aħna malloc xi ħaġa aħna dejjem ċċekkjati jekk kien ugwali għal null, 332 00:17:49,000 --> 00:17:51,000 u jekk kien null, allura aħna ħareġ. 333 00:17:51,000 --> 00:17:55,000 Dan huwa l-istess ħaġa, għaliex jekk dan null prospetti, allura aħna qed probabbilment se tort seq 334 00:17:55,000 --> 00:17:57,000 jekk nibdew jippruvaw jimmanipulaw dan. 335 00:17:57,000 --> 00:18:01,000 Li klassi istudent tagħna. 336 00:18:01,000 --> 00:18:03,000 Dan ifisser li nistgħu initialize-istudenti tagħna f'wieħed minn żewġ modi. 337 00:18:03,000 --> 00:18:08,000 Jekk jiena ngħid alloc student Iniz Jien ma jużaw dak il-metodu li I biss kiteb, 338 00:18:08,000 --> 00:18:11,000 u minflok nista 'sempliċement jgħidu alice.name, 339 00:18:11,000 --> 00:18:14,000 u issa jien ser jistabbilixxu li l-isem tal-proprjetà. 340 00:18:14,000 --> 00:18:17,000 >> Bl-istess mod, jekk I jridu jużaw dan il-metodu initWithName 341 00:18:17,000 --> 00:18:20,000 I tista 'sempliċement jgħidu alloc, u mbagħad minflok qal Iniz 342 00:18:20,000 --> 00:18:24,000 Jien ser sejħa dan il-metodu li jien biss maħluqa, u jien ser jgħaddu Bob. 343 00:18:24,000 --> 00:18:30,000 Fuq dan il-punt, din Bob oġġett għandha isem ugwali għal Bob. 344 00:18:30,000 --> 00:18:35,000 Okay, stabbiliti hawn jien jużaw dan NSMutableArray li ħarisna lejn preċedenti. 345 00:18:35,000 --> 00:18:38,000 Jien allokazzjoni space.Then jien initializing firxa ġdida. 346 00:18:38,000 --> 00:18:40,000 Jien ser żid 2 affarijiet lilha. 347 00:18:40,000 --> 00:18:43,000 Dan firxa issa għandha l-oġġetti l-istudenti. 348 00:18:43,000 --> 00:18:46,000 Avviż li mkien ma jien ngħid li dan huwa firxa ta 'studenti. 349 00:18:46,000 --> 00:18:48,000 I said huwa firxa, il-perjodu. 350 00:18:48,000 --> 00:18:50,000 Imbagħad I tista 'tpoġġi kwalunkwe ġewwa ta' dan li nixtieq. 351 00:18:50,000 --> 00:18:52,000 Hawnhekk I għandhom 2 oġġetti. 352 00:18:52,000 --> 00:18:56,000 >> Finalment, għandi oġġett ieħor hawnhekk, dan il-TF. 353 00:18:56,000 --> 00:18:59,000 Matul hawn fil TF.h bażikament l-istess ħaġa. 354 00:18:59,000 --> 00:19:01,000 Jien jiret minn NSObject, u mill-mod, 355 00:19:01,000 --> 00:19:03,000 meta inti toħloq klassijiet din hija kollha isir għalik, 356 00:19:03,000 --> 00:19:06,000 dan it-tip ta 'boilerplate interface. 357 00:19:06,000 --> 00:19:08,000 Hija għandha proprjetà ta 'studenti. 358 00:19:08,000 --> 00:19:15,000 I jkollhom metodi koppja hawn li ma verament jagħmlu ħafna kollu, 359 00:19:15,000 --> 00:19:18,000 u sabiex ifisser wara I joħolqu dan l-oġġett TF 360 00:19:18,000 --> 00:19:23,000 I jistgħu sejħa dan il-metodu ta 'grad fuqha bħal dan. 361 00:19:23,000 --> 00:19:26,000 Kwalunkwe mistoqsijiet dwar Objettiv-C sintassi qabel we tibda miexja lejn uħud aktar 362 00:19:26,000 --> 00:19:30,000 interessanti Jittieħed iżvilupp apps? 363 00:19:30,000 --> 00:19:34,000 >> Okay, so ejja fil-fatt jagħmel app iPhone. 364 00:19:34,000 --> 00:19:39,000 Il-klassijiet ewlenin li inti ser tkun qed tuża ġewwa ta 'app iPhone tiegħek huma msejħa kontrolluri view, 365 00:19:39,000 --> 00:19:42,000 u l-kontrollur ħsieb bażikament jirrappreżenta skrin wieħed 366 00:19:42,000 --> 00:19:46,000 ġewwa ta 'app tiegħek, hekk jekk jien fuq l-app mużika, per eżempju, 367 00:19:46,000 --> 00:19:50,000 kontrollur ħsieb wieħed jista 'jirrappreżenta l-fehma li nista tara l-kanzunetti fuq iPhone tiegħi. 368 00:19:50,000 --> 00:19:53,000 Ieħor kontrollur ħsieb jista 'jkun meta I ikklikkja kanzunetta u tibda playing 369 00:19:53,000 --> 00:19:55,000 jew kif jien tħaffir isfel fil artisti. 370 00:19:55,000 --> 00:19:59,000 Kull wieħed minn dawn l-iskrins differenti jistgħu jiġu rappreżentati bħala kontrollur opinjoni differenti, 371 00:19:59,000 --> 00:20:04,000 u kontrollur ħsieb huwa verament ftit klassi li tgħid kif din l-iskrin taħdem. 372 00:20:04,000 --> 00:20:07,000 Things ġewwa ta 'kontrollur fehma, aħna qed tmur biex ikollhom proprjetajiet, 373 00:20:07,000 --> 00:20:10,000 sabiex l-affarijiet bħal buttuna se tkun proprjetà ta 'kontrollur fehma tagħna. 374 00:20:10,000 --> 00:20:13,000 >> Aħna wkoll se jkollhom metodi, u dawn huma bażikament handlers avveniment. 375 00:20:13,000 --> 00:20:16,000 Dan il-metodu jgħid meta tagħfas din il-buttuna 376 00:20:16,000 --> 00:20:19,000 I trid tagħmel xi ħaġa, u finalment, għal darb'oħra, 377 00:20:19,000 --> 00:20:24,000 aħna qed tmur biex tkun qed tuża dan il-keyword awto aċċess għall-każ preżenti. 378 00:20:24,000 --> 00:20:29,000 Biex tibni interfaces fil IOS huwa attwalment tassew, tassew faċli. 379 00:20:29,000 --> 00:20:32,000 Huma għandhom dan drag sbieħ u interface qatra imsejħa Interface bennej, 380 00:20:32,000 --> 00:20:37,000 u l-kunċetti ewlenin 2 li wajer up tiegħek Għan-C sa Interface bennej 381 00:20:37,000 --> 00:20:40,000 huma IBOutlet u IBAction. 382 00:20:40,000 --> 00:20:44,000 L IBOutlet sempliċiment tgħid li jekk inti tiddikjara proprjetà li l-buttuna, 383 00:20:44,000 --> 00:20:47,000 u inti tixtieq li ganċ it up għal xi ħaġa fil-UI attwali tiegħek, 384 00:20:47,000 --> 00:20:49,000 int ser jgħidu huwa żbokk. 385 00:20:49,000 --> 00:20:51,000 Bl-istess mod, jekk inti tixtieq li jirrappreżentaw handler avveniment 386 00:20:51,000 --> 00:20:54,000 allura int ser jgħidu huwa azzjoni. 387 00:20:54,000 --> 00:20:57,000 >> Biex attwalment wajer ta 'din ir-rappreżentazzjoni grafika 388 00:20:57,000 --> 00:21:00,000 u l-kodiċi tiegħek huwa tassew, tassew sempliċi. 389 00:21:00,000 --> 00:21:03,000 Jekk inti tixtieq li tehmeż IBOutlet, kull ma għandek tagħmel hu li inti kontroll click, 390 00:21:03,000 --> 00:21:05,000 u aħna ser tara eżempju ta 'dan verament malajr. 391 00:21:05,000 --> 00:21:07,000 Inti tikkontrolla ikklikkja fejn jgħid Kontrollur View. 392 00:21:07,000 --> 00:21:09,000 Int ser jkaxkru fil-interface, jew bil-maqlub, 393 00:21:09,000 --> 00:21:13,000 jekk inti tixtieq li ganċ up handler avveniment int ser jkaxkru mill-interface 394 00:21:13,000 --> 00:21:15,000 fid-direzzjoni oħra. 395 00:21:15,000 --> 00:21:20,000 Ejja tagħti ħarsa lejn eżempju IOS verament sempliċi. 396 00:21:20,000 --> 00:21:23,000 >> Ejja joħolqu proġett ġdid. 397 00:21:23,000 --> 00:21:25,000 Jien ser toħroġ hawn biex Applikazzjoni, 398 00:21:25,000 --> 00:21:28,000 u jien ser ikklikkja Applikazzjoni View Single. 399 00:21:28,000 --> 00:21:31,000 Jien ser ikklikkja li jmiss. I ser jagħti proġett tiegħi isem. 400 00:21:31,000 --> 00:21:33,000 I ser sejħa hija Hello. 401 00:21:33,000 --> 00:21:36,000 Interessanti, Apple jassumi int ħolqien ta 'prodott 402 00:21:36,000 --> 00:21:38,000 sabiex inti tista 'tbiegħha u jistgħu jagħmlu l-flus. 403 00:21:38,000 --> 00:21:41,000 Down hawn jien ser ngħid li dan huwa app iPhone. 404 00:21:41,000 --> 00:21:44,000 Tista 'toħloq app iPad, jew jekk inti tixtieq li toħloq waħda minn dawk apps 405 00:21:44,000 --> 00:21:47,000 li jappoġġja ż-żewġ mezzi li tista 'tagħmel li wisq. 406 00:21:47,000 --> 00:21:49,000 Dawn huma dak li trid checkmarks tiegħek lill-dehra. 407 00:21:49,000 --> 00:21:51,000 >> Inti tixtieq li tuża storyboards, li aħna ser tara aktar tard, 408 00:21:51,000 --> 00:21:54,000 u inti definittivament tixtieq li tuża għadd referenza awtomatiku, 409 00:21:54,000 --> 00:21:58,000 li hija karatteristika sbieħ li inti ma jkollhom jgħidu malloc u liberi. 410 00:21:58,000 --> 00:22:03,000 Sakemm inti tixtieq li sejħa malloc u ħielsa, I tħalli din ċċekkjati. 411 00:22:03,000 --> 00:22:07,000 I ser ikklikkja li jmiss, u finalment, dan se jistaqsu lili fejn irrid biex isalvawh. 412 00:22:07,000 --> 00:22:14,000 I ser hit joħolqu, u here we go. 413 00:22:14,000 --> 00:22:16,000 I ħolqot proġett ġdid. 414 00:22:16,000 --> 00:22:19,000 Minn hawn fuq ix-xellug huma l-fajls kollha li huma ġewwa tal-proġett tiegħi, 415 00:22:19,000 --> 00:22:22,000 u tinnota li sibt mazz sħiħ, u I lanqas tagħmel xejn. 416 00:22:22,000 --> 00:22:24,000 IOS hija kbira. 417 00:22:24,000 --> 00:22:27,000 >> Per eżempju, hawn din ViewController.h, 418 00:22:27,000 --> 00:22:30,000 dan se jirrappreżenta kontrollur tiegħi ewwel ipoteżi, 419 00:22:30,000 --> 00:22:32,000 hekk l-ewwel skrin ġewwa ta 'app tiegħi. 420 00:22:32,000 --> 00:22:34,000 Issa nafu liema dan huwa qal. 421 00:22:34,000 --> 00:22:36,000 Aħna qed tgħid jien ssejjaħ dan ViewController klassi, 422 00:22:36,000 --> 00:22:40,000 u ViewController ma dak kollu li UIViewController ma, 423 00:22:40,000 --> 00:22:43,000 u dan, għal darb'oħra, hija xi klassi li Apple kiteb li tagħmel ħafna ta 'għalf handy għalina 424 00:22:43,000 --> 00:22:46,000 bħall juru l-iskrin. 425 00:22:46,000 --> 00:22:50,000 Hawnhekk huwa fejn I tista 'tabilħaqq tibda tiddefinixxi liema kontrollur fehma tiegħi ma, 426 00:22:50,000 --> 00:22:52,000 u jirriżulta li I really ma bżonn xi parti minn dan. 427 00:22:52,000 --> 00:22:55,000 Dan huwa kodiċi boilerplate li Apple tagħti me b'xejn. 428 00:22:55,000 --> 00:22:59,000 I ma bżonn li l-ewwel linja, jew I ma jkollhomx klassi, 429 00:22:59,000 --> 00:23:02,000 hekk nistgħu jeħles dan u teħles minn dan. 430 00:23:02,000 --> 00:23:05,000 Okay, għalhekk dan huwa l-iskrin vojta tiegħi. 431 00:23:05,000 --> 00:23:08,000 >> Issa ejja ikklikkja fuq din MainStoryboard.storyboard, 432 00:23:08,000 --> 00:23:11,000 u dan huwa fejn jibda biex tikseb interessanti. 433 00:23:11,000 --> 00:23:14,000 Dan jirrappreżenta l-iskrin ewwel fuq app tiegħi. 434 00:23:14,000 --> 00:23:17,000 Jekk I tixtieq iżżid buttuna, fil-HTML kelli biex jinħoloq tag buttuna. 435 00:23:17,000 --> 00:23:20,000 Fil Android inti għandek toħloq tikketta buttuna, 436 00:23:20,000 --> 00:23:23,000 iżda fil IOS jekk I biss jiġu stabbiliti hawnhekk lejn il-lemin tal-qiegħ 437 00:23:23,000 --> 00:23:27,000 u jekk I ikklikkja fuq dan wieħed 3 hawn fejn jgħid Oġġetti, 438 00:23:27,000 --> 00:23:31,000 u nista iscroll, jew I tista 'tibda tiftix għal buttuna. 439 00:23:31,000 --> 00:23:35,000 U tħares, buttuna, hekk jekk I attwalment drag u qatra dan id-dritt hemmhekk, 440 00:23:35,000 --> 00:23:38,000 Stajt biss miżjud buttuna għal dan l-iskrin fuq app tiegħi. 441 00:23:38,000 --> 00:23:41,000 Jekk I tixtieq li tibdel it-test, nista 'ikklikkja darbtejn dan, 442 00:23:41,000 --> 00:23:47,000 ngħid xi ħaġa enticing bħal "Agħfas Me." 443 00:23:47,000 --> 00:23:51,000 Okay, issa jekk I run dan app, hekk aħna josservawha, 444 00:23:51,000 --> 00:23:54,000 hekk li run I ikklikkja l-buttuna play fil-quċċata xellug, u hemm app tiegħi. 445 00:23:54,000 --> 00:23:58,000 I ma tagħmel xejn, u sibt app iPhone ħelu tfittex. 446 00:23:58,000 --> 00:24:01,000 Jekk irrid li twaqqaf dan, inti tista 'ikklikkja l-buttuna waqfien 447 00:24:01,000 --> 00:24:03,000 għaliex dan huwa aktar divertenti. 448 00:24:03,000 --> 00:24:07,000 >> Ejja ngħidu li attwalment I trid xi ħaġa li jiġri meta I-istampa din il-buttuna. 449 00:24:07,000 --> 00:24:09,000 Biex tagħmel dan dak I bżonn tagħmel huwa li għandi bżonn li jinħoloq 450 00:24:09,000 --> 00:24:13,000 handler avveniment ġdid jew azzjoni. 451 00:24:13,000 --> 00:24:16,000 Dan ifisser li għandi bżonn biex joħolqu xi metodu li nixtieq li għandu jissejjaħ 452 00:24:16,000 --> 00:24:18,000 meta I agħfas il-buttuna, so ejja toħloq metodu ġdid. 453 00:24:18,000 --> 00:24:20,000 Jien ġewwa ta ViewController.h. 454 00:24:20,000 --> 00:24:22,000 I bżonn li ngħidu li metodu jeżisti. 455 00:24:22,000 --> 00:24:26,000 I bżonn sing ewwel għaliex jien ser tkun ssejjaħ dan fuq il-kontrollur fehma. 456 00:24:26,000 --> 00:24:28,000 I-ħtieġa li jagħtu dan it-tip. 457 00:24:28,000 --> 00:24:31,000 It-tip ta 'dan se tkun li ħaġa IBAction li rajna qabel. 458 00:24:31,000 --> 00:24:35,000 Dan huwa handler avveniment, hekk li għaddej biex jirritorna l IBAction, 459 00:24:35,000 --> 00:24:38,000 u dan huwa ħjiel li Xcode ngħid li 460 00:24:38,000 --> 00:24:40,000 din hija xi ħaġa li nixtieq li wajer xi ħaġa li. 461 00:24:40,000 --> 00:24:45,000 I tista 'tagħtiha l-isem, bħal buttonPressed, virgola. 462 00:24:45,000 --> 00:24:48,000 >> Issa stajt iddikjarat metodu ġdid ġewwa ta 'klassi tiegħi. 463 00:24:48,000 --> 00:24:50,000 Stajt qal dan il-metodu għandu jeżisti. 464 00:24:50,000 --> 00:24:53,000 Issa ejja jidħlu fis ViewController.m, 465 00:24:53,000 --> 00:24:56,000 u ejja ngħidu dak li dan il-metodu tista 'tagħmel. 466 00:24:56,000 --> 00:25:03,000 Jekk nibda ittajpjar, per eżempju, (vojt) buttonPressed 467 00:25:03,000 --> 00:25:06,000 avviż Xcode huwa tassew sbieħ u autocompletes għalija. 468 00:25:06,000 --> 00:25:09,000 Li verament sabiħa. 469 00:25:09,000 --> 00:25:12,000 Avviż hawnhekk li ġewwa tal-fajl. M nista 'ngħid ukoll null, 470 00:25:12,000 --> 00:25:15,000 u dan huwa minħabba li IBAction mhuwiex fil-fatt tip. 471 00:25:15,000 --> 00:25:19,000 Huwa fil-fatt hashtag definiti x'imkien li jkun null, 472 00:25:19,000 --> 00:25:22,000 u għal darb'oħra, dan huwa biss ħjiel li Xcode li tgħid 473 00:25:22,000 --> 00:25:25,000 Irrid li din hi handler avveniment, u aħna ser tara għaliex fi ftit tieni. 474 00:25:25,000 --> 00:25:28,000 Meta din il-buttuna hija ppressata jien se jagħmlu xi ħaġa annoying 475 00:25:28,000 --> 00:25:30,000 bħal display popup. 476 00:25:30,000 --> 00:25:35,000 >> Biex tagħmel dan I jistgħu joħolqu każ ġdid ta 'din il-klassi imsejħa UIAlertView, 477 00:25:35,000 --> 00:25:39,000 u dan huwa klassi li Apple kiteb li għaddej biex juru popups annoying. 478 00:25:39,000 --> 00:25:43,000 Aħna ser sejħa dan twissija popup, u għandi 2 passi, ftakar, għall-ħolqien dan l-oġġett. 479 00:25:43,000 --> 00:25:46,000 L-ewwel ħaġa I bżonn tagħmel huwa jalloka l-ispazju. 480 00:25:46,000 --> 00:25:48,000 Irrid UIAlertView. 481 00:25:48,000 --> 00:25:51,000 Irrid li jallokaw spazju. Dak il-metodu tiegħi ewwel. 482 00:25:51,000 --> 00:25:53,000 Metodu li jmiss tiegħi huwa li nixtieq initialize dan, 483 00:25:53,000 --> 00:25:58,000 u so I jkollhom din big, il-metodu twil imsejħa initWithTitle. 484 00:25:58,000 --> 00:26:01,000 Li bażikament għaddej biex jikkontrollaw dak li dan popup jgħid. 485 00:26:01,000 --> 00:26:04,000 It-titolu ta 'popup tiegħi tista' tkun bonjour. 486 00:26:04,000 --> 00:26:08,000 Il-messaġġ ta 'din popup jista' jkun "Dan huwa IOS." 487 00:26:08,000 --> 00:26:10,000 Ħaġa Delegat, I do not know dak li hu. 488 00:26:10,000 --> 00:26:13,000 Ejja ngħidu xejn huwa. 489 00:26:13,000 --> 00:26:18,000 Issa l-buttuna li għaddej biex jidhru 'ngħid xi ħaġa bħal "Huwa żgur huwa," 490 00:26:18,000 --> 00:26:24,000 u jien ma verament irridu xi buttuni oħra, so ejja iħassru dan u tagħlaq il-kategorija. 491 00:26:24,000 --> 00:26:27,000 >> Okay, I ħolqot waħda żejda. Hemm immorru. 492 00:26:27,000 --> 00:26:30,000 Dan huwa kif I tista 'toħloq popup ġdid. 493 00:26:30,000 --> 00:26:35,000 Jekk irrid attwalment juru l-popup nixtieq li jsejħu l-metodu ispettaklu. 494 00:26:35,000 --> 00:26:38,000 Biex tagħmel dan nista 'ngħid twissija u juru, 495 00:26:38,000 --> 00:26:40,000 u għal darb'oħra, AutoComplete kien super sbieħ. 496 00:26:40,000 --> 00:26:42,000 Jekk I nesa dak li kien, jekk I biss ittajpjat fil i, 497 00:26:42,000 --> 00:26:45,000 I tista 'scroll permezz hawn biex ċifra barra dak li kien, 498 00:26:45,000 --> 00:26:48,000 u filtri nicely. 499 00:26:48,000 --> 00:26:52,000 Now I ħolqot din popup ġdid. 500 00:26:52,000 --> 00:26:55,000 Aħna ser jerġa 'lura għal mezzi delegat dak aktar tard, 501 00:26:55,000 --> 00:26:58,000 u issa nixtieq ngħid nixtieq dan il-metodu li jiġi sparat 502 00:26:58,000 --> 00:27:01,000 meta I agħfas il-buttuna, hekk jien ser terga 'lura għal storyboard tiegħi, 503 00:27:01,000 --> 00:27:04,000 u nixtieq li issa iwaħħlu dan IBAction. 504 00:27:04,000 --> 00:27:06,000 L-ewwel ħaġa li trid tagħmel hu li ikklikkja l-buttuna. 505 00:27:06,000 --> 00:27:08,000 Meta I agħfas din il-buttuna Irrid xi ħaġa li jiġri. 506 00:27:08,000 --> 00:27:10,000 Jien ma jmur biex iżommu l-kontroll. 507 00:27:10,000 --> 00:27:13,000 Jien ser ikklikkja u drag mill-buttuna 508 00:27:13,000 --> 00:27:15,000 għal aktar hawn fejn jgħid Kontrollur View. 509 00:27:15,000 --> 00:27:17,000 Nistgħu naraw li din nicely jixgħel. 510 00:27:17,000 --> 00:27:22,000 >> Jekk I let go ma maws tiegħi I issa għandhom dan popup minn hawn fejn għandi xi għażliet. 511 00:27:22,000 --> 00:27:24,000 Wieħed minn dawn huwa l-avvenimenti li nista jirreġistraw. 512 00:27:24,000 --> 00:27:28,000 Dawn huma kollha ta 'dawk il-metodi I ddikjarati fil-fajl h tiegħi bħala IBActions. 513 00:27:28,000 --> 00:27:31,000 Dan huwa kif Xcode jaf liema għandhom jidhru f'din il-lista ftit, 514 00:27:31,000 --> 00:27:33,000 b'tali mod li biss ħjiel. 515 00:27:33,000 --> 00:27:37,000 Jekk I ikklikkja fuq buttuna ippressat, stajt issa irreġistra l-handler avveniment. 516 00:27:37,000 --> 00:27:41,000 Fl JavaScript kellna ngħidu għandi xi kodiċi li rreġistrat l-handler avveniment. 517 00:27:41,000 --> 00:27:43,000 Fil Għan-C kien verament dak faċli. 518 00:27:43,000 --> 00:27:46,000 Jekk I run dan mill-ġdid 519 00:27:46,000 --> 00:27:49,000 issa meta I agħfas il-buttuna handler avveniment tiegħi se nar, 520 00:27:49,000 --> 00:27:51,000 u jien ser tikseb dan popup. 521 00:27:51,000 --> 00:27:54,000 Super, super sempliċi hemmhekk. 522 00:27:54,000 --> 00:27:57,000 >> Jekk inti qatt tixtieq li tara kollha ta 'l-avvenimenti li jiġri li jiġu reġistrati 523 00:27:57,000 --> 00:28:00,000 fuq komponent jekk I ikklikkja fuq din il-buttuna 524 00:28:00,000 --> 00:28:02,000 u nasal hawn fuq biex il-lemin 525 00:28:02,000 --> 00:28:05,000 ewwel inti tista 'tara minn hawn I tista' tagħmel affarijiet bħall-tip tal-buttuna, 526 00:28:05,000 --> 00:28:08,000 jekk hekk tixtieq wieħed minn dawk l-I jew il-buttuna 'kuntatt add 527 00:28:08,000 --> 00:28:10,000 jew ikun x'ikun. 528 00:28:10,000 --> 00:28:13,000 Jekk irrid biex tara kollha ta 'l-avvenimenti li huma fuq din il-buttuna 529 00:28:13,000 --> 00:28:16,000 jekk nasal-triq kollha madwar hawn biex il-lemin 530 00:28:16,000 --> 00:28:19,000 nistgħu naraw hawn fuq l-avvenimenti I jkunu kollha ta 'dawn l-avvenimenti differenti. 531 00:28:19,000 --> 00:28:23,000 I tista 'tagħfas il-buttuna, meta I let go tal-buttuna, meta I double-vit jew kwalunkwe, 532 00:28:23,000 --> 00:28:26,000 u l-wieħed I biss reġistrat huwa dan l-avveniment imsejjaħ Touch Up Ġewwa, 533 00:28:26,000 --> 00:28:29,000 u dan jgħid li hekk kif finger tiegħi ġejja mill-buttuna 534 00:28:29,000 --> 00:28:32,000 F'dak il-każ se nar, u dan huwa eżattament dak li ġara biss. 535 00:28:32,000 --> 00:28:36,000 Dan huwa tip ta 'l-avveniment buttuna default magħfus. 536 00:28:36,000 --> 00:28:39,000 >> Kwalunkwe mistoqsijiet s'issa? 537 00:28:39,000 --> 00:28:43,000 Okay, li kif nistgħu jibdew wajer up affarijiet fil-kodiċi tagħna 538 00:28:43,000 --> 00:28:46,000 fis-affarijiet ġewwa ta 'interface tagħna. 539 00:28:46,000 --> 00:28:49,000 Ftakar l-ewwel ħaġa li aħna kellha tagħmel kien li ssib il-kodiċi, 540 00:28:49,000 --> 00:28:54,000 u allura aħna fili sa l-interface għall-kodiċi, 541 00:28:54,000 --> 00:28:57,000 u hemm app tagħna ewwel. 542 00:28:57,000 --> 00:29:00,000 Okay, li kien verament jibred, u ħloqna din il-buttuna. 543 00:29:00,000 --> 00:29:03,000 X'jiġri jekk aħna ma jridu li jkollhom li toħloq mazz ta 'proprjetajiet 544 00:29:03,000 --> 00:29:05,000 jirrappreżentaw dawn il-buttuni? 545 00:29:05,000 --> 00:29:08,000 Per eżempju, fil Tic Tac Toe għandi 9 buttuni, 546 00:29:08,000 --> 00:29:11,000 u d tkun super, super annoying li jkollhom biex drag u qatra 9 darbiet 547 00:29:11,000 --> 00:29:14,000 jew jekk I kellhom jagħmlu Tic Tac Toe ma '81 minflok ta' 9 548 00:29:14,000 --> 00:29:17,000 u kelli biex drag u qatra 81 darbiet, u li l-lame. 549 00:29:17,000 --> 00:29:20,000 Dak li nistgħu nagħmlu minflok huwa ferm simili HTML 550 00:29:20,000 --> 00:29:23,000 meta kellna affarijiet simili IDs u ismijiet u nistgħu tfittxija għal affarijiet 551 00:29:23,000 --> 00:29:27,000 billi ID tagħhom, hemm kunċett simili fl-IOS imsejħa tags. 552 00:29:27,000 --> 00:29:31,000 >> A tag huwa sempliċement identifikatur numeriku uniku għal komponent. 553 00:29:31,000 --> 00:29:34,000 Jekk jien ngħid dan għandu tag ta '0, per eżempju, 554 00:29:34,000 --> 00:29:38,000 jekk I joħolqu buttuna u tagħtiha a tag ta '0, u aħna ser tara kif tagħmel dan fi ftit tieni, 555 00:29:38,000 --> 00:29:41,000 jekk irrid li tikseb li buttuna nista 'sempliċement jgħidu Irrid li sejħa 556 00:29:41,000 --> 00:29:45,000 il-viewWithTag metodu fuq l-oġġett minn hawn 557 00:29:45,000 --> 00:29:48,000 il self.view, li jirrappreżenta l-iskrin attwali, per eżempju. 558 00:29:48,000 --> 00:29:53,000 Jekk I call dan il-metodu viewWithTag, jien ser jiġbdu lura l-buttuna ma tag 0. 559 00:29:53,000 --> 00:29:58,000 Ejja tagħti ħarsa lejn dan billi Tac Toe bini Tic. 560 00:29:58,000 --> 00:30:01,000 L-ewwel, dan huwa storyboard tiegħi. 561 00:30:01,000 --> 00:30:05,000 Stajt ħolqot dawn il-buttuni UI 10. 562 00:30:05,000 --> 00:30:07,000 Avviż dawn qed kollha l-istess daqs. 563 00:30:07,000 --> 00:30:11,000 Jekk I ikklikkja waħda minn dawn u nasal lura minn hawn fuq din lemin 564 00:30:11,000 --> 00:30:15,000 int ser tara I aġġustati l-font dritt hawn, so I għamel il-font ftit akbar, 565 00:30:15,000 --> 00:30:19,000 imma dak I wkoll għamilt kien I jistabbilixxu dan tag. 566 00:30:19,000 --> 00:30:23,000 I qal li dan għandu tag ta '1, u dak l-quċċata xellug. 567 00:30:23,000 --> 00:30:26,000 >> Issa, jekk I ikklikkja ieħor buttuna, bħal dan wieħed 2 hawn, 568 00:30:26,000 --> 00:30:29,000 Issa tkun taf tara li tag tiegħi huwa 2. 569 00:30:29,000 --> 00:30:32,000 Kull wieħed minn dawn buttuni ftit għandu tag uniku, 570 00:30:32,000 --> 00:30:35,000 u għalhekk dan huwa tard kif jien ser tibda interazzjoni 571 00:30:35,000 --> 00:30:38,000 ma app tiegħi. 572 00:30:38,000 --> 00:30:40,000 Dan huwa kollu ġewwa ta 'kontrollur fehma waħda, 573 00:30:40,000 --> 00:30:42,000 iżda hawnhekk huwa dak li għandna. 574 00:30:42,000 --> 00:30:44,000 We have 3 proprjetajiet hawn. 575 00:30:44,000 --> 00:30:49,000 L-ewwel waħda u wieħed aħħar huma ser tirrapreżenta t-bord tiegħi. 576 00:30:49,000 --> 00:30:53,000 Bażikament dan ewwel waħda hija l-firxa li jirrappreżenta fejn il-Xs u Os huma. 577 00:30:53,000 --> 00:30:57,000 Dan wieħed ieħor hawn jgħidilna li jkun imissu. 578 00:30:57,000 --> 00:31:01,000 Int ser ikollok avviż li jien ukoll dawn l-affarijiet hawn. 579 00:31:01,000 --> 00:31:05,000 Qabel meta aħna ddikjarat proprjetajiet aħna tahom isem u tip. 580 00:31:05,000 --> 00:31:08,000 Nistgħu wkoll jagħtihom xi informazzjoni addizzjonali hawn. 581 00:31:08,000 --> 00:31:11,000 Dan l-ewwel jgħid nonatomic, u liema dan jgħid 582 00:31:11,000 --> 00:31:16,000 hija bażikament biss ħaġa waħda se qatt tkun qed tipprova aċċess għal din il-varjabbli fi żmien. 583 00:31:16,000 --> 00:31:19,000 Inti tista 'tagħmel l-applikazzjonijiet aktar kumplessi li huma multi-kamin, 584 00:31:19,000 --> 00:31:22,000 u hekk lura fil Scratch kellna ħjut differenti, 585 00:31:22,000 --> 00:31:25,000 u sprites differenti jistgħu jagħmlu affarijiet differenti fl-istess ħin. 586 00:31:25,000 --> 00:31:29,000 >> Jekk dan mhux il-każ, li mhuwiex xi ħaġa li aħna ser tkun tħares lejn, 587 00:31:29,000 --> 00:31:33,000 jekk ngħidu nonatomic huwa fil-fatt se tagħmel l-affarijiet ftit aktar mgħaġġel. 588 00:31:33,000 --> 00:31:37,000 Għandna wkoll dan ħaġa imsejħa tassenja, qawwi, jew dgħajfa. 589 00:31:37,000 --> 00:31:40,000 Dan tassenja biss jgħid li dan huwa tip standard. 590 00:31:40,000 --> 00:31:43,000 Dan mhux oġġett jew pointer għaliex dan huwa biss bool, 591 00:31:43,000 --> 00:31:46,000 hekk bool hija mibnija fis Għan-C. 592 00:31:46,000 --> 00:31:49,000 Dan jgħid ma tippruvax li tagħmel xejn fancy ma 'pointers hawn. 593 00:31:49,000 --> 00:31:51,000 Huwa scaler qodma regolari. 594 00:31:51,000 --> 00:31:54,000 Qawwija u dgħajfa, dan dgħajjef jgħid li fil-fatt 595 00:31:54,000 --> 00:31:57,000 Irrid dan ikun tipponta lejn xi ħaġa fil-kontrollur fehma. 596 00:31:57,000 --> 00:32:00,000 Jien ma jmur biex effettivament allokati jew Iniz dan myself. 597 00:32:00,000 --> 00:32:04,000 Il-bennej interface, meta I run-app, huwa se jimmaniġġjaw kollha li inizjalizzazzjoni. 598 00:32:04,000 --> 00:32:07,000 Jekk jiena ngħid dgħajfa, li tgħid xi ħadd ieħor se tkun jinħoloq dan. 599 00:32:07,000 --> 00:32:09,000 Jekk I say qawwija, dan jgħid li jien ser jkun il-wieħed 600 00:32:09,000 --> 00:32:12,000 li l-ħolqien ta dan l-oġġett bord, 601 00:32:12,000 --> 00:32:14,000 u hekk hawn I jkollhom metodi ftit aktar hawn, 602 00:32:14,000 --> 00:32:18,000 per eżempju, azzjoni għal meta l-buttuna logħba l-ġdida hija ppressata, 603 00:32:18,000 --> 00:32:20,000 azzjoni għal meta kwalunkwe mill-buttuni oħra huma ppressati, 604 00:32:20,000 --> 00:32:23,000 u eċċetera. 605 00:32:23,000 --> 00:32:26,000 >> Aħna mhux se jsibu rwieħhom wisq ta 'l-loġika ta' Tic Tac Toe, 606 00:32:26,000 --> 00:32:30,000 għalkemm huwa ferm eċċitanti, imma ejja tagħti ħarsa lejn 607 00:32:30,000 --> 00:32:33,000 xi wħud mill-affarijiet li nistgħu nagħmlu ġewwa ta 'IOS. 608 00:32:33,000 --> 00:32:35,000 Dan il-metodu ġdid logħba se jiġu sparati 609 00:32:35,000 --> 00:32:37,000 kulmeta I agħfas il-buttuna logħba l-ġdida. 610 00:32:37,000 --> 00:32:41,000 Biex ganċ li sa I sempliċiment jiġu trasferiti għas storyboard tiegħi. 611 00:32:41,000 --> 00:32:43,000 I għafast fuq logħba ġdida. 612 00:32:43,000 --> 00:32:47,000 Jekk nasal hawn fuq għad-dritt I jista 'jara li 613 00:32:47,000 --> 00:32:50,000 Touch Up Ġewwa huwa fili għall-metodu newGame. 614 00:32:50,000 --> 00:32:53,000 C'est pourquoi dan se tikseb sparati. 615 00:32:53,000 --> 00:32:56,000 Il-metodu newGame se jagħmlu xi set up. 616 00:32:56,000 --> 00:32:59,000 Huwa ser ngħid nixtieq li ċar l-istat tal-bord. 617 00:32:59,000 --> 00:33:01,000 Dan huwa metodu sbieħ fuq mutable arrays. 618 00:33:01,000 --> 00:33:03,000 Dan ser ngħid huwa issa dawran X, il- 619 00:33:03,000 --> 00:33:07,000 u issa jien ser jieħdu vantaġġ ta 'dan il-ħaġa viewWithTag. 620 00:33:07,000 --> 00:33:11,000 >> Naf li buttuni tiegħi jkollhom l-tags 1-9, 621 00:33:11,000 --> 00:33:13,000 u li xi ħaġa I arbitrarju telgħet. 622 00:33:13,000 --> 00:33:15,000 Jekk irrid li jiġu stabbiliti t-test ta 'kull buttuna li jkunu vojta 623 00:33:15,000 --> 00:33:17,000 minħabba I biss bdiet logħba ġdida u jien ma tridx xi 624 00:33:17,000 --> 00:33:20,000 Xs jew Os ikunu mħollija I tista 'tagħmel dan. 625 00:33:20,000 --> 00:33:24,000 Nista 'ngħid li nixtieq-fehma bil-tikketta, 1, 2, 3, 4 eċċetera. 626 00:33:24,000 --> 00:33:27,000 Dan se jiġbdu buttuna differenti kull darba. 627 00:33:27,000 --> 00:33:30,000 Hawnhekk jien ser jitfa lill UIButton. 628 00:33:30,000 --> 00:33:33,000 Eżatt bħal nistgħu mitfugħa ints li flowts u viċi versa 629 00:33:33,000 --> 00:33:37,000 dan jgħid li nixtieq li jitfa din lil UIButton. 630 00:33:37,000 --> 00:33:40,000 Dan ifisser it-tip ta 'dan se jkun * UIButton 631 00:33:40,000 --> 00:33:43,000 minħabba pointers, imma tinkwetax, dawn mhux qed scary aktar. 632 00:33:43,000 --> 00:33:47,000 >> Ladarba I jkollhom din il-buttuna jien ser sejħa metodu fuqha. 633 00:33:47,000 --> 00:33:50,000 Dan il-metodu huwa msejjaħ setTitle forState, u għalhekk dan jgħid 634 00:33:50,000 --> 00:33:53,000 Irrid li jistabbilixxu t-test tal-buttuna li jkun il-string vojta, 635 00:33:53,000 --> 00:33:57,000 u nixtieq li din tkun l-sekwenza vojta meta huwa ma jkunx magħfus. 636 00:33:57,000 --> 00:34:01,000 Jekk jien jużaw dan il-metodu, I tista 'tibdel it-test tal-buttuna 637 00:34:01,000 --> 00:34:04,000 malli xi ħadd hits, imma irridu li jgħidu meta l-buttuna tkun biss seduta hemmhekk 638 00:34:04,000 --> 00:34:07,000 Irrid t-test li jkun vojt. 639 00:34:07,000 --> 00:34:10,000 Fl-aħħarnett, aħna qed tmur biex initialize bord tiegħi, 640 00:34:10,000 --> 00:34:12,000 u jien ser ngħid li kollox huwa bħalissa 0, 641 00:34:12,000 --> 00:34:15,000 hekk dan il-bord membri immutabbli huwa firxa mutable, 642 00:34:15,000 --> 00:34:21,000 li jfisser I jistgħu sejħa tal-metodu addObject u biss ġewwa 0 ta 'dan. 643 00:34:21,000 --> 00:34:23,000 Dan huwa dak li jiġri meta I joħolqu logħba ġdida. 644 00:34:23,000 --> 00:34:25,000 >> Ejja tagħti ħarsa lejn ieħor. 645 00:34:25,000 --> 00:34:28,000 Dan il-metodu hawnhekk huwa l-IBAction li għaddej biex jiġu ppressati 646 00:34:28,000 --> 00:34:31,000 kull darba wieħed minn dawk kwadri hija ppressata. 647 00:34:31,000 --> 00:34:33,000 Issa għandna xi loġika Tic Tac Toe hawn. 648 00:34:33,000 --> 00:34:36,000 Aħna figura li jkun imissu, 649 00:34:36,000 --> 00:34:39,000 u bbażat fuq li aħna jew jistabbilixxu X jew O, 650 00:34:39,000 --> 00:34:43,000 imma aħna avviż li aħna qed jerġgħu jużaw din handler avveniment istess 651 00:34:43,000 --> 00:34:45,000 għal kull wieħed minn dawn buttuni. 652 00:34:45,000 --> 00:34:49,000 Dan ifisser li jien ma jkollhom metodu għall-buttuna fuq tax-xellug, 653 00:34:49,000 --> 00:34:52,000 metodu differenti għall-buttuna lemin tal-qiegħ, għalkemm I jista 'jkollhom li jsir. 654 00:34:52,000 --> 00:34:54,000 Li ma jkunx verament disinn tajjeb. 655 00:34:54,000 --> 00:34:57,000 Dak li jien tagħmel hawnhekk huwa jien attwalment għaddejjin biex jiddeterminaw 656 00:34:57,000 --> 00:35:00,000 dak l-tikketta tal-buttuna li kien ippressat huwa. 657 00:35:00,000 --> 00:35:04,000 Tinnota li dan il-metodu play tieħu waħda argument. 658 00:35:04,000 --> 00:35:07,000 Huwa sejjaħ mittent, u dak mittent huwa qed mittent se 659 00:35:07,000 --> 00:35:10,000 jirrappreżentaw eżattament dak li kien ħa azzjoni fuq. 660 00:35:10,000 --> 00:35:15,000 Jekk I tagħfas buttuna, din mittent se tkun dik UIButton 661 00:35:15,000 --> 00:35:18,000 li attwalment I ippressat, b'tali mod li jfisser li din UIButton 662 00:35:18,000 --> 00:35:20,000 għandu tag minħabba I ħolqot tag. 663 00:35:20,000 --> 00:35:23,000 >> Jekk I rridu nġibu fil-tikketta nista 'sempliċement jgħidu 664 00:35:23,000 --> 00:35:26,000 Irrid li l-tikketta tal-mittent, 665 00:35:26,000 --> 00:35:28,000 u għal darb'oħra, stajt biss casted hija għal UIButton. 666 00:35:28,000 --> 00:35:32,000 I jiġri li tkun taf li l-mittent se jkun UIButton. 667 00:35:32,000 --> 00:35:34,000 Ma dejjem għandhom ikunu UIButton. 668 00:35:34,000 --> 00:35:36,000 I jistgħu, per eżempju, jirreġistra l-handler avveniment istess 669 00:35:36,000 --> 00:35:38,000  għal waħda għal buttuna, waħda għal slider. 670 00:35:38,000 --> 00:35:40,000 F'dan il-każ, naf li qed kollha buttuni, hekk jien se ngħid 671 00:35:40,000 --> 00:35:43,000 Irrid li dan ikun buttuna, u mbagħad I jistgħu jiksbu l-tikketta, 672 00:35:43,000 --> 00:35:48,000 u mill-tikketta I issa jkunu jafu fejn I am ġewwa tal-bord. 673 00:35:48,000 --> 00:35:51,000 Imbagħad I tista 'sempliċement jistabbilixxu jew ir-X jew il-O, jista flip-dawran, 674 00:35:51,000 --> 00:35:54,000 iċċekkja li rebaħ, eċċetera. 675 00:35:54,000 --> 00:35:59,000 >> Kwalunkwe mistoqsijiet dwar dan s'issa? 676 00:35:59,000 --> 00:36:02,000 Okay, l-kodiċi aħna stazzjonati online-aħna ma rridu nġibu fis wisq 677 00:36:02,000 --> 00:36:06,000 tal-loġika Tic Tac Toe, iżda issa tista 'tara li verament 678 00:36:06,000 --> 00:36:09,000 kollha għandna qed tagħmel huwa li aħna qed looping fuq dan array, 679 00:36:09,000 --> 00:36:13,000 hekk aħna ftit għal linji hawn, u aħna qed biss jqabbel biex tara 680 00:36:13,000 --> 00:36:18,000 do għandna logħba fil kollha ringieli, taqbila fil-kolonna jew xi ħaġa bħal dik. 681 00:36:18,000 --> 00:36:21,000 Biex tmexxi effettivament dan app, jekk I vit fuq waħda minn dawn il-buttuni 682 00:36:21,000 --> 00:36:24,000 dan il-metodu play kien sparat, b'tali mod li jfisser I biss sett 683 00:36:24,000 --> 00:36:31,000 il-buttuna li jkun X, hekk issa din il-buttuna se jkun O, u fuq hekk, 684 00:36:31,000 --> 00:36:35,000 u hekk li kif aħna qed jibdew jinteraġixxu ma 'dan app paġna waħda. 685 00:36:35,000 --> 00:36:38,000 >> Aħna ser post il-kodiċi, hekk li tħossok liberu li jaqraw b'attenzjoni li, 686 00:36:38,000 --> 00:36:43,000 imma ejja issa nitkellmu dwar xi apps li huma aktar minn sempliċiment paġna waħda. 687 00:36:43,000 --> 00:36:47,000 Kif eċċitanti kif Tic Tac Toe kien, ħafna apps ġewwa tal IOS 688 00:36:47,000 --> 00:36:50,000 huma tip ta 'dawn drill down affarijiet bi skrins multipli. 689 00:36:50,000 --> 00:36:54,000 Il-kunċett ewwel li aħna ser bżonn li nitkellmu dwar huma protokolli, 690 00:36:54,000 --> 00:36:57,000 u protokoll huwa sempliċement sett ta 'metodi 691 00:36:57,000 --> 00:36:59,000 li inti tista 'wegħda li tiddefinixxi. 692 00:36:59,000 --> 00:37:02,000 Jekk I joħolqu dan il-protokoll il-ġdid mal-2 metodi, dan wieħed l-ewwel, 693 00:37:02,000 --> 00:37:05,000 jekk it-tip ritorn hija nulla, I sejħitilha foo. 694 00:37:05,000 --> 00:37:07,000 Huwa jieħu ebda argumenti. Għandi metodu ieħor. 695 00:37:07,000 --> 00:37:11,000 Dan jirritorna int. I sejħitilha bar, u li tieħu 1 argument. 696 00:37:11,000 --> 00:37:14,000 Dan kollu protokoll huwa li sejjaħ SomeProtocol up hawn, 697 00:37:14,000 --> 00:37:19,000 dan huwa sett ta 'affarijiet li xi ħadd jista jimplimentaw. 698 00:37:19,000 --> 00:37:22,000 I ma 'ġewwa tal dan il-protokoll qal dak foo ma. 699 00:37:22,000 --> 00:37:26,000 Minflok, jien biss qal li inti tista 'tiddefinixxi foo jekk inti tixtieq li. 700 00:37:26,000 --> 00:37:30,000 Jekk jien ħolqien ta 'kontrollur ħsieb jew ħolqien ta' klassi 701 00:37:30,000 --> 00:37:33,000 I jistgħu ġewwa ta 'dik il-wegħda klassi li jimplimentaw 702 00:37:33,000 --> 00:37:40,000 xi wħud minn dawn il-metodi, sabiex per eżempju, jekk ngħidu 703 00:37:40,000 --> 00:37:43,000 dan issa jgħid jien jagħmlu wegħda lilek li ġewwa 704 00:37:43,000 --> 00:37:50,000 ta 'din il-klassi kontrollur ħsieb I se jkollhom definizzjonijiet kemm għall foo u bar. 705 00:37:50,000 --> 00:37:52,000 >> Għaliex huwa li utli? 706 00:37:52,000 --> 00:37:55,000 A lott ta 'komponenti ġewwa tal IOS jieħdu vantaġġ ta' dan 707 00:37:55,000 --> 00:37:58,000 mudell tad-disinn imsejħa delega, u jgħid liema delegazzjoni 708 00:37:58,000 --> 00:38:01,000 hija li, per eżempju, jekk ikolli kaxxa ta 'test 709 00:38:01,000 --> 00:38:04,000 u hemm xi avvenimenti li jistgħu jiġu rreġistrati ġewwa tal kaxxa ta 'test tiegħi, 710 00:38:04,000 --> 00:38:07,000 minflok noħolqu aktar avvenimenti separati dak I tista 'tagħmel huwa nista' ngħid 711 00:38:07,000 --> 00:38:10,000 l delegat ta 'din il-kaxxa test se jkun hemm xi oġġett. 712 00:38:10,000 --> 00:38:13,000 Meta I jgħidu li din hija delegat issa li jfisser li 713 00:38:13,000 --> 00:38:16,000 kull meta xi avveniment kienu jkunu sparati fil-kaxxa ta 'test 714 00:38:16,000 --> 00:38:18,000 aktar milli jkollhom tirreġistra jew xi ħaġa bħal dik 715 00:38:18,000 --> 00:38:21,000 huwa biss ser sejħa metodu fuq il-delegat. 716 00:38:21,000 --> 00:38:24,000 Per eżempju, ġewwa tal-kaxxa test tiegħi I jkollhom metodu għal meta I-istampa 717 00:38:24,000 --> 00:38:27,000 li jsir buttuna fil-qiegħ dritt, 718 00:38:27,000 --> 00:38:30,000 u għalhekk iktar milli jirreġistraw handler avveniment dak li nista 'ngħid huwa 719 00:38:30,000 --> 00:38:34,000 kaxxa ta 'test, hawnhekk huwa oġġett li nixtieq li inti sejħa metodu fuq 720 00:38:34,000 --> 00:38:37,000 kull darba li xi ħadd jagħfas il-buttuna jsir, 721 00:38:37,000 --> 00:38:40,000 u dan ifisser li dak l-oġġett għandu jimplimenta xi protokoll 722 00:38:40,000 --> 00:38:45,000 li tgħid I wegħda li jiddefinixxi dik l-azzjoni buttuna isir, 723 00:38:45,000 --> 00:38:47,000 għaliex jekk ma jiddefinixxu dak il-metodu u inti istampa jsir, 724 00:38:47,000 --> 00:38:49,000 allura huwa għaddej biex tkun konfuża. 725 00:38:49,000 --> 00:38:55,000 >> Ejja tagħti ħarsa lejn eżempju. 726 00:38:55,000 --> 00:38:58,000 Hawnhekk I sempliċiment jkollhom kaxxa ta 'test wieħed, 727 00:38:58,000 --> 00:39:04,000 u wieħed mill-proprjetajiet ta 'din il-kaxxa test minn hawn fuq din in-naħa id-dritt huwa l-delegat. 728 00:39:04,000 --> 00:39:06,000 Dan huwa proprjetà tal-klassi. 729 00:39:06,000 --> 00:39:09,000 What I ma hawn hija I għafast kontroll, u I mkaxkra minn dan il-post minn hawn 730 00:39:09,000 --> 00:39:13,000 lill-kontrollur opinjoni, u li tgħid issa l delegat ta 'din kaxxa ta' test 731 00:39:13,000 --> 00:39:18,000 se tkun il-kontrollur fehma. 732 00:39:18,000 --> 00:39:20,000 Dan ifisser li meta xi azzjonijiet jiġri, aktar milli jirreġistraw 733 00:39:20,000 --> 00:39:25,000 handlers separati avveniment nixtieq li inti tibgħat lill-delegat. 734 00:39:25,000 --> 00:39:28,000 Issa ejja tagħti ħarsa lejn kontrollur fehma tiegħi. 735 00:39:28,000 --> 00:39:32,000 Ġewwa tal-fajl h. Stajt għamel wegħda. 736 00:39:32,000 --> 00:39:36,000 Stajt wiegħed li jimplimenta xi metodi ġewwa ta 'dan il-protokoll 737 00:39:36,000 --> 00:39:38,000 imsejħa UITextFieldDelegate, u għal darb'oħra, 738 00:39:38,000 --> 00:39:42,000 dan huwa biss xi lista ta 'xi affarijiet li I jistgħu jagħżlu li jimplimentaw. 739 00:39:42,000 --> 00:39:46,000 >> Jekk I jiġu hawn fil. M file tiegħi, jien implimentati metodu wieħed bħal dawn. 740 00:39:46,000 --> 00:39:49,000 Stajt imsejħa textFieldShouldReturn 741 00:39:49,000 --> 00:39:52,000 għaliex dan huwa dak li kien jissejjaħ ġewwa tal-protokoll. 742 00:39:52,000 --> 00:39:57,000 U issa kulmeta I agħfas il-buttuna ġewwa magħmula ta 'dik qasam tat-test 743 00:39:57,000 --> 00:40:00,000 dan huwa dak li għaddej biex tikseb imsejħa, so I ma tirreġistra handler avveniment. 744 00:40:00,000 --> 00:40:03,000 I konnessi-delegat u kull meta dan l-avveniment huwa sparati 745 00:40:03,000 --> 00:40:08,000 dan huwa l-metodu li se tikseb imsejħa, hekk jekk nasal hawn fuq biex storyboard tiegħi u run- 746 00:40:08,000 --> 00:40:11,000 filwaqt li l-tagħbija nistgħu naraw dak li dan ma. 747 00:40:11,000 --> 00:40:13,000 Fuq l-iskrin tiegħi I għandhom 2 affarijiet. 748 00:40:13,000 --> 00:40:16,000 Għandi dan il-qasam test, u għandi din it-tikketta. 749 00:40:16,000 --> 00:40:19,000 Jien sempliċiment tgħid Irrid t-test ta 'din it-tikketta 750 00:40:19,000 --> 00:40:23,000 li jkun ugwali għal dak kollu li l-utent ittajpjat fil ġewwa tal-qasam tat-test. 751 00:40:23,000 --> 00:40:26,000 Din il-linja li jmiss hawnhekk huwa sempliċiment metodu li jien ssejjaħ 752 00:40:26,000 --> 00:40:29,000 fuq il-qasam tat-test li tgħid nixtieq li jaħbu l-keyboard. 753 00:40:29,000 --> 00:40:33,000 Dan huwa biss il-metodu arbitrarju li Apple għażlet. 754 00:40:33,000 --> 00:40:38,000 >> Għal darb'oħra, qabel I ma xejn kelli li wajer kollox up, so I ewwel daħal minn hawn. 755 00:40:38,000 --> 00:40:42,000 Mill-kontrollur fehma I drag fuq il-kaxxa tat-test. 756 00:40:42,000 --> 00:40:46,000 I let go, u nista 'nara hawn li I jistgħu jagħmlu dan l-proprjetà qasam tat-test 757 00:40:46,000 --> 00:40:49,000 peress hawn fuq fil-kontrollur fehma stajt definit proprjetà 758 00:40:49,000 --> 00:40:52,000 li hija IBOutlet ta 'qasam tat-test. 759 00:40:52,000 --> 00:40:55,000 Dan jgħid li nista 'wajer din il-proprjetà up 760 00:40:55,000 --> 00:40:59,000 għal qasam tat-test fil-UI tiegħi. 761 00:40:59,000 --> 00:41:03,000 Issa meta I ikklikkja dan I tista 'tibda ittajpjar. 762 00:41:03,000 --> 00:41:06,000 Issa jekk I ikklikkja l-buttuna jsir dan se nar 763 00:41:06,000 --> 00:41:08,000 avveniment li issa nista 'jirreaġixxu għaliha. 764 00:41:08,000 --> 00:41:10,000 Ebda handlers avveniment. 765 00:41:10,000 --> 00:41:13,000 Thats kif I biss wieġbet għal din buttuna jsir. 766 00:41:13,000 --> 00:41:15,000 Jagħmel sens? 767 00:41:15,000 --> 00:41:20,000 >> Din mhix mudell disinn li inti ma tista 'qatt issib ruħek 768 00:41:20,000 --> 00:41:23,000 ħolqien protokoll tiegħek, iżda biss jafu li xi 769 00:41:23,000 --> 00:41:27,000 komponenti differenti IOS jirreġistraw avvenimenti b'modi differenti. 770 00:41:27,000 --> 00:41:29,000 Buttuni, per eżempju, jużaw dawk IBActions. 771 00:41:29,000 --> 00:41:32,000 Oqsma Test, min-naħa l-oħra, tmur għall-użu delegati. 772 00:41:32,000 --> 00:41:36,000 Nistgħu naraw u inti tista 'tfittex kollha ta' dak ġewwa l tad-dokumentazzjoni. 773 00:41:36,000 --> 00:41:41,000 Mill-mod, hemm attwalment ton ta 'għalf UI mibnija fis IOS għalik, 774 00:41:41,000 --> 00:41:46,000 hekk per eżempju, il-mod I magħmula li jgħidu jsir fil-qiegħ dritt 775 00:41:46,000 --> 00:41:48,000 huwa I magħżula f'dan il-qasam it-test. 776 00:41:48,000 --> 00:41:50,000 Ġejt hawn fuq. 777 00:41:50,000 --> 00:41:53,000 I impress stabbiliti daqsxejn lura ewlenin, 778 00:41:53,000 --> 00:41:56,000 u I jistgħu attwalment jagħmlu dan mazz sħiħ ta 'affarijiet, bħal jekk irrid li ngħid 779 00:41:56,000 --> 00:42:00,000 emerġenza sejħa minflok I tista 'tagħmel dan, li huwa totalment każwali, 780 00:42:00,000 --> 00:42:02,000 u jien ma nafx għaliex hemm mibni buttuna sejħa ta 'emerġenza, 781 00:42:02,000 --> 00:42:06,000 iżda hemm, huwa jgħid sejħa ta 'emerġenza fl-ittri verament żgħar. 782 00:42:06,000 --> 00:42:08,000 Hemm inti tmur. 783 00:42:08,000 --> 00:42:12,000 >> Żgur tesplora kollha ta 'dawn l-għażliet differenti fil-IOS. 784 00:42:12,000 --> 00:42:14,000 Kwalunkwe mistoqsijiet dwar id-delegati? 785 00:42:14,000 --> 00:42:18,000 Għal darb'oħra, biss mudell disinn interessanti li inti għandek tkun taf. 786 00:42:18,000 --> 00:42:22,000 Okay, ejja jmiss tagħti ħarsa lejn fehmiet tal-mejda. 787 00:42:22,000 --> 00:42:26,000 Veduta tabella hija bażikament dik il-lista ta 'oġġetti li hija kollha fuq il-post fil IOS. 788 00:42:26,000 --> 00:42:29,000 Meta inti qed flipping permezz kollha tal-kuntatti tiegħek, qed tfittex fi 789 00:42:29,000 --> 00:42:34,000 il-paġna iffissar, u dak it-tip ta 'lista ta' affarijiet li jissejjaħ ħsieb tabella. 790 00:42:34,000 --> 00:42:37,000 Implimentazzjoni ħsieb tabella fl IOS hija pjuttost sempliċi. 791 00:42:37,000 --> 00:42:41,000 Minflok tagħmel klassi li jinżel minn dik UIViewController 792 00:42:41,000 --> 00:42:44,000 bħal aħna ghamilt qabel we sempliċiment għandek bżonn li jgħidu aktar milli 793 00:42:44,000 --> 00:42:46,000 kollox UIViewController ma nixtieq li tagħmel, 794 00:42:46,000 --> 00:42:50,000 I say kollox UITableViewController ma nixtieq li tagħmel, 795 00:42:50,000 --> 00:42:54,000 b'tali mod li sempliċement iżid xi affarijiet addizzjonali li huma kompletament magħmula għalina. 796 00:42:54,000 --> 00:42:58,000 Għandna bżonn biex jagħmlu ftit biex bażikament timla l-vojt ġewwa tat-tabella. 797 00:42:58,000 --> 00:43:02,000 >> Sabiex juru tabella I-ħtieġa li twieġeb xi mistoqsijiet. 798 00:43:02,000 --> 00:43:06,000 L-ewwel domanda li għandi bżonn li tingħata risposta huwa kemm taqsimiet huma fit-tabella? 799 00:43:06,000 --> 00:43:08,000 Meta inti qed flipping permezz app kuntatti tiegħek inti ser ikollok avviż li huwa tip ta ' 800 00:43:08,000 --> 00:43:12,000 organizzata mill-Kif, allura inti għandek il-Bs, u inti għandek li header sub ftit. 801 00:43:12,000 --> 00:43:14,000 Kull wieħed minn dawn huwa msejjaħ taqsima. 802 00:43:14,000 --> 00:43:16,000 Inti tista 'jew ma jistgħux jeħtieġu dawn. 803 00:43:16,000 --> 00:43:19,000 L-ewwel ħaġa li għandek bżonn tagħmel hu li timplimenta metodu 804 00:43:19,000 --> 00:43:22,000 imsejħa tableView: numberOfSectionsInTableView. 805 00:43:22,000 --> 00:43:25,000 Li sempliċiment jirritorna kemm sezzjonijiet ikollok, 806 00:43:25,000 --> 00:43:29,000 għalhekk dan jista 'jgħid ritorn wieħed jekk għandek wieħed fehma tabella kbar. 807 00:43:29,000 --> 00:43:33,000 Il-mistoqsija li jmiss li IOS jeħtieġ li tkun taf kemm ringieli għandek? 808 00:43:33,000 --> 00:43:36,000 Per eżempju, inti qed flipping permezz ħsieb tabella. 809 00:43:36,000 --> 00:43:39,000 Inti għandek numru fiss ta 'kanzunetti inti qed tfittex fi jew numru fiss ta' kuntatti. 810 00:43:39,000 --> 00:43:41,000 Jekk int lili, naturalment, mhux li ħafna, 811 00:43:41,000 --> 00:43:44,000 u b'tali mod li l-mod kif IOS jaf kemm ċelloli għall-wiri. 812 00:43:44,000 --> 00:43:46,000 >> Għal darb'oħra, dan jista 'jgħid xi ħaġa bħal ritorn 3. 813 00:43:46,000 --> 00:43:49,000 Fehma tabella My 3 ringieli. 814 00:43:49,000 --> 00:43:52,000 Fl-aħħarnett, IOS jeħtieġ li tkun taf liema kull ċellula Dehra, 815 00:43:52,000 --> 00:43:54,000 iva, liema huwa fil-fatt se tagħmel hu li jsejħu dan il-metodu stabbiliti hawn, 816 00:43:54,000 --> 00:43:57,000 dan tableView: cellForRowAtIndexPath. 817 00:43:57,000 --> 00:44:01,000 Huwa ser sejħa dan il-metodu fuq kull ċellola waħda ġewwa tal-mejda tiegħek. 818 00:44:01,000 --> 00:44:03,000 Kif ma jaf kif ħafna drabi li hija sejħa? 819 00:44:03,000 --> 00:44:06,000 Ukoll, inti told ġewwa ta 'numru ta' ringieli fit-taqsima. 820 00:44:06,000 --> 00:44:08,000 Aħna ser sejħa dan dwar kull wieħed ċelluli tagħna, 821 00:44:08,000 --> 00:44:11,000 u ġewwa ta 'dan huwa fejn inti tista' tagħmel affarijiet simili 822 00:44:11,000 --> 00:44:16,000 jistabbilixxu t-test jew jgħidlek dak li buttuna blu ftit fuq il-lemin ma. 823 00:44:16,000 --> 00:44:19,000 Il-mudell għall jkollna dawn iċ-ċelluli, aħna qed tmur biex jużaw dan il-metodu 824 00:44:19,000 --> 00:44:22,000 imsejħa dequeueReusableCellWithIdentifier. 825 00:44:22,000 --> 00:44:29,000 >> Għan-C huwa attwalment tajjeb ħafna magħruf għat-tul redikoli ta 'ismijiet metodu tagħhom, 826 00:44:29,000 --> 00:44:32,000 u dan huwa verament każ sbieħ fl-eżempju punt. 827 00:44:32,000 --> 00:44:37,000 X'inhu dan il-metodu ma huwa dan biss jgħid Nixtieq li tagħti me phone. 828 00:44:37,000 --> 00:44:39,000 Just ħaġa IOS. 829 00:44:39,000 --> 00:44:41,000 Jekk għandek xi ħaġa simili 100,000 kanzunetti fuq iPod tiegħek 830 00:44:41,000 --> 00:44:45,000 dak IOS ma trid tagħmel hu li talloka 100,000 ċelluli, 831 00:44:45,000 --> 00:44:48,000 għaliex jekk int fil-quċċata tal-lista tiegħek, inti verament bżonn li jiġu allokati memorja 832 00:44:48,000 --> 00:44:51,000 għall-ċellula li l-99000 ringieli isfel? 833 00:44:51,000 --> 00:44:55,000 Le, għaliex kif int scrolling inti tista tip ta jallokaw kif tmur flimkien. 834 00:44:55,000 --> 00:44:57,000 Dan isir għalik. 835 00:44:57,000 --> 00:44:59,000 Inti ma għandekx għalfejn tinkwieta dwar dak kollu li Jittieħed prestazzjoni stupid. 836 00:44:59,000 --> 00:45:02,000 Kulma għandek tgħid huwa inti sejħa dan dequeueReusableCellWithIdentifier metodu, 837 00:45:02,000 --> 00:45:06,000 u dan jgħid, okay, jekk għandek bżonn biex jien ser toħloq phone ġdid għalik. 838 00:45:06,000 --> 00:45:09,000 >> Imma jekk int fil-qiegħ tat-tabella u inti stajt diġà allokati xi ċelloli 839 00:45:09,000 --> 00:45:12,000 fil-quċċata tat-tabella li int verament mhux se jeħtieġu ghaċ dalwaqt 840 00:45:12,000 --> 00:45:15,000 Jien ser jagħtuk waħda minn dawk dahar minflok allokazzjoni ta 'waħda ġdida, 841 00:45:15,000 --> 00:45:17,000 u għalhekk dan huwa ta 'tħassib prestazzjoni sbieħ. 842 00:45:17,000 --> 00:45:21,000 Inti ma għandekx biex jallokaw l-ċelluli yourself. 843 00:45:21,000 --> 00:45:23,000 Li għaddej biex jagħtuk lura ċellola. 844 00:45:23,000 --> 00:45:25,000 Huwa ser jirritornaw lilek oġġett phone. 845 00:45:25,000 --> 00:45:28,000 Ladarba inti tkun l-oġġett phone inti tista 'tagħmel Jittieħed lilha. 846 00:45:28,000 --> 00:45:32,000 Tista 'tissettja t-test tad-ċellola ma' din il-proprjetà msejħa tikketta test. 847 00:45:32,000 --> 00:45:36,000 Inti tista 'żżid li vleġġa fuq il-lemin jew xi għalf każwali ieħor 848 00:45:36,000 --> 00:45:41,000 ma din il-proprjetà oħra msejħa accessoryType, u hekk u hekk. 849 00:45:41,000 --> 00:45:46,000 >> Ejja tagħti ħarsa lejn attwalment timplimenta ħsieb tabella issa. 850 00:45:46,000 --> 00:45:49,000 Meta I ħolqot dan il-proġett 851 00:45:49,000 --> 00:45:53,000 pjuttost milli tgħid applikazzjoni fehma waħda I attwalment daħal minn hawn 852 00:45:53,000 --> 00:45:57,000 li master-dettall applikazzjoni, u għalhekk bażikament dan jikkorrispondi għall-app-posta 853 00:45:57,000 --> 00:46:01,000 fuq il-iPad mal-fehma tabella fuq ix-xellug u mbagħad l-kontenut fuq il-lemin. 854 00:46:01,000 --> 00:46:07,000 Fuq l-iPod jew iPhone dan se tikkorrispondi għal kunċett tabella waħda. 855 00:46:07,000 --> 00:46:10,000 Li meta sirt kodiċi starter tiegħi. 856 00:46:10,000 --> 00:46:13,000 >> Ejja ewwel tagħti ħarsa lejn l-storyboard. 857 00:46:13,000 --> 00:46:15,000 Kollha ta 'dan sar għalija, bażikament maħluqa. 858 00:46:15,000 --> 00:46:18,000 Dan bar tan-navigazzjoni wera lili dak li cell eżempju jista look like, 859 00:46:18,000 --> 00:46:22,000 u nista 'ikklikkja darbtejn dan, ibiddel it-titolu. 860 00:46:22,000 --> 00:46:25,000 Kwalunkwe tħassib UI oħra I jistgħu jimmaniġġjaw hemmhekk. 861 00:46:25,000 --> 00:46:27,000 Il-fajl tal-header jistenna verament sempliċi. 862 00:46:27,000 --> 00:46:30,000 Pjuttost milli qal dan huwa UIViewController aħna qed issa tgħid li dan huwa 863 00:46:30,000 --> 00:46:35,000 TableViewController, hekk aħna nafu li aħna rridu li sejħa kollha dawk il-metodi tal-mejda. 864 00:46:35,000 --> 00:46:38,000 Next Irrid li toħloq proprjetà li għaddej biex jirrappreżentaw 865 00:46:38,000 --> 00:46:40,000 l-affarijiet ġewwa tal-mejda tiegħi. 866 00:46:40,000 --> 00:46:43,000 Din it-tabella se arbitrarjament juru 867 00:46:43,000 --> 00:46:46,000 lista ta 'frott, u so I bżonn li jinħoloq xi array 868 00:46:46,000 --> 00:46:49,000 fejn nista 'daħħal frott. 869 00:46:49,000 --> 00:46:52,000 Ġewwa tal-fajl implimentazzjoni tiegħi l-ewwel ħaġa li nixtieq do 870 00:46:52,000 --> 00:46:55,000 huwa Irrid nagħmel ċert I initialize din array. 871 00:46:55,000 --> 00:46:58,000 >> I said alloc Iniz, maħluqa array frott tiegħi, 872 00:46:58,000 --> 00:47:03,000 u jien żżid 4 affarijiet miegħu, li waħda minnhom hija ħafna aktar kontroversjali milli l-3 l-oħra. 873 00:47:03,000 --> 00:47:06,000 U issa għandi firxa ta 'daqs 4. 874 00:47:06,000 --> 00:47:08,000 Aħna qed tħawwad it up fil-CS50. 875 00:47:08,000 --> 00:47:11,000 I issa jkollhom firxa ta 'daqs 4. 876 00:47:11,000 --> 00:47:13,000 Issa jien ser tibda jwieġbu dawn il-mistoqsijiet, u fil-fatt, 877 00:47:13,000 --> 00:47:16,000 meta I ħolqot dan app kollha ta 'dan kien diġà sar għalija. 878 00:47:16,000 --> 00:47:19,000 I ma kellhomx it-tip mill-għadd ta 'taqsimiet bil-ħsieb tabella. 879 00:47:19,000 --> 00:47:22,000 Kien diġà hemm, u jien timla l-vojt. 880 00:47:22,000 --> 00:47:24,000 Kemm sezzjonijiet għandi? 881 00:47:24,000 --> 00:47:26,000 Wieħed. Kollha jsir. 882 00:47:26,000 --> 00:47:28,000 Kemm ringieli għandi? 883 00:47:28,000 --> 00:47:31,000 Well, I jkollhom waħda ringiela għal kull frott, għalhekk dan għadd 884 00:47:31,000 --> 00:47:34,000 huwa proprjetà ta 'kull firxa li tgħid kemm hu kbir huwa? 885 00:47:34,000 --> 00:47:36,000 Li kemm ringieli jien. 886 00:47:36,000 --> 00:47:42,000 Fl-aħħarnett, I-ħtieġa li jgħidu dak li ma kull ċellula look like? 887 00:47:42,000 --> 00:47:46,000 Jien se ngħid dequeueReusableCellWithIdentifier. 888 00:47:46,000 --> 00:47:48,000 >> Għal darb'oħra, dan kien diġà bil-miktub għalija. 889 00:47:48,000 --> 00:47:51,000 I ma jkollhom jagħmlu dan myself, u nixtieq li terġa 'lura 890 00:47:51,000 --> 00:47:54,000 din iċ-ċellula fil dan il-post. 891 00:47:54,000 --> 00:47:57,000 Ftakar li aħna qed jitolbu dan istess metodu fuq kull ċellula waħda, 892 00:47:57,000 --> 00:48:01,000 u dan l-argument hawn, dan l-argument indexPath, 893 00:48:01,000 --> 00:48:03,000 jgħid dak ringiela jien pulzieri 894 00:48:03,000 --> 00:48:05,000 Jekk jiena ngħid indexPath.row stabbiliti hawn 895 00:48:05,000 --> 00:48:09,000 dan se jkun 0, imbagħad se jkun 1, imbagħad se jkun 2, u dan huwa hekk naf 896 00:48:09,000 --> 00:48:11,000 dak cell jien bħalissa wiri. 897 00:48:11,000 --> 00:48:15,000 Irrid li jistabbilixxu t-test taċ-ċellula li jużaw din il-proprjetà textLabel 898 00:48:15,000 --> 00:48:19,000 li jmorru ġewwa firxa tal-frott tiegħi u jiksbu 899 00:48:19,000 --> 00:48:21,000 l jikkorrispondi għal kull ringiela oġġett. 900 00:48:21,000 --> 00:48:24,000 Jekk dan huwa string, jien issa twaqqif 901 00:48:24,000 --> 00:48:28,000 il-proprjetà test li string. 902 00:48:28,000 --> 00:48:30,000 I tista 'tagħmel ħaġa waħda oħra. 903 00:48:30,000 --> 00:48:32,000 I tista 'wkoll tirreġistra handler avveniment fuq kull wieħed mill-ċelloli, 904 00:48:32,000 --> 00:48:35,000 hekk meta I vit kull wieħed minn dawn iċ-ċelluli 905 00:48:35,000 --> 00:48:39,000 dan didSelectRowAtIndexPath, dan se jiġu msejħa għalija, 906 00:48:39,000 --> 00:48:42,000 hekk sempliċiment billi tiddefinixxi din I issa jistgħu jimmaniġġjaw x'jiġri 907 00:48:42,000 --> 00:48:46,000 meta inti vit ċellola, u għal darb'oħra, aħna qed jgħaddi li fih ċelluli kienet sfruttat 908 00:48:46,000 --> 00:48:50,000 sabiex inkunu nistgħu użu mill-ġdid dan il-handler avveniment istess għal kulħadd ta 'ċelluli tagħna. 909 00:48:50,000 --> 00:48:53,000 >> Għal darb'oħra, din hija xi ħaġa IOS qed tagħmel għalija. 910 00:48:53,000 --> 00:48:55,000 Ejja juru ieħor popup annoying 911 00:48:55,000 --> 00:48:59,000 li sempliċiment tgħid li inti qabad xi ħaġa fejn xi ħaġa li 912 00:48:59,000 --> 00:49:04,000 se tkun l-oġġett ringiela. 913 00:49:04,000 --> 00:49:10,000 Meta I run dan, jien ser ikollhom din il-fehma tabella sbieħ 914 00:49:10,000 --> 00:49:14,000 ma 'wieħed ringiela għal kull wieħed minn dawn frott, u jekk I vit 1 915 00:49:14,000 --> 00:49:16,000 hija me dice dak li ġara. 916 00:49:16,000 --> 00:49:21,000 Jagħmel sens? 917 00:49:21,000 --> 00:49:24,000 Ejjew nibnu ftit aktar kumplessa ta 'app, 918 00:49:24,000 --> 00:49:28,000 kemm tikklikkja inti qabad tadam huwa. 919 00:49:28,000 --> 00:49:31,000 Il-parti sbieħ dwar il-storyboarding 920 00:49:31,000 --> 00:49:35,000 huwa huwa mhux biss se jgħinu iskrins disinn us individwalment, 921 00:49:35,000 --> 00:49:38,000 huwa wkoll ser tgħinna jorbtu flimkien app kollu tagħna, 922 00:49:38,000 --> 00:49:42,000 hekk l-app aħħari aħna ser tkun bini huwa dan sbieħ sportivi aħbarijiet qarrej, 923 00:49:42,000 --> 00:49:45,000 u għalhekk li għaddej biex ikollhom iskrins multipli, u so I jistgħu attwalment jirrappreżentaw 924 00:49:45,000 --> 00:49:48,000 kull wieħed minn dawn l-iskrins multipli fuq il-storyboard, 925 00:49:48,000 --> 00:49:52,000 u nista zoom out u ara app tiegħi minn livell għoli. 926 00:49:52,000 --> 00:49:55,000 >> Sabiex jinħoloq ġewwa element ġdid ta 'storyboard tiegħi 927 00:49:55,000 --> 00:49:59,000 huwa verament sempliċi ġewwa ta 'bennej Interface. 928 00:49:59,000 --> 00:50:01,000 Jekk irrid li żżid ieħor iskrin li din, per eżempju, 929 00:50:01,000 --> 00:50:06,000 I jistgħu 1 zoom out mal-zoom niskata li Apple tant iħobb tant, 930 00:50:06,000 --> 00:50:09,000 u 'l isfel hawn qabel I tfittxija għal buttuna 931 00:50:09,000 --> 00:50:12,000 u I drag u qatra l-buttuna 932 00:50:12,000 --> 00:50:15,000 jekk irrid li jinħoloq skrin ġdida I jistgħu attwalment biss drag u qatra 933 00:50:15,000 --> 00:50:19,000 kontrollur fehma sħiħa, hekk jekk I pick dan, iġbdu hawn fuq, 934 00:50:19,000 --> 00:50:23,000 ħej, hemm ieħor iskrin, u għalhekk issa qegħdin jużaw dan il-fajl storyboard istess 935 00:50:23,000 --> 00:50:26,000 I jista 'jkollhom kollha ta' l-iskrins ġewwa ta 'app tiegħi, u nista zoom out 936 00:50:26,000 --> 00:50:28,000 u tara kif dawn jinteraġixxu. 937 00:50:28,000 --> 00:50:32,000 Dawn mhux se jinteraġixxu s'issa. 938 00:50:32,000 --> 00:50:36,000 Il-mod li bih dawn l-iskrins 2 jinteraġixxu huwa inti jiddefinixxu relazzjonijiet. 939 00:50:36,000 --> 00:50:39,000 Tista 'bażikament tgħid dan l-iskrin, meta tagħfas din il-buttuna, 940 00:50:39,000 --> 00:50:42,000 Nixtieq li tiżżerżaq fuq dan l-iskrin ġodda. 941 00:50:42,000 --> 00:50:44,000 Dan ifisser li hemm dan it-tip ta 'relazzjoni bejn 942 00:50:44,000 --> 00:50:46,000  l-iskrin ewwel u l-iskrin tat-tieni. 943 00:50:46,000 --> 00:50:49,000 Int ser ikollok bażikament vleġġa minn dak buttuna biex l-iskrin 2 944 00:50:49,000 --> 00:50:53,000 qal li meta tagħfas din il-buttuna li fejn Irrid immur. 945 00:50:53,000 --> 00:50:57,000 Eżatt bħal aħna-kontroll għafast u mkaxkra li jiġu definiti dawk ħwienet 946 00:50:57,000 --> 00:51:01,000 aħna qed tmur biex jagħmlu l-istess ħaġa li jiddefinixxu dawn segues. 947 00:51:01,000 --> 00:51:05,000 >> Ser naraw eżempju għal dan, u qabel we attwalment transizzjoni 948 00:51:05,000 --> 00:51:08,000 minn skrin għall-ieħor IOS huwa sbieħ biżżejjed biex sejħa dan il-metodu 949 00:51:08,000 --> 00:51:11,000 imsejħa prepareForSegue, u dan huwa fejn aħna tista 'tibda 950 00:51:11,000 --> 00:51:14,000 tintbagħat data minn app għall-ieħor. 951 00:51:14,000 --> 00:51:17,000 Fl-eżempju aħna ser tħares lejn din bażikament se jħallina naħsdu 952 00:51:17,000 --> 00:51:20,000 filtru timijiet baseball mill-kampjonati u d-diviżjonijiet. 953 00:51:20,000 --> 00:51:23,000 Meta I tagħżel kampjonat, per eżempju, nixtieq transizzjoni 954 00:51:23,000 --> 00:51:25,000 għall-iskrin li jmiss tiegħi fejn I jistgħu juru kollha ta 'l diviżjonijiet 955 00:51:25,000 --> 00:51:27,000 f'dak il-kampjonat jew l-timijiet differenti. 956 00:51:27,000 --> 00:51:31,000 I ħtieġa li jibgħat għal dak screen dak it-timijiet li għandek display. 957 00:51:31,000 --> 00:51:35,000 Biex tagħmel dan jien ser jieħdu vantaġġ ta 'dan il-metodu hawn. 958 00:51:35,000 --> 00:51:39,000 >> Fl-aħħarnett, biss punt każwali fuq IOS. 959 00:51:39,000 --> 00:51:41,000 Jekk inti tixtieq li jaħżen id-data hemm dan ħaġa imsejħa data ewlenija, 960 00:51:41,000 --> 00:51:44,000 li huwa fil-fatt tip ta 'kkumplikata biex jaħdmu ma'. 961 00:51:44,000 --> 00:51:47,000 Tista 'wkoll tuża SQL li jaħżen data, 962 00:51:47,000 --> 00:51:51,000 li, għal darb'oħra, huwa sbieħ imma tip ta 'fuq in-naħa aktar kumplikata biex jaħdmu ma', 963 00:51:51,000 --> 00:51:55,000 iżda IOS jappoġġja wkoll dawn l-affarijiet verament jibred imsejħa listi ta 'proprjetà, 964 00:51:55,000 --> 00:52:00,000 u lista proprjetà hija biss fajl li tirrappreżenta pari valur ewlenin. 965 00:52:00,000 --> 00:52:03,000 Inti tiddefinixxi lista ta 'ċwievet, u inti tgħidli dan ewlenin se tkun firxa. 966 00:52:03,000 --> 00:52:06,000 Din iċ-ċavetta se tkun string, u bażikament xi ħaġa li tista 'tagħmel 967 00:52:06,000 --> 00:52:10,000 fil JSON inti tista 'tagħmel ġewwa ta' lista proprjetà, 968 00:52:10,000 --> 00:52:14,000 u għalhekk dan verament nicely jippermetti li taħdem ma 'xi data. 969 00:52:14,000 --> 00:52:18,000 Per eżempju, I jkollhom din Teams.plist li I maħluqa. 970 00:52:18,000 --> 00:52:22,000 I ħolqot fajl plist ġodda, u nista 'drill stabbiliti. 971 00:52:22,000 --> 00:52:26,000 Dan huwa dizzjunarju, dan huwa dizzjunarju, dawn huma kordi, 972 00:52:26,000 --> 00:52:30,000 u għalhekk din hija rappreżentazzjoni grafika sbieħ ta 'dokument JSON 973 00:52:30,000 --> 00:52:33,000 jew biss sett ta 'pari valur ewlenin, 974 00:52:33,000 --> 00:52:37,000 u għalhekk dan huwa d-data li jien ser tkun ħidma mal ġewwa tal app tiegħi. 975 00:52:37,000 --> 00:52:40,000 >> Ejja first come hawn fuq. Għandna fajls ħafna aktar issa. 976 00:52:40,000 --> 00:52:44,000 Imma ejja min jiġi hawn fuq għall-storyboard. 977 00:52:44,000 --> 00:52:48,000 Il-storyboard hawn 'jekk I jistgħu zoom out- 978 00:52:48,000 --> 00:52:51,000 nistgħu issa tara li dan huwa l-fluss ta 'app tiegħi. 979 00:52:51,000 --> 00:52:53,000 Jien 1 ser tibda fuq dan l-iskrin. 980 00:52:53,000 --> 00:52:55,000 Jien ser drill stabbiliti għal dan l-iskrin, 981 00:52:55,000 --> 00:52:58,000 u jien ser drill stabbiliti għal dan l-iskrin, u nistgħu naraw hawn li jekk I tip ta ' 982 00:52:58,000 --> 00:53:04,000 jiċċaqalqu waħda minn dawn madwar għandna dawn vleġeġ li jmorru minn hawn hawn, 983 00:53:04,000 --> 00:53:08,000 u l-mod I jiddefinixxu dak vleġġa kienet jekk I zoom ftit, 984 00:53:08,000 --> 00:53:12,000 u jekk nasal fuq din kontrollur fehma, 985 00:53:12,000 --> 00:53:16,000 u hawnhekk ċellola, u nixtieq ngħid li meta inti vit ċellola 986 00:53:16,000 --> 00:53:18,000 Nixtieq li tiżżerżaq fuq għal ieħor iskrin. 987 00:53:18,000 --> 00:53:21,000 I tista 'sempliċement iżommu l-kontroll, 988 00:53:21,000 --> 00:53:26,000 iscroll fuq ftit, iżommu r-kontroll, drag din iċ-ċellula fuq u itlaq. 989 00:53:26,000 --> 00:53:30,000 >> U minn hawn ngħidu x'inhu l-tranżizzjoni li inti tixtieq li tuża? 990 00:53:30,000 --> 00:53:32,000 Do inti tixtieq li tuża dik ħaġa slide li sejjaħ push? 991 00:53:32,000 --> 00:53:34,000 Tixtieq li tiżżerżaq sa mill-qiegħ? 992 00:53:34,000 --> 00:53:36,000 Li sejjaħ modali. 993 00:53:36,000 --> 00:53:40,000 U ladarba I ikklikkja waħda minn dawn, huwa se tiġbed dan vleġġa għalija, 994 00:53:40,000 --> 00:53:44,000 u dan ifisser li stajt attwalment ttrattati x'jiġri meta I-istampa din il-buttuna grafikament. 995 00:53:44,000 --> 00:53:48,000 I ma jiktbu kwalunkwe kodiċi li attwalment tiżżerżaq minn skrin għall-wieħed li jmiss. 996 00:53:48,000 --> 00:53:51,000 I definit din viżwalment ġewwa tal bennej Interface. 997 00:53:51,000 --> 00:53:55,000 Jekk I ikklikkja fuq din il-vleġġa, nistgħu naraw li I taw dan ħaġa isem. 998 00:53:55,000 --> 00:53:59,000 I sejħitilha showDivisions, u dan huwa hekk li nista jafu 999 00:53:59,000 --> 00:54:03,000 dak transizzjoni li ser ikun hemm, u aħna ser tara għaliex fi ftit sec. 1000 00:54:03,000 --> 00:54:06,000 Li kif stajt fili up-iskrins differenti fil app tiegħi. 1001 00:54:06,000 --> 00:54:09,000 Jekk dan kien buttuna, per eżempju, minflok ħsieb mejda, 1002 00:54:09,000 --> 00:54:11,000 I tista 'tikkontrolla ikklikkja fuq il-buttuna, drag fuq l-iskrin li jmiss, 1003 00:54:11,000 --> 00:54:16,000 u li kif nista 'nagħmlu dan il-mod ta' navigazzjoni. 1004 00:54:16,000 --> 00:54:19,000 >> Really malajr, jekk aħna jidħlu fis-MasterViewController, 1005 00:54:19,000 --> 00:54:22,000 għal darb'oħra, aħna qed tmur biex jiddefinixxu sempliċiment lista ta 'affarijiet 1006 00:54:22,000 --> 00:54:26,000 li se jintwerew fil-fehma tabella. 1007 00:54:26,000 --> 00:54:29,000 Hawnhekk jien tgħid nixtieq li tieħu dan il-fajl plist, 1008 00:54:29,000 --> 00:54:32,000 u nixtieq li inti tagħbija up fis dizzjunarju, 1009 00:54:32,000 --> 00:54:35,000 u ladarba inti għandek li dizzjunarju, jien ser tirrispondi dawn id-domandi l-istess mill-ġdid. 1010 00:54:35,000 --> 00:54:37,000 Hawnhekk huwa n-numru ta 'taqsimiet. 1011 00:54:37,000 --> 00:54:41,000 Waħda, hemm waħda ringiela għal kull kampjonat, u t-test ta 'kull ċellula 1012 00:54:41,000 --> 00:54:46,000 għandu jkun jew l-ewwel waħda, l-kampjonat ewwel, l-kampjonat 2, u l-bqija. 1013 00:54:46,000 --> 00:54:51,000 Fl-aħħarnett, jien ser jużaw dan il-metodu li aħna biss raw imsejħa prepareForSegue, 1014 00:54:51,000 --> 00:54:54,000 u dan huwa l-metodu li għaddej biex jiġu sparati meta I ikklikkja 1015 00:54:54,000 --> 00:54:57,000 fuq waħda minn dawk ringieli u għalhekk l-attivazzjoni din it-tranżizzjoni 1016 00:54:57,000 --> 00:54:59,000 li jiena stabbilit ma 'l-vleġeġ. 1017 00:54:59,000 --> 00:55:02,000 Dan huwa qal li I jista 'jkollhom multipli 1018 00:55:02,000 --> 00:55:05,000 relazzjonijiet minn skrin għall-ieħor. 1019 00:55:05,000 --> 00:55:08,000 Jekk ikolli 2 buttuni u kull buttuna tieħdok għal screen differenti 1020 00:55:08,000 --> 00:55:10,000 Jien ser jkollhom 2 segues, 1 għal kull buttuna. 1021 00:55:10,000 --> 00:55:14,000 Iżda dan prepareForSegue huwa, għal darb'oħra, ser jerġgħu jintużaw 1022 00:55:14,000 --> 00:55:17,000 għal kull wieħed mill-relazzjonijiet differenti, b'tali mod li jfisser li għandi bżonn mod 1023 00:55:17,000 --> 00:55:21,000 ta 'identifikazzjoni jekk inti agħfas il-buttuna ewwel jew inti agħfas il-buttuna tat-tieni. 1024 00:55:21,000 --> 00:55:25,000 >> Ftakar meta I taw li segue-isem, dan showDivisions, 1025 00:55:25,000 --> 00:55:29,000 li kif I issa jkunu jafu li dan huwa l-segue li ġie attivat. 1026 00:55:29,000 --> 00:55:32,000 All I trid tagħmel hu li nixtieq ngħid 1027 00:55:32,000 --> 00:55:35,000 Irrid li ċifra barra dak I biss hit, 1028 00:55:35,000 --> 00:55:38,000 u hekk li tikseb li, nista 'ngħid I jridu li l-indexPath għar-ringiela magħżula, 1029 00:55:38,000 --> 00:55:42,000 tiftakar il-indexPath biss jgħid fejn I biss għafast, 1030 00:55:42,000 --> 00:55:47,000 u mbagħad Irrid ngħid li nixtieq biex insemmu fejn jien ser. 1031 00:55:47,000 --> 00:55:50,000 Dan destinationViewController, li l-proprjetà tal-segue. 1032 00:55:50,000 --> 00:55:53,000 Dik hija l-iskrin jien ser, 1033 00:55:53,000 --> 00:55:56,000 so I jafu li l-iskrin jien ser jissejjaħ DivisionsViewController 1034 00:55:56,000 --> 00:55:59,000 minħabba I maħluqa dik il-klassi, 1035 00:55:59,000 --> 00:56:02,000 u hekk issa jekk jien ngħid d.divisions 1036 00:56:02,000 --> 00:56:06,000 Jien issa iffissar ta 'proprjetà tal-kontrollur fehma jien waslet biex tmur. 1037 00:56:06,000 --> 00:56:10,000 Dan huwa kif jien tintbagħat data minn skrin għall-ieħor iskrin. 1038 00:56:10,000 --> 00:56:13,000 >> Just tħares lejn dan DivisionsViewController 1039 00:56:13,000 --> 00:56:16,000 tista 'tara hawn dak fil-fajl h. 1040 00:56:16,000 --> 00:56:20,000 hemm li diviżjonijiet tal-proprjetà, u dan huwa dak li jien bażikament populating, 1041 00:56:20,000 --> 00:56:25,000 b'tali mod li l-mod kif naf li jien li juri l-diviżjonijiet li jikkorrispondu għal 1042 00:56:25,000 --> 00:56:28,000 il-kampjonat li I għafast, u għal darb'oħra, 1043 00:56:28,000 --> 00:56:31,000 l-opinjoni tabella attwali jistenna pjuttost l-istess, biss twieġeb dawk 1044 00:56:31,000 --> 00:56:34,000 3 mistoqsijiet sempliċi kif ukoll jidentifikaw 1045 00:56:34,000 --> 00:56:37,000 x'jiġri meta inti tmur għall-iskrin li jmiss. 1046 00:56:37,000 --> 00:56:40,000 Just ftit affarijiet oħra hawn. 1047 00:56:40,000 --> 00:56:43,000 Tinnota fil-quċċata hawnhekk li minflok qal # Jinkludu 1048 00:56:43,000 --> 00:56:45,000 Jien issa tgħid # jimporta. 1049 00:56:45,000 --> 00:56:47,000 Dan huwa biss ħaġa Objettiv-C. 1050 00:56:47,000 --> 00:56:52,000 L-importazzjoni hija bażikament verżjoni nicer ta jinkludu, 1051 00:56:52,000 --> 00:56:57,000 u per eżempju, għandna bżonn inkunu nafu liema din il-klassi hi, 1052 00:56:57,000 --> 00:57:00,000 so I ma tistax biss jgħidu DivisionsViewController. 1053 00:57:00,000 --> 00:57:05,000 Jekk aħna ma hashtag ġewwa standardio.c tal-fajl tagħna c. 1054 00:57:05,000 --> 00:57:07,000 l-kumpilatur ma kellhom ebda idea dak printf kien. 1055 00:57:07,000 --> 00:57:12,000 Bl-istess mod, jekk I ma jimportaw l-DivisionsViewController 1056 00:57:12,000 --> 00:57:16,000 l-kumpilatur verament għandha l-ebda idea x'inhi DivisionsViewController hu. 1057 00:57:16,000 --> 00:57:19,000 Just kun żgur li ġewwa tal-fajls tiegħek m differenti. Inti tagħmel ċert li l-importazzjoni 1058 00:57:19,000 --> 00:57:25,000 il-fajls h korrispondenti. hekk li l-kumpilatur jaf x'inhu għaddej. 1059 00:57:25,000 --> 00:57:31,000 >> Fl-aħħarnett, liema Apple finalment ma huwa juri xi data bl-użu ħsieb web, 1060 00:57:31,000 --> 00:57:35,000 u għalhekk ħsieb web huwa oġġett fejn inti tista ssodata 1061 00:57:35,000 --> 00:57:37,000 web browser ftit ġewwa ta 'app tiegħek. 1062 00:57:37,000 --> 00:57:40,000 Kull ma trid tagħmel hu li jipprovdu URL għall-web browser tiegħek, 1063 00:57:40,000 --> 00:57:43,000 so I tixtieq tmur mlb.mlb.com, 1064 00:57:43,000 --> 00:57:46,000 u dan huwa kif nista 'aċċess għall-home page għal kull tim, 1065 00:57:46,000 --> 00:57:49,000 u hekk billi tgħaddi f'dan URL 1066 00:57:49,000 --> 00:57:52,000 l-opinjoni tal-web tista display dan għalija, u jien jistgħu jibbrawżjaw madwar, 1067 00:57:52,000 --> 00:58:01,000 u simulatur huwa użu minn dik wieħed. 1068 00:58:01,000 --> 00:58:03,000 Issa dan ġew minn plist tiegħi. 1069 00:58:03,000 --> 00:58:07,000 Jekk I ikklikkja dan dan ukoll ġie minn plist tiegħi, u dan jiżżerżqu ġiet trattata 1070 00:58:07,000 --> 00:58:09,000 billi tiddefinixxi dawk l-segues. 1071 00:58:09,000 --> 00:58:12,000 I ikklikkja dan u wieħed aktar, 1072 00:58:12,000 --> 00:58:15,000 u issa hawnhekk hija UIWebView tiegħi, hekk biss bħal dik 1073 00:58:15,000 --> 00:58:19,000 hawn l-websajt għall-URL li jien biss integrati, 1074 00:58:19,000 --> 00:58:21,000 u jien ma jkollhom biex jimmaniġġaw xejn crazy. 1075 00:58:21,000 --> 00:58:24,000 Dan huwa kif juru web page. 1076 00:58:24,000 --> 00:58:27,000 Affarijiet bħal din il-buttuna back hawnhekk huma wkoll mogħtija lili 1077 00:58:27,000 --> 00:58:33,000 totalment b'xejn għaliex stajt definiti dawn ir-relazzjonijiet permezz segues. 1078 00:58:33,000 --> 00:58:37,000 >> Kwalunkwe mistoqsijiet? Yeah. 1079 00:58:37,000 --> 00:58:40,000 [Student] Mela meta tuża alloc, int qatt ma jkollhom xejn b'xejn? 1080 00:58:40,000 --> 00:58:43,000 Eżattament, meta inti sejħa alloc u Iniz inti ma għandekx biex ħielsa minnha. 1081 00:58:43,000 --> 00:58:46,000 IOS se jimmaniġġjaw kollha ta 'dik għalik. 1082 00:58:46,000 --> 00:58:51,000 Huwa wunderbare, u int ma jiksru xi regoli. Yeah. 1083 00:58:51,000 --> 00:58:54,000 [Student] Jekk ġejt biex tinkludi timijiet aktar li jistgħu jaqblu fuq l-iskrin, 1084 00:58:54,000 --> 00:58:58,000 kien awtomatikament jkollhom għażla scroll, jew li xi ħaġa li għandek bżonn li jiżdiedu? 1085 00:58:58,000 --> 00:59:01,000 Eżattament, jekk kelli timijiet aktar, per eżempju, ikun awtomatikament jimmaniġġaw 1086 00:59:01,000 --> 00:59:04,000 il scrolling għalija, u l-preokkupazzjonijiet tal-prestazzjoni 1087 00:59:04,000 --> 00:59:08,000 it-tabella enormi huma wkoll trattati totalment għalija. 1088 00:59:08,000 --> 00:59:11,000 >> Mistoqsijiet oħra? 1089 00:59:11,000 --> 00:59:13,000 Kollha ta 'dan il-kodiċi se jiġu stazzjonati. 1090 00:59:13,000 --> 00:59:16,000 Aħna tip ta glossed fuq xi ftit tad-dettalji aktar minuri, 1091 00:59:16,000 --> 00:59:19,000 imma affarijiet simili jiġu stabbiliti xi proprjetajiet għall-opinjoni tal-web 1092 00:59:19,000 --> 00:59:22,000 huma biss affarijiet li tista 'tikseb mill browsing-dokumentazzjoni Apple, 1093 00:59:22,000 --> 00:59:24,000 li huwa tassew, tassew nicely stabbiliti. 1094 00:59:24,000 --> 00:59:27,000 Huma għandhom ħafna ta 'apps kampjun u eżempju użanzi 1095 00:59:27,000 --> 00:59:34,000 ta 'APIs differenti, hekk definittivament jaqraw b'attenzjoni dawk jekk tista'. 1096 00:59:34,000 --> 00:59:36,000 Just xi links utli inti tista 'tixtieq li tagħti ħarsa lejn. 1097 00:59:36,000 --> 00:59:38,000 Dawn huma xi gwidi dokumentazzjoni handy. 1098 00:59:38,000 --> 00:59:41,000 Il-URLs huma enormi, tant li qed jitqassar. 1099 00:59:41,000 --> 00:59:44,000 Dan ewwel waħda hija l-librerija sħiħa ta 'dokumentazzjoni. 1100 00:59:44,000 --> 00:59:46,000 Hemm bars tiftix ftit, hekk jekk inti tibda buttuna ittajpjar 1101 00:59:46,000 --> 00:59:50,000 se jibda jagħtik l-informazzjoni kollha dwar l-affarijiet li tista 'tagħmel ma' buttuna. 1102 00:59:50,000 --> 00:59:53,000 Stajt inklużi wkoll il-Mejda View Programmazzjoni Gwida. 1103 00:59:53,000 --> 00:59:56,000 Hija mankijiet fehmiet tal-mejda fid-dettall ħafna aktar, 1104 00:59:56,000 --> 01:00:00,000 kif tagħmel affarijiet simili dinamikament żid ċelloli jew ċelloli jeditjaw jew tneħħihom. 1105 01:00:00,000 --> 01:00:02,000 >> Hemm lottijiet ta 'apps kampjun minn Apple li se juri kif għandek tagħmel dan, 1106 01:00:02,000 --> 01:00:05,000 u finalment, dan l-aħħar wieħed huwa l-Linji Gwida Interface tal-Bniedem, 1107 01:00:05,000 --> 01:00:09,000 u dan huwa bażikament xi diskussjoni ta 'komponenti UI, 1108 01:00:09,000 --> 01:00:12,000 affarijiet simili ma jagħmlux buttuna li l-4 pixels minn 4 pixels. 1109 01:00:12,000 --> 01:00:15,000 Li l-idea ħażina, u affarijiet oħra li Apple trid inti tagħmel 1110 01:00:15,000 --> 01:00:18,000 biex jinkoraġġixxu d-disinn tajjeb. 1111 01:00:18,000 --> 01:00:23,000 >> Kwalunkwe mistoqsijiet aħħar qabel we finish up? 1112 01:00:23,000 --> 01:00:27,000 Kull dritt, definittivament tħossok liberu li we're-ser ikollhom tikketti speċjali fuq Iddiskuti. 1113 01:00:27,000 --> 01:00:30,000 Aħna ser ikollhom IOS waħda, hekk definittivament tħossok liberu li tutilizza din. 1114 01:00:30,000 --> 01:00:34,000 Jekk inti tixtieq taħdem mal-klassi tiegħek fuq proġetti 1115 01:00:34,000 --> 01:00:37,000 jew għajnuna figura xi Jittieħed IOS każwali 1116 01:00:37,000 --> 01:00:40,000 tħossok liberu li email me, u definittivament jaf l-online-kodiċi minħabba li 1117 01:00:40,000 --> 01:00:43,000 biss fl-interess ta 'żmien aħna tip ta' glossed fuq l-aktar 1118 01:00:43,000 --> 01:00:45,000 ifjen dettalji qamħa medja ta 'affarijiet. 1119 01:00:45,000 --> 01:00:47,000 Imma jekk le, allura Xorti tajba fuq proġetti IOS tiegħek, u nispera li għandna 1120 01:00:47,000 --> 01:00:53,000 influss kbir ta 'apps fil-Aħżen App. 1121 01:00:53,000 --> 01:00:56,000 [CS50.TV]