1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [Semina] [iOS: Uandishi Apps Kama Boss] 2 00:00:02,000 --> 00:00:04,000 [Tommy MacWilliam] [Chuo Kikuu cha Harvard] 3 00:00:04,000 --> 00:00:08,000 [Hii ni CS50.] [CS50.TV] 4 00:00:08,000 --> 00:00:12,000 >> Haki zote, kila mtu, kuwakaribisha kwa iOS: Uandishi Apps kama Boss. 5 00:00:12,000 --> 00:00:16,000 Semina hii ni kwenda kuzingatia kuandika programu kwa iPhone 6 00:00:16,000 --> 00:00:19,000 na kwa upande kuandika programu kwa iPad, na hivyo sisi ni kimsingi ya kwenda kutembea kwa njia ya 7 00:00:19,000 --> 00:00:23,000 wanandoa mbalimbali ya mifano ya jinsi ya kufanya programu, mchezo rahisi kama Tic TAC Toe, 8 00:00:23,000 --> 00:00:26,000 au kama wewe ni zaidi ya nia ya kufanya programu kama aina fulani ya habari msomaji 9 00:00:26,000 --> 00:00:30,000 au kitu ambacho inaingiliana na Internet nami majadiliano kuhusu kuwa vilevile. 10 00:00:30,000 --> 00:00:32,000 Hapa ni ajenda yetu fupi. 11 00:00:32,000 --> 00:00:36,000 >> Programu IOs yameandikwa katika lugha inayoitwa Lengo-C, 12 00:00:36,000 --> 00:00:39,000 na hivyo hii ni kidogo sawa na C lakini si kweli wakati wote, 13 00:00:39,000 --> 00:00:41,000 hivyo tutaweza kuwa na kuzungumza kidogo kuhusu lugha yenyewe 14 00:00:41,000 --> 00:00:45,000 na kisha jinsi ya kujenga Apps iPhone kutumia programu hii ya programu inayoitwa XCode, 15 00:00:45,000 --> 00:00:48,000 ambayo kama si kupakuliwa hivyo bado jisikie huru kuanza shusha sasa. 16 00:00:48,000 --> 00:00:50,000 Ni kadhaa gigabytes. 17 00:00:50,000 --> 00:00:54,000 Ni lazima kuwa huru juu ya Hifadhi App, hivyo itabidi haja ya kuwa na Mac 18 00:00:54,000 --> 00:00:57,000 walau mbio toleo la OS X. 19 00:00:57,000 --> 00:00:59,000 Kama huna, hakuna tatizo. 20 00:00:59,000 --> 00:01:02,000 Tuna Macs katika kituo cha sayansi inapatikana kwa matumizi yako 21 00:01:02,000 --> 00:01:05,000 na XCode imewekwa, na hivyo kujisikia huru kutumia hizo kwa maendeleo. 22 00:01:05,000 --> 00:01:07,000 Kama unataka kufanya App lakini hawana Mac, usijali. 23 00:01:07,000 --> 00:01:09,000 Kuna mengi ya rasilimali ya chuo kwa ajili hiyo. 24 00:01:09,000 --> 00:01:15,000 Na hivyo basi tunakwenda cover 2 mifano kubwa ya programu mbalimbali unaweza kufanya. 25 00:01:15,000 --> 00:01:19,000 Lengo-C ni utaalamu kile kinachoitwa kuweka super ya C. 26 00:01:19,000 --> 00:01:24,000 Hiyo ina maana kwamba yoyote code C pia ni halali Lengo-C code. 27 00:01:24,000 --> 00:01:29,000 Hiyo ina maana kwamba sisi aina ya duct taped juu ya baadhi ya vipengele ziada C. 28 00:01:29,000 --> 00:01:33,000 Baadhi ya makala haya ni pamoja na kutokuwa na milele kuandika malloc tena, kumshukuru Mungu, 29 00:01:33,000 --> 00:01:36,000 hakuna kuwa na wasiwasi kuhusu kuyatumia wale kijinga na kumkomboa yao na mambo ambayo yote 30 00:01:36,000 --> 00:01:40,000 wewe kuchukia kuhusu C, na ni aina ya wamekwenda katika Lengo C-. 31 00:01:40,000 --> 00:01:43,000 >> Sasa, Lengo-C pia ina kiwango kikubwa zaidi maktaba, 32 00:01:43,000 --> 00:01:47,000 hivyo kuna mengi zaidi funktionalitet kupata kwa ajili ya ndani ya bure ya Lengo-C. 33 00:01:47,000 --> 00:01:50,000 Kumbuka wakati tulikuwa kuandika PHP sisi niliona kwamba sisi akaenda kutoka 34 00:01:50,000 --> 00:01:54,000 lugha hii ndogo ya maktaba kubwa ya mambo hayo yote mambo unaweza kufanya. 35 00:01:54,000 --> 00:01:56,000 kitu kimoja kinachotokea katika iOS. 36 00:01:56,000 --> 00:01:59,000 Kuna vitu kwa ajili ya mambo kama kalenda Buddhist, na kwa kweli kitu chochote 37 00:01:59,000 --> 00:02:05,000 unaweza uwezekano kufikiria pengine ipo tayari katika utekelezaji Lengo-C ya. 38 00:02:05,000 --> 00:02:08,000 Lengo la sehemu Lengo-C ni referencing kitu 39 00:02:08,000 --> 00:02:11,000 kuitwa Object-Oriented Programming. 40 00:02:11,000 --> 00:02:14,000 Hii ni aina ya dhana mpya, lakini tumekuwa kweli zaidi ya kujifunza 41 00:02:14,000 --> 00:02:17,000 mengi ya dhana hizi tayari. 42 00:02:17,000 --> 00:02:19,000 Dhana Programming Object-Oriented ni kwamba utaenda kuunda 43 00:02:19,000 --> 00:02:23,000 mengi ya maadili yako karibu mambo haya kuitwa madarasa, 44 00:02:23,000 --> 00:02:26,000 na madarasa haya ni kweli kutukuzwa structs. 45 00:02:26,000 --> 00:02:30,000 Ndani ya struct sisi kimsingi alisema hapa ni kitu, 46 00:02:30,000 --> 00:02:32,000 na jambo hili linaweza kuwa na wanachama. 47 00:02:32,000 --> 00:02:35,000 Kwa mfano, nodi katika orodha wanaohusishwa inaweza kuwa na mambo mengine 48 00:02:35,000 --> 00:02:38,000 kama thamani, pointer nodi ijayo katika orodha, 49 00:02:38,000 --> 00:02:44,000 na pamoja kwamba pointer na kwamba thamani linajumuisha hii mfano mmoja wa struct. 50 00:02:44,000 --> 00:02:47,000 Madarasa ni sawa sana isipokuwa 51 00:02:47,000 --> 00:02:50,000 madarasa wanaweza pia kuwa kazi ndani mwao. 52 00:02:50,000 --> 00:02:54,000 Wakati sisi alitangaza struct, tunaweza kusema tu n int au * nodi ijayo. 53 00:02:54,000 --> 00:02:57,000 >> Sasa na Lengo C-tunaweza kweli kuweka majukumu 54 00:02:57,000 --> 00:02:59,000 ndani ya mambo hayo. 55 00:02:59,000 --> 00:03:03,000 Kitu kingine kwamba unaweza kufanya ni madarasa wanaweza kurithi data kutoka madarasa mengine. 56 00:03:03,000 --> 00:03:07,000 Kwa mfano, tutaweza kuwa na kuangalia rundo la kujengwa katika Lengo-C madarasa. 57 00:03:07,000 --> 00:03:11,000 Mmoja wao inaweza kuwa ya darasa kuwa inawakilisha maoni kwa screen, 58 00:03:11,000 --> 00:03:14,000 na hivyo kwa kusema nataka kutekeleza maoni yangu mwenyewe 59 00:03:14,000 --> 00:03:18,000 sisi kimsingi kusema mtu zaidi ya saa Apple, pengine kweli nice watu, 60 00:03:18,000 --> 00:03:21,000 aliandika darasa hili kwa ajili yangu, na Hushughulikia mambo majishauwo vifungo 61 00:03:21,000 --> 00:03:25,000 au utoaji screen, na sisi itakuwa kweli pained 62 00:03:25,000 --> 00:03:28,000 kutekeleza funktionalitet kwamba wote sisi wenyewe, na hivyo kwa kifupi 63 00:03:28,000 --> 00:03:31,000 kurithi data tunaweza kusema kila kitu kwamba alifanya katika darasa kwamba 64 00:03:31,000 --> 00:03:34,000 Mimi pia nataka ndani ya darasa langu, na kisha mimi naenda kufanya baadhi ya mambo mengine, 65 00:03:34,000 --> 00:03:37,000 yaani kutekeleza programu. 66 00:03:37,000 --> 00:03:40,000 Hiyo ni nini kuwa urithi maana ya neno. Tutaweza kuona mfano halisi zaidi. 67 00:03:40,000 --> 00:03:42,000 >> Na hatimaye, muhimu kwa Programming Object-Oriented ni kwamba 68 00:03:42,000 --> 00:03:45,000 inaongoza kwa encapsulation data. 69 00:03:45,000 --> 00:03:48,000 Katika baadhi ya tatizo letu sisi inaweza kuwa na seti hizi kubwa, vigezo kimataifa 70 00:03:48,000 --> 00:03:51,000 na globals kila mahali, na kwamba ni jinsi gani tunatarajia kuweka wimbo wa taifa. 71 00:03:51,000 --> 00:03:55,000 Pamoja na madarasa tunaweza kuanza encapsulating habari ndani ya kifaa. 72 00:03:55,000 --> 00:03:58,000 Kama tuna moja screen programu yetu, sisi si kweli haja ya kuwa na data yoyote kutoka 73 00:03:58,000 --> 00:04:01,000 mwingine screen katika ndani ya programu yetu ya kwamba, 74 00:04:01,000 --> 00:04:04,000 na hivyo kwa encapsulating mambo ndani ya madarasa kweli hii husababisha 75 00:04:04,000 --> 00:04:08,000 kwa kubuni bora zaidi kificho, na hii inawezekana kwa baadhi ya makala za ziada 76 00:04:08,000 --> 00:04:11,000 Lengo la C-. 77 00:04:11,000 --> 00:04:15,000 Forewarning, syntax kwa Lengo-C ni ndizi. 78 00:04:15,000 --> 00:04:19,000 Ni kama kitu tumekuwa kuona mbele, 79 00:04:19,000 --> 00:04:22,000 hivyo ni kidogo kidogo ya kujifunza Curve kupata kutumika kwa 80 00:04:22,000 --> 00:04:24,000 nini heck maana ya hii? 81 00:04:24,000 --> 00:04:27,000 Lakini mara moja kupata zamani kwamba awali kujifunza Curve ni kweli, kweli laini 82 00:04:27,000 --> 00:04:29,000 kuanza kuandika programu. 83 00:04:29,000 --> 00:04:33,000 >> Kutangaza darasa, kusema hapa ni darasa langu, ipo, 84 00:04:33,000 --> 00:04:35,000 na labda hapa ni baadhi ya mambo ambayo mimi nina kwenda kufafanua baadaye, 85 00:04:35,000 --> 00:04:38,000 Mimi nina kwenda kusema @ interface. 86 00:04:38,000 --> 00:04:41,000 Mimi nina kwenda kusema @ interface. Mimi naenda kukupa darasa langu jina. 87 00:04:41,000 --> 00:04:43,000 Na kisha baadaye mahali pengine mimi nina kwenda kusema @ mwisho, 88 00:04:43,000 --> 00:04:46,000 na kila kitu katika kati interface @ na mwisho @ 89 00:04:46,000 --> 00:04:48,000 ni kwenda kuwa darasa langu. 90 00:04:48,000 --> 00:04:51,000 Kwamba ni kwenda kuwa nini ndani ya. Yetu files h. 91 00:04:51,000 --> 00:04:55,000 Tu kama katika C yetu h. Files kimsingi alisema hapa ni baadhi ya mambo ambayo yapo. 92 00:04:55,000 --> 00:04:57,000 Mimi si lazima ninawaambieni wayatendayo bado, 93 00:04:57,000 --> 00:04:59,000 lakini compiler anahitaji kujua kwamba wao kuwepo. 94 00:04:59,000 --> 00:05:04,000 Baadaye ndani ya m wetu. Files-kwa sababu m kwa Lengo-C 95 00:05:04,000 --> 00:05:08,000 ni ambapo sisi ni kweli kwenda kufafanua nini hawa madarasa kufanya. 96 00:05:08,000 --> 00:05:11,000 Kiasi kama. Yetu files c, sisi zinazotolewa utekelezaji kwa ajili ya kazi. 97 00:05:11,000 --> 00:05:15,000 Ndani ya faili wetu. M tunakwenda kusema hapa ni nini wote wa kazi 98 00:05:15,000 --> 00:05:18,000 ndani ya darasa langu-nini wao wote kufanya. 99 00:05:18,000 --> 00:05:22,000 Na hatimaye, ndani ya struct tunaweza kusema ndani ya braces wale curly 100 00:05:22,000 --> 00:05:25,000 int n au nodi * ijayo, 101 00:05:25,000 --> 00:05:28,000 na katika Malengo ya C-tunakwenda kutumia Keyword @ mali, 102 00:05:28,000 --> 00:05:31,000 na hii ni nini kinaendelea kufafanua mali, 103 00:05:31,000 --> 00:05:36,000 au kazi zisizo kuwa ni sehemu ya madarasa yangu. 104 00:05:36,000 --> 00:05:40,000 >> Wito kazi katika Lengo-C ni pia ndizi. 105 00:05:40,000 --> 00:05:43,000 Wakati sisi alitangaza kazi katika C sisi alisema kitu kama int foo 106 00:05:43,000 --> 00:05:46,000 na wazi Paren na kisha akampa orodha ya hoja. 107 00:05:46,000 --> 00:05:51,000 Hii ni nini kutangaza mbinu au utendaji inaonekana kama katika Lengo C-. 108 00:05:51,000 --> 00:05:54,000 Kama mimi nataka kutangaza kazi au njia 109 00:05:54,000 --> 00:05:58,000 ambapo mimi kusema mbinu ni kweli tu kazi hiyo ni mwanachama wa darasa, 110 00:05:58,000 --> 00:06:01,000 hivyo aina ya kubadilishana, lakini si kweli, 111 00:06:01,000 --> 00:06:03,000 hivyo ndani ya njia yangu mimi wanataka kujenga njia mpya. 112 00:06:03,000 --> 00:06:06,000 Ni kwenda na kurudi kitu, hivyo ni kwenda kuwa ya utupu aina. 113 00:06:06,000 --> 00:06:08,000 Hii ni aina ya kurudi kwa kazi yangu. 114 00:06:08,000 --> 00:06:11,000 Sasa tuna parens hapa kwa sababu-sijui. 115 00:06:11,000 --> 00:06:14,000 Next ni kwenda kuwa jina ya kazi yangu, 116 00:06:14,000 --> 00:06:17,000 na kisha hatimaye tuna semicolon tu kama sisi tulikuwa katika C. 117 00:06:17,000 --> 00:06:19,000 Nini mpya hapa ni guy hii hapa. 118 00:06:19,000 --> 00:06:22,000 Hyphen Hii ni kweli ni lazima, na nini hii inasema ni kwamba 119 00:06:22,000 --> 00:06:26,000 njia hii hapa lazima wito kwa mfano wa darasa. 120 00:06:26,000 --> 00:06:29,000 >> Baada ya sisi alitangaza structs yetu sisi pengine alisema kitu kama 121 00:06:29,000 --> 00:06:32,000 struct nodi n, na kwamba aliumba 122 00:06:32,000 --> 00:06:35,000 au instantiated mmoja wa wale structs ili niweze kweli kuanza kufanya kazi 123 00:06:35,000 --> 00:06:38,000 na nini ndani yake, hivyo dash hii ina maana kwamba tuna 124 00:06:38,000 --> 00:06:41,000 instantiate darasa tu like sisi instantiated kwamba struct 125 00:06:41,000 --> 00:06:43,000 kabla tunaweza kuwaita njia hii juu yake. 126 00:06:43,000 --> 00:06:46,000 Kama mimi nataka kuanza kuongeza hoja kwa njia yangu 127 00:06:46,000 --> 00:06:48,000 anapata ndizi hata zaidi. 128 00:06:48,000 --> 00:06:50,000 Hapa ni njia yangu jina. 129 00:06:50,000 --> 00:06:53,000 Kisha mimi naenda kuwa koloni, na baada ya koloni hii inasema hapa inakuja hoja fulani. 130 00:06:53,000 --> 00:06:56,000 Njia hii inachukua moja hoja. 131 00:06:56,000 --> 00:06:59,000 aina ya hoja yake ni int, na jina la hoja kwamba 132 00:06:59,000 --> 00:07:03,000 au variable kwamba mimi nina kwenda kuanza kutumia ndani ya njia ya inaitwa i. 133 00:07:03,000 --> 00:07:05,000 Tena, hii ni mbinu. Inachukua moja hoja. 134 00:07:05,000 --> 00:07:10,000 >> Kama unataka kuanza kuongeza hoja zaidi ni anapata ndizi zaidi 135 00:07:10,000 --> 00:07:13,000 kwa kuwa tuna hii koloni kwamba anasema hapa inakuja orodha yangu ya hoja. 136 00:07:13,000 --> 00:07:15,000 Hoja hii ya kwanza ni integer. 137 00:07:15,000 --> 00:07:17,000 Sasa, hoja hii ya pili ni ya kuvutia. 138 00:07:17,000 --> 00:07:20,000 variable kwamba mimi nina kwenda kuwa na kutumia ndani ya kazi yangu 139 00:07:20,000 --> 00:07:23,000 inaitwa f, hivyo ndani ya kazi yangu mimi naweza kusema 140 00:07:23,000 --> 00:07:25,000 f + = 1 au kitu. 141 00:07:25,000 --> 00:07:30,000 Hii kitu hapa kimsingi ni muhimu kwa kuwa hoja au parameter. 142 00:07:30,000 --> 00:07:34,000 Tu kama sisi alikuwa jozi thamani muhimu na kitu kama JSON au arrays associative 143 00:07:34,000 --> 00:07:37,000 Lengo-C alifanya uamuzi wa kusema, sawa, hivyo tu kwamba ni kweli wazi 144 00:07:37,000 --> 00:07:39,000 wakati wewe piga njia gani vigezo vyote hivi ni 145 00:07:39,000 --> 00:07:41,000 Mimi nina kweli kwenda jina yao yote. 146 00:07:41,000 --> 00:07:45,000 Wakati wewe piga njia, itabidi kweli kusema andFloat, 147 00:07:45,000 --> 00:07:47,000 na kisha utasikia kupita in 148 00:07:47,000 --> 00:07:50,000 >> Inafurahisha, moja hii si jina lake, lakini yote ya vigezo vingine ni, 149 00:07:50,000 --> 00:07:53,000 hivyo kama sisi alikuwa hoja 3 mimi naweza kusema andFloat 150 00:07:53,000 --> 00:07:56,000 na mwingine kuelea na kadhalika. 151 00:07:56,000 --> 00:08:01,000 Wakati mimi kuwaita njia hizi ni ya ndizi shaka, 152 00:08:01,000 --> 00:08:04,000 hivyo kama nina kitu, na mimi defined njia iitwayo foo, 153 00:08:04,000 --> 00:08:09,000 na mimi nataka simu yake, badala ya kusema foo wazi / parens karibu 154 00:08:09,000 --> 00:08:11,000 Mimi naenda kufungua bracket. 155 00:08:11,000 --> 00:08:13,000 Hapa ni jina la njia yangu. 156 00:08:13,000 --> 00:08:17,000 Mimi naenda kuifunga bracket, na hii ni kitu mimi nina wito juu. 157 00:08:17,000 --> 00:08:20,000 Kumbuka, aina ya mbinu hizi zipo ndani ya madarasa 158 00:08:20,000 --> 00:08:23,000 kwa sababu madarasa unaweza kuwa mbinu defined ndani mwao. 159 00:08:23,000 --> 00:08:26,000 >> Hapa nimepata kiholela umba kitu cha darasa baadhi, 160 00:08:26,000 --> 00:08:28,000 na hii ni syntax kwa kufanya hivyo. 161 00:08:28,000 --> 00:08:31,000 Kuna 2 hatua ya kujenga kitu. 162 00:08:31,000 --> 00:08:34,000 Hatua ya kwanza ni kusema nataka kutenga nafasi. 163 00:08:34,000 --> 00:08:37,000 Hii ni sawa malloc. Hatuna kusema malloc tena. 164 00:08:37,000 --> 00:08:42,000 Sisi imeshuka m, alifanya hivyo alloc, na badala c. Kwa. M. 165 00:08:42,000 --> 00:08:47,000 Baada ya sisi kitu alloc sisi basi haja initialize yake. 166 00:08:47,000 --> 00:08:49,000 Kimsingi wakati wewe kuunda vitu unaweza kutaka kuwa na baadhi ya mantiki 167 00:08:49,000 --> 00:08:53,000 kwamba executes wakati wao ni umba, hivyo unaweza kupita katika maadili baadhi default 168 00:08:53,000 --> 00:08:57,000 au kitu kama hicho, na hivyo njia hii init ni nini hasa inajenga kitu. 169 00:08:57,000 --> 00:08:59,000 Sisi kwanza kutenga nafasi, kama tulivyofanya katika C, 170 00:08:59,000 --> 00:09:04,000 na kisha sisi initialize hayo, ambayo wanaweza au kufanya mengi nzima. 171 00:09:04,000 --> 00:09:07,000 Kisha sisi ni kurudi jambo hili katika o kitu. 172 00:09:07,000 --> 00:09:09,000 Kuna nyota hapa kwa sababu hii ni kitaalam pointer, 173 00:09:09,000 --> 00:09:12,000 lakini usijali, kuyatumia ni kwamba kubwa katika mpango Lengo C-tena. 174 00:09:12,000 --> 00:09:15,000 >> Sasa tumekuwa instantiated darasa hili aitwaye NSObject, 175 00:09:15,000 --> 00:09:19,000 na hii ni darasa random kwamba Apple ina. 176 00:09:19,000 --> 00:09:22,000 Tumekuwa instantiated hii, na sasa nina mfano wa darasa hili 177 00:09:22,000 --> 00:09:25,000 katika hii o kitu, hivyo kwamba maana ya kwamba kama mimi defined 178 00:09:25,000 --> 00:09:29,000 mbinu hizi mimi naweza kuwaita kama hii. 179 00:09:29,000 --> 00:09:31,000 Vile vile, kama mimi alitaka kuwaita mbinu na hoja moja, 180 00:09:31,000 --> 00:09:34,000 hivyo hii ni njia bar, kwamba inachukua moja hoja, 181 00:09:34,000 --> 00:09:38,000 na hapa ni bazi: qux mbinu, hivyo hii inachukua hoja 2. 182 00:09:38,000 --> 00:09:44,000 Hii ni wito moja kazi juu ya hii kitu o. 183 00:09:44,000 --> 00:09:46,000 Mantiki? 184 00:09:46,000 --> 00:09:50,000 syntax lazima mantiki, lakini wewe aina ya kupata kutumika yake. 185 00:09:50,000 --> 00:09:54,000 >> Sawa, hebu majadiliano juu ya mambo machache ambayo ni kujengwa katika Lengo-C 186 00:09:54,000 --> 00:09:56,000 kwamba walikuwa sio lazima kujengwa ndani ya C. 187 00:09:56,000 --> 00:09:59,000 Katika C sisi aina ya alipaswa kushughulika na masharti kama arrays haya kijinga tabia, 188 00:09:59,000 --> 00:10:01,000 na got kweli annoying. 189 00:10:01,000 --> 00:10:04,000 Lengo-C ana wale wote kujengwa katika kwa ajili yetu, na ni kujengwa katika 190 00:10:04,000 --> 00:10:06,000 kutumia darasa aitwaye NSString. 191 00:10:06,000 --> 00:10:10,000 Wakati mimi wanataka kujenga NSString tuna zaidi arcane syntax. 192 00:10:10,000 --> 00:10:15,000 Badala ya kusema "cs50" tunasema @ "cs50" 193 00:10:15,000 --> 00:10:17,000 na hii ni kwa ajili ya kutangaza syntax masharti katika Lengo C-. 194 00:10:17,000 --> 00:10:21,000 Hii ni rahisi sana kusahau, hivyo hawana. 195 00:10:21,000 --> 00:10:24,000 Sasa, mara moja nina hii, hii ni kamba, lakini taarifa 196 00:10:24,000 --> 00:10:26,000 ni kweli tu kitu. 197 00:10:26,000 --> 00:10:30,000 Mimi alisema NSString, ambayo ina maana mimi instantiated darasa 198 00:10:30,000 --> 00:10:32,000 kuitwa NSString, ambayo mtu mwingine aliandika kwa ajili yangu, 199 00:10:32,000 --> 00:10:35,000 na walikuwa nzuri sana kuhusu hilo, na hivyo kwa sasa 200 00:10:35,000 --> 00:10:37,000 Naweza kuanza wito mbinu juu yake. 201 00:10:37,000 --> 00:10:40,000 Kama mimi wito urefu njia hii ya kitu 202 00:10:40,000 --> 00:10:43,000 itakavyo kurudi kwangu urefu wa kamba. 203 00:10:43,000 --> 00:10:45,000 Hii ni kama tu strlen katika C. 204 00:10:45,000 --> 00:10:47,000 Hii atarudi 4. 205 00:10:47,000 --> 00:10:51,000 >> Vilevile, njia nyingine mimi kutaka huduma ya juu ni hii characterAtIndex. 206 00:10:51,000 --> 00:10:54,000 Hii ni njia ya kuwa anasema juu ya hii s string 207 00:10:54,000 --> 00:10:57,000 Mimi nataka wewe kupata tabia 0, 208 00:10:57,000 --> 00:10:59,000 na hivyo hii atarudi kwangu c tabia, 209 00:10:59,000 --> 00:11:02,000 na kuna rundo zima zaidi ya njia hizi kuwa unaweza Google kweli urahisi. 210 00:11:02,000 --> 00:11:07,000 Nyaraka Apple ni kubwa, na tutaweza kuchukua kuangalia kwamba katika kidogo. 211 00:11:07,000 --> 00:11:09,000 Wale ni masharti. 212 00:11:09,000 --> 00:11:11,000 Sisi pia kutofautiana ukubwa arrays kujengwa in 213 00:11:11,000 --> 00:11:13,000 Kumbuka katika C wakati sisi alitangaza safu 214 00:11:13,000 --> 00:11:16,000 tulikuwa na kusema kuwa mambo 5, mwisho wa hadithi. 215 00:11:16,000 --> 00:11:18,000 Tulipofika JavaScript na PHP tunaweza kuanza 216 00:11:18,000 --> 00:11:20,000 kufanya mambo kama vile kuongeza vipengele au kusonga vipengele. 217 00:11:20,000 --> 00:11:22,000 Tunaweza kufanya hivyo katika Lengo C-. 218 00:11:22,000 --> 00:11:26,000 Badala ya kujenga safu katika njia ya kawaida C 219 00:11:26,000 --> 00:11:30,000 tuna tena darasa lingine kuitwa NSMutableArray. 220 00:11:30,000 --> 00:11:33,000 Kuna pia NSArray, 221 00:11:33,000 --> 00:11:35,000 na hii ni kwenda kimsingi kurejelea baadhi safu. 222 00:11:35,000 --> 00:11:38,000 Hii inasema jambo la kwanza nataka kufanya ni nataka kutenga 223 00:11:38,000 --> 00:11:41,000 nafasi kwa ajili ya safu mpya, na baada ya mimi kuipa 224 00:11:41,000 --> 00:11:43,000 Mimi basi haja initialize yake. 225 00:11:43,000 --> 00:11:45,000 Tena, tu wito njia hizi 2. 226 00:11:45,000 --> 00:11:48,000 Sasa hii ina maana kwamba ndani ya kitu hicho katika 227 00:11:48,000 --> 00:11:50,000 Mimi safu tupu ameketi hapo. 228 00:11:50,000 --> 00:11:54,000 Kama mimi nataka kuongeza kitu na safu hii, siwezi kuwaita njia addObject. 229 00:11:54,000 --> 00:11:59,000 Nataka kuongeza kitu kwa safu, na mimi nataka kuongeza string CS50. 230 00:11:59,000 --> 00:12:02,000 Kama nilitaka kinyume chake kuondoa kwamba naweza kusema mimi nataka 231 00:12:02,000 --> 00:12:09,000 kuondoa kitu katika nafasi ya kwanza katika safu au kupinga. 232 00:12:09,000 --> 00:12:11,000 >> Mantiki? 233 00:12:11,000 --> 00:12:14,000 Sawa, wewe aina ya kupata kutumika jambo hili Mabano ya mraba. 234 00:12:14,000 --> 00:12:18,000 Kwa njia, ndani ya mengi ya maktaba Apple utaona hii NS. 235 00:12:18,000 --> 00:12:21,000 NS kweli anasimama kwa hatua ya pili, ambayo ilikuwa moja ya Steve Jobs makampuni ya kwanza, 236 00:12:21,000 --> 00:12:24,000 na hiyo ambapo yeye kweli kuanza kuandika mengi ya maadili ya 237 00:12:24,000 --> 00:12:27,000 kama aina ya msingi kwa ajili ya Mac OS X na aina ya mambo mengine, 238 00:12:27,000 --> 00:12:32,000 na hivyo NS hii ni aina ya urithi hii nice kuita moja ya makampuni ya mapema 239 00:12:32,000 --> 00:12:34,000 nyuma wakati Apple mara ya kwanza kuanzia nje. 240 00:12:34,000 --> 00:12:36,000 Ni kila mahali. 241 00:12:36,000 --> 00:12:41,000 Hebu tuangalie mfano zaidi ya kiujumla Lengo-C. 242 00:12:41,000 --> 00:12:44,000 Mimi hapa ndani ya XCode. 243 00:12:44,000 --> 00:12:47,000 Ili kupata hapa, mimi kwanza kupakuliwa XCode kutoka Hifadhi App, 244 00:12:47,000 --> 00:12:50,000 kufunguliwa it up, na kisha nilikwenda hapa na faili, 245 00:12:50,000 --> 00:12:54,000 zaidi ya hapa na mradi mpya, na kisha. 246 00:12:54,000 --> 00:12:57,000 Baada ya mimi kufanya hivyo nina hizi chaguzi zote za kile wanataka kujenga, 247 00:12:57,000 --> 00:12:59,000 na hivyo tutaweza kuchukua kuangalia chaguzi hizi baadaye, 248 00:12:59,000 --> 00:13:03,000 lakini tu kwa mfano huu, kwa sababu sisi siyo kweli kwenda una programu bado, 249 00:13:03,000 --> 00:13:06,000 Nimeshuka hapa, na mimi alisema amri Line Chombo, 250 00:13:06,000 --> 00:13:09,000 na hii ni programu ambayo ningeweza kukimbia katika mstari amri 251 00:13:09,000 --> 00:13:12,000 tu kama tumekuwa mbio kutoka C. 252 00:13:12,000 --> 00:13:16,000 Hayo ni jinsi mimi umba mradi huu, na hivyo sasa niko hapa, 253 00:13:16,000 --> 00:13:20,000 hivyo hebu kwanza kuangalia faili hili, na hii lazima kuangalia pretty familiar. 254 00:13:20,000 --> 00:13:24,000 Nina jina int. Kuna rafiki yangu argc, rafiki yangu nyingine argv. 255 00:13:24,000 --> 00:13:30,000 Na hivyo tunaweza kuona kwamba hii ni hatua ya kuingia kwa ajili ya maombi yangu ya kwanza Lengo-C. 256 00:13:30,000 --> 00:13:32,000 Hapa tunaweza kupuuza hii kwa sasa. 257 00:13:32,000 --> 00:13:35,000 Hii ni kimsingi baadhi usimamizi kumbukumbu stuff kwamba wewe si kweli 258 00:13:35,000 --> 00:13:37,000 umewahi kuwa na wasiwasi juu. 259 00:13:37,000 --> 00:13:39,000 >> Hebu tuangalie block hii ya kwanza hapa. 260 00:13:39,000 --> 00:13:46,000 Hii mstari wa kwanza, kama mimi kusema Mwanafunzi * alice = [[Mwanafunzi alloc] init] nini kwamba kufanya? 261 00:13:46,000 --> 00:13:50,000 Hii mwanafunzi kwanza hapa, hii pengine ni darasa. 262 00:13:50,000 --> 00:13:54,000 Hii si darasa kwamba Apple aliandika, lakini ni darasa kwamba mimi aliandika. 263 00:13:54,000 --> 00:13:57,000 Jambo la kwanza nataka kufanya ni nataka kutenga nafasi kwa mwanafunzi mpya, 264 00:13:57,000 --> 00:14:00,000 na kisha Mimi nataka initialize hivyo, hivyo hii inatoa mimi nyuma 265 00:14:00,000 --> 00:14:05,000 hii mpya mwanafunzi kitu, na mimi nina hifadhi hii katika variable kuitwa Alice. 266 00:14:05,000 --> 00:14:07,000 Wapi darasa kwamba kuja kutoka? 267 00:14:07,000 --> 00:14:12,000 Naam, zaidi ya hapa upande wa kushoto haya yote ni ya files mbalimbali ndani ya mradi wangu. 268 00:14:12,000 --> 00:14:16,000 Tunaweza kuona hapa nina Student.h na Student.m. 269 00:14:16,000 --> 00:14:20,000 H. SVG, kumbuka, ni pale ambapo mimi kutangaza mambo yote 270 00:14:20,000 --> 00:14:22,000 kwamba zipo ndani ya darasa. 271 00:14:22,000 --> 00:14:25,000 >> Hebu tuangalie kwamba. 272 00:14:25,000 --> 00:14:29,000 Haki zote, hapa tuna hii interface @, na hii anasema kuwa inakuja 273 00:14:29,000 --> 00:14:33,000 maazimio ya kila kitu kile kitakacho kuwepo ndani ya darasa langu. 274 00:14:33,000 --> 00:14:36,000 Basi nina koloni. Basi nina jambo hili NSObject. 275 00:14:36,000 --> 00:14:40,000 Koloni hii kunaashiria kwamba kidogo urithi sisi walikuwa wakijadili kidogo mapema. 276 00:14:40,000 --> 00:14:43,000 Hii anasema kila kitu NSObject wanaweza kufanya 277 00:14:43,000 --> 00:14:46,000 ambapo NSObject ni darasa hili iliyoandikwa na mtu mwingine, 278 00:14:46,000 --> 00:14:50,000 kila kitu NSObject hii inaweza kufanya mimi nataka kuwa na uwezo wa kufanya hivyo. 279 00:14:50,000 --> 00:14:54,000 Kwa kusema: NSObject hiyo ina maana kwamba mimi kimsingi 280 00:14:54,000 --> 00:14:58,000 kurithiwa yote ya utendaji wa darasa lingine. 281 00:14:58,000 --> 00:15:02,000 Kwamba kwa kweli alinipa rundo zima la njia tofauti na mali kwamba naweza kutumia. 282 00:15:02,000 --> 00:15:05,000 Chini hapa nina kujenga tabia ya 2. 283 00:15:05,000 --> 00:15:08,000 Hiyo ina maana mwanafunzi wangu, kama hii walikuwa struct, haya itakuwa mambo 2 284 00:15:08,000 --> 00:15:11,000 ndani ya struct yangu, hivyo kila mwanafunzi ana jina 285 00:15:11,000 --> 00:15:14,000 kwamba ni kamba, na mwanafunzi pia ina daraja, 286 00:15:14,000 --> 00:15:17,000 ambayo ni int. 287 00:15:17,000 --> 00:15:23,000 >> Hatimaye, chini hapa mimi nina kwenda kujenga mbinu kwa ajili ya mwanafunzi wangu. 288 00:15:23,000 --> 00:15:26,000 Mimi kuitwa njia yangu, initWithName, na inachukua moja hoja, 289 00:15:26,000 --> 00:15:31,000 na hoja kuwa ni kamba, na mimi kuitwa ni jina. 290 00:15:31,000 --> 00:15:35,000 Sasa hebu tuangalie jinsi sisi kweli kutekelezwa darasa hili. 291 00:15:35,000 --> 00:15:38,000 Hapa, sasa mimi nina ndani ya. Yangu faili m, 292 00:15:38,000 --> 00:15:40,000 m kwa ajili ya utekelezaji, mimi nadhani. 293 00:15:40,000 --> 00:15:44,000 Nina utekelezaji wangu, mwisho wangu, na hapa ni mahali ambapo Mimi kwa kweli kufafanua 294 00:15:44,000 --> 00:15:47,000 nini initWithName gani. 295 00:15:47,000 --> 00:15:50,000 Nina initWithName, jina la parameter yangu, na kisha hii 296 00:15:50,000 --> 00:15:53,000 ni ambapo Mimi kwa kweli kujenga mwanafunzi, 297 00:15:53,000 --> 00:15:56,000 na hivyo hii ni kidogo cryptic, lakini hii ni aina ya boilerplate 298 00:15:56,000 --> 00:15:58,000 kwamba unataka pamoja katika constructors yako. 299 00:15:58,000 --> 00:16:02,000 Hii kazi initialization hapa, initWithName, ni aina ya kuujenga. 300 00:16:02,000 --> 00:16:05,000 Wewe kimsingi ujenzi mpya mwanafunzi kitu 301 00:16:05,000 --> 00:16:07,000 na labda kupeleka baadhi ya data ndani yake. 302 00:16:07,000 --> 00:16:11,000 Jambo la kwanza nataka kufanya ni nataka kuita init juu ya jambo hili super. 303 00:16:11,000 --> 00:16:15,000 >> Kumbuka kwamba wakati mimi alisema nyuma hapa katika faili h. 304 00:16:15,000 --> 00:16:21,000 kwamba kila kitu NSObject ina mwanafunzi pia ana. 305 00:16:21,000 --> 00:16:24,000 Hiyo ina maana wakati mimi kujenga mwanafunzi kile Mimi pia haja ya kufanya ni 306 00:16:24,000 --> 00:16:28,000 kuhakikisha kwamba NSObject kwamba mimi nina kurithi yote ya data kwamba kutoka 307 00:16:28,000 --> 00:16:32,000 pia initialized vizuri. 308 00:16:32,000 --> 00:16:36,000 Nini nahitaji kusema ni hii super ni kweli kwenda kwa kutaja darasa mzazi 309 00:16:36,000 --> 00:16:39,000 kwamba mimi nina kurithi kutoka, hivyo mimi nataka kuhakikisha mimi initialize 310 00:16:39,000 --> 00:16:43,000 kila kitu kwamba mimi nina kutegemea kabla mimi kuanza kujaribu kuitumia. 311 00:16:43,000 --> 00:16:46,000 Kisha kama kwamba initialized usahihi hii ni kama kusema iwapo malloc 312 00:16:46,000 --> 00:16:50,000 hakurudi null kisha naweza kuanza kuweka baadhi ya mali. 313 00:16:50,000 --> 00:16:54,000 >> Katika JavaScript na PHP tulikuwa Keyword hii inaitwa hii, 314 00:16:54,000 --> 00:16:58,000 na hii inajulikana mfano wa sasa wa darasa. 315 00:16:58,000 --> 00:17:00,000 Katika Lengo C-sisi wito huu wa kujitegemea. 316 00:17:00,000 --> 00:17:04,000 Wakati mimi kusema self.name, hiyo ina maana kwamba kitu 317 00:17:04,000 --> 00:17:07,000 Mimi tu umba wakati mimi alisema mwanafunzi alloc init, 318 00:17:07,000 --> 00:17:09,000 ambayo inaenda nipe nyuma kitu. 319 00:17:09,000 --> 00:17:12,000 Hiyo ina maana Mimi nataka kuweka jina la kitu kwamba 320 00:17:12,000 --> 00:17:15,000 kwa chochote mimi kupita tu in 321 00:17:15,000 --> 00:17:18,000 Tu kama katika C, sisi kupata wanachama na dot hii, 322 00:17:18,000 --> 00:17:21,000 hivyo self.name anasema jina la kitu mwanafunzi 323 00:17:21,000 --> 00:17:24,000 sasa ni kwenda kuwa chochote kupita tu in 324 00:17:24,000 --> 00:17:28,000 Na hivyo hatimaye, siwezi kurudi hivyo mimi kwa kweli kupata kitu nyuma. 325 00:17:28,000 --> 00:17:30,000 >> Maswali? 326 00:17:30,000 --> 00:17:34,000 Sawa, hivyo binafsi hii = super init, 327 00:17:34,000 --> 00:17:37,000 kama huna kabisa kuelewa mambo urithi usijali. 328 00:17:37,000 --> 00:17:40,000 Tu kujua kwamba kama wewe milele unataka kufanya init yako mwenyewe mbinu tu 329 00:17:40,000 --> 00:17:42,000 kufanya hivyo, na wewe utakuwa vizuri kwenda. 330 00:17:42,000 --> 00:17:44,000 Yeah >> [Mwanafunzi]. Gani ikiwa binafsi maana? 331 00:17:44,000 --> 00:17:49,000 Hii ina maana wakati sisi malloc kitu sisi daima checked kama ilikuwa sawa kwa null, 332 00:17:49,000 --> 00:17:51,000 na kama ilikuwa null, basi sisi exited. 333 00:17:51,000 --> 00:17:55,000 Hii ni kitu kimoja, kwa sababu kama hii null anarudi, basi tuko pengine anaenda kosa seg 334 00:17:55,000 --> 00:17:57,000 kama tunataka kuanza kujaribu kuendesha hiyo. 335 00:17:57,000 --> 00:18:01,000 Hiyo ni mwanafunzi wetu darasa. 336 00:18:01,000 --> 00:18:03,000 Hiyo ina maana tunaweza initialize wanafunzi wetu katika moja ya njia mbili. 337 00:18:03,000 --> 00:18:08,000 Nikisema mwanafunzi alloc init mimi si kutumia mbinu ya kwamba kwamba mimi tu aliandika, 338 00:18:08,000 --> 00:18:11,000 na badala yake naweza tu kusema alice.name, 339 00:18:11,000 --> 00:18:14,000 na sasa mimi naenda kuweka kwamba jina mali. 340 00:18:14,000 --> 00:18:17,000 >> Vile vile, kama mimi nataka kutumia kwamba mbinu initWithName 341 00:18:17,000 --> 00:18:20,000 Naweza tu kusema alloc, na kisha badala ya kusema init 342 00:18:20,000 --> 00:18:24,000 Mimi naenda wito kwamba njia ambayo mimi tu umba, na mimi nina kwenda kupita katika Bob. 343 00:18:24,000 --> 00:18:30,000 Katika hatua hii, hii kitu Bob ina jina sawa na Bob. 344 00:18:30,000 --> 00:18:35,000 Okay, chini hapa mimi nina kutumia kwamba NSMutableArray kwamba sisi inaonekana katika mapema. 345 00:18:35,000 --> 00:18:38,000 Mimi nina kugawa space.Then mimi nina initializing safu mpya. 346 00:18:38,000 --> 00:18:40,000 Mimi nina kwenda kuongeza mambo 2 kwa yake. 347 00:18:40,000 --> 00:18:43,000 Safu hii sasa anashikilia vitu mwanafunzi. 348 00:18:43,000 --> 00:18:46,000 Ona kwamba mahali pa gani mimi kusema hii ni safu ya wanafunzi. 349 00:18:46,000 --> 00:18:48,000 Mimi alisema ni safu, kipindi. 350 00:18:48,000 --> 00:18:50,000 Kisha siwezi kuweka chochote ndani yake kwamba mimi nataka. 351 00:18:50,000 --> 00:18:52,000 Hapa nina vitu 2. 352 00:18:52,000 --> 00:18:56,000 >> Hatimaye, mimi na mwingine kitu hapa, hii TF. 353 00:18:56,000 --> 00:18:59,000 Juu hapa nchini TF.h kimsingi kitu kimoja. 354 00:18:59,000 --> 00:19:01,000 Mimi nina kurithi kutoka NSObject, na kwa njia, 355 00:19:01,000 --> 00:19:03,000 wakati wewe kujenga madarasa hii yote ni kufanyika kwa ajili yenu, 356 00:19:03,000 --> 00:19:06,000 aina hii ya boilerplate interface. 357 00:19:06,000 --> 00:19:08,000 Ni ina mali ya wanafunzi. 358 00:19:08,000 --> 00:19:15,000 Nina mbinu michache hapa kwamba si kweli kufanya mengi nzima, 359 00:19:15,000 --> 00:19:18,000 na hivyo kwamba maana baada ya mimi kuunda hii kitu TF 360 00:19:18,000 --> 00:19:23,000 Siwezi kuwaita hii daraja mbinu juu yake kama hii. 361 00:19:23,000 --> 00:19:26,000 Maswali yoyote juu ya syntax Lengo-C kabla ya kuanza kusonga katika baadhi zaidi 362 00:19:26,000 --> 00:19:30,000 programu ya maendeleo ya kuvutia stuff? 363 00:19:30,000 --> 00:19:34,000 >> Sawa, hivyo hebu kweli kufanya App iPhone. 364 00:19:34,000 --> 00:19:39,000 madarasa ya msingi kwamba wewe utakuwa kutumia ndani ya programu yako iPhone wanaitwa mtazamo controllers, 365 00:19:39,000 --> 00:19:42,000 na mtawala mtazamo kimsingi inawakilisha screen moja 366 00:19:42,000 --> 00:19:46,000 ndani ya programu yako, hivyo kama mimi nina juu ya programu ya muziki, kwa mfano, 367 00:19:46,000 --> 00:19:50,000 moja mtazamo mtawala inaweza kuwakilisha mtazamo ambayo mimi mtazamo nyimbo zote iPhone yangu. 368 00:19:50,000 --> 00:19:53,000 Mwingine mtawala mtazamo inaweza kuwa wakati mimi bonyeza wimbo na kuanza kucheza 369 00:19:53,000 --> 00:19:55,000 au kama mimi nina kuchimba chini katika wasanii. 370 00:19:55,000 --> 00:19:59,000 Kila moja ya skrini wale mbalimbali inaweza kuwakilishwa kama mtawala mbalimbali maoni, 371 00:19:59,000 --> 00:20:04,000 na mtawala maoni ni kweli tu kwamba anasema darasa jinsi screen hii kazi. 372 00:20:04,000 --> 00:20:07,000 Mambo ya ndani ya mtawala mtazamo, tunakwenda kuwa na mali, 373 00:20:07,000 --> 00:20:10,000 hivyo mambo kama button ni kwenda kuwa mali ya maoni mtawala wetu. 374 00:20:10,000 --> 00:20:13,000 >> Sisi ni pia kwenda na mbinu, na hizi ni kimsingi tukio handlers. 375 00:20:13,000 --> 00:20:16,000 Njia hii anasema wakati waandishi button hii 376 00:20:16,000 --> 00:20:19,000 Nataka kufanya kitu, na hatimaye, tena, 377 00:20:19,000 --> 00:20:24,000 sisi ni kwenda kuwa na kutumia hii Keyword binafsi kupata mfano wa sasa. 378 00:20:24,000 --> 00:20:29,000 Kujenga interfaces katika iOS ni kweli kweli, kwa kweli ni rahisi. 379 00:20:29,000 --> 00:20:32,000 Wao wana hii Drag nzuri na interface tone kuitwa Interface Mjenzi, 380 00:20:32,000 --> 00:20:37,000 na 2 ya msingi dhana kwamba waya juu yako Lengo C-kwa Interface Builder 381 00:20:37,000 --> 00:20:40,000 ni IBOutlet na IBAction. 382 00:20:40,000 --> 00:20:44,000 IBOutlet tu anasema kwamba kama wewe kutangaza mali hiyo ni kifungo, 383 00:20:44,000 --> 00:20:47,000 na unataka ndoano it up na kitu katika UI yako halisi, 384 00:20:47,000 --> 00:20:49,000 utaenda kusema ni outlet. 385 00:20:49,000 --> 00:20:51,000 Vile vile, kama unataka kuwakilisha handler tukio 386 00:20:51,000 --> 00:20:54,000 basi wewe ni kwenda kusema ni action. 387 00:20:54,000 --> 00:20:57,000 >> Kwa kweli waya up hii uwakilishi graphical 388 00:20:57,000 --> 00:21:00,000 na code yako ni kweli, kweli rahisi. 389 00:21:00,000 --> 00:21:03,000 Kama unataka ambatisha IBOutlet, wote una kufanya ni wewe kudhibiti click, 390 00:21:03,000 --> 00:21:05,000 na tutaweza kuona mfano wa hii kweli haraka. 391 00:21:05,000 --> 00:21:07,000 You kudhibiti bonyeza ambapo anasema View Mdhibiti. 392 00:21:07,000 --> 00:21:09,000 Utaenda Drag katika interface, au kinyume chake, 393 00:21:09,000 --> 00:21:13,000 kama unataka hook up handler tukio utaenda Drag kutoka interface 394 00:21:13,000 --> 00:21:15,000 katika upande mwingine. 395 00:21:15,000 --> 00:21:20,000 Hebu tuangalie mfano kweli rahisi iOS. 396 00:21:20,000 --> 00:21:23,000 >> Hebu kujenga mradi mpya. 397 00:21:23,000 --> 00:21:25,000 Mimi naenda kuja hapa kwa Maombi, 398 00:21:25,000 --> 00:21:28,000 na mimi naenda bonyeza Single View Maombi. 399 00:21:28,000 --> 00:21:31,000 Mimi naenda bonyeza ijayo. Nitapatia mradi wangu jina. 400 00:21:31,000 --> 00:21:33,000 Mimi nitakuita ni Hello. 401 00:21:33,000 --> 00:21:36,000 Inafurahisha, Apple akubali wewe ni kujenga bidhaa 402 00:21:36,000 --> 00:21:38,000 ili uweze kuuza na wanaweza kupata pesa. 403 00:21:38,000 --> 00:21:41,000 Chini hapa mimi nina kwenda kusema kwamba hii ni App iPhone. 404 00:21:41,000 --> 00:21:44,000 Unaweza kuunda programu iPad, au kama unataka kujenga moja ya programu hizo 405 00:21:44,000 --> 00:21:47,000 kwamba inasaidia vifaa wote unaweza kufanya hivyo pia. 406 00:21:47,000 --> 00:21:49,000 Hizi ni nini unataka checkmarks wako kuangalia kama. 407 00:21:49,000 --> 00:21:51,000 >> Unataka kutumia storyboards, ambayo tutaweza kuona baadaye, 408 00:21:51,000 --> 00:21:54,000 na wewe dhahiri wanataka kutumia moja kwa moja ya kumbukumbu ya kuhesabu, 409 00:21:54,000 --> 00:21:58,000 ambayo ni hulka nzuri kwamba kuzuia kutoka kuwa kusema malloc na bure. 410 00:21:58,000 --> 00:22:03,000 Kama unataka kuwaita malloc na bure, napenda kuondoka checked. 411 00:22:03,000 --> 00:22:07,000 Mimi itabidi bonyeza pili, na hatimaye, hii ni ya kwenda kuuliza mimi ambapo nataka atayaokoa. 412 00:22:07,000 --> 00:22:14,000 Mimi itabidi hit kujenga, na hapa sisi kwenda. 413 00:22:14,000 --> 00:22:16,000 Mimi umba mradi mpya. 414 00:22:16,000 --> 00:22:19,000 Zaidi ya hapa upande wa kushoto ni mafaili yote ambayo ni ya ndani ya mradi wangu, 415 00:22:19,000 --> 00:22:22,000 na taarifa kwamba mimi got rundo zima, na sikuweza hata kufanya kitu chochote. 416 00:22:22,000 --> 00:22:24,000 IOs ni kubwa. 417 00:22:24,000 --> 00:22:27,000 >> Kwa mfano, hapa hii ViewController.h, 418 00:22:27,000 --> 00:22:30,000 hii ni kwenda kuwakilisha mtazamo wangu wa kwanza mtawala, 419 00:22:30,000 --> 00:22:32,000 hivyo screen kwanza ndani ya programu yangu. 420 00:22:32,000 --> 00:22:34,000 Sasa sisi kujua nini hii ni kusema. 421 00:22:34,000 --> 00:22:36,000 Sisi ni kusema mimi nina wito huu ViewController darasa, 422 00:22:36,000 --> 00:22:40,000 na ViewController anafanya kila kitu ambacho UIViewController gani, 423 00:22:40,000 --> 00:22:43,000 na hili, tena, ni baadhi ya darasa kwamba Apple aliandika kwamba hana mengi ya mambo Handy kwa ajili yetu 424 00:22:43,000 --> 00:22:46,000 kama kuonyesha screen. 425 00:22:46,000 --> 00:22:50,000 Hapa ni mahali ambapo kweli mimi kuanza kufafanua nini mtazamo wangu mtawala gani, 426 00:22:50,000 --> 00:22:52,000 na zinageuka kuwa mimi kweli hawana haja yoyote ya hii. 427 00:22:52,000 --> 00:22:55,000 Hii ni boilerplate kificho kwamba Apple anitiaye kwa bure. 428 00:22:55,000 --> 00:22:59,000 Nilifanya haja ya kuwa mstari wa kwanza, au sina darasa, 429 00:22:59,000 --> 00:23:02,000 hivyo tunaweza kujikwamua kwamba na kujikwamua hii. 430 00:23:02,000 --> 00:23:05,000 Sawa, hivyo hii ni screen yangu tupu. 431 00:23:05,000 --> 00:23:08,000 >> Sasa hebu bonyeza MainStoryboard.storyboard hii, 432 00:23:08,000 --> 00:23:11,000 na hii ni mahali ambapo ni kuanza kupata kuvutia. 433 00:23:11,000 --> 00:23:14,000 Hii inawakilisha screen kwanza juu ya programu yangu. 434 00:23:14,000 --> 00:23:17,000 Kama mimi nataka kuongeza kifungo, katika HTML nilikuwa na kujenga tag button. 435 00:23:17,000 --> 00:23:20,000 Katika Android una kuunda tag kifungo, 436 00:23:20,000 --> 00:23:23,000 lakini katika iOS kama mimi tu kuja chini hapa kwa haki ya chini 437 00:23:23,000 --> 00:23:27,000 na ikiwa mimi bonyeza mmoja hii 3 hapa ambapo anasema vitu, 438 00:23:27,000 --> 00:23:31,000 na mimi unaweza kitabu chini, au naweza kuanza kutafuta button. 439 00:23:31,000 --> 00:23:35,000 Na kuangalia, kifungo, hivyo kama mimi kweli Drag na kuacha hii haki pale, 440 00:23:35,000 --> 00:23:38,000 Nimekuwa tu aliongeza button hii screen juu ya programu yangu. 441 00:23:38,000 --> 00:23:41,000 Kama mimi nataka kubadili Nakala, siwezi bonyeza mara mbili yake, 442 00:23:41,000 --> 00:23:47,000 kusema kitu Huwaongoza kama "Vyombo vya habari Mimi." 443 00:23:47,000 --> 00:23:51,000 Okay, sasa kama mimi kukimbia programu hii, hivyo sisi kukusanya yake, 444 00:23:51,000 --> 00:23:54,000 hivyo kwa kukimbia mimi bonyeza kifungo kucheza katika upande wa juu kushoto, na kuna programu yangu. 445 00:23:54,000 --> 00:23:58,000 Sikuweza kufanya kitu chochote, na I got tamu kuangalia iPhone App. 446 00:23:58,000 --> 00:24:01,000 Kama mimi nataka kuacha ni, unaweza bonyeza button kuacha 447 00:24:01,000 --> 00:24:03,000 kwa sababu ni furaha zaidi. 448 00:24:03,000 --> 00:24:07,000 >> Hebu kusema kwamba mimi kweli wanataka kitu kutokea wakati mimi waandishi wa button hii. 449 00:24:07,000 --> 00:24:09,000 Ili kufanya hivyo nini mimi haja ya kufanya ni mimi haja ya kuunda 450 00:24:09,000 --> 00:24:13,000 mpya tukio handler au action. 451 00:24:13,000 --> 00:24:16,000 Hiyo ina maana kwamba mimi haja ya kuunda baadhi njia ambayo Mimi nataka kuitwa 452 00:24:16,000 --> 00:24:18,000 wakati mimi waandishi wa habari kifungo, hivyo hebu kuunda mbinu mpya. 453 00:24:18,000 --> 00:24:20,000 Mimi nina ndani ya ViewController.h. 454 00:24:20,000 --> 00:24:22,000 Mimi haja ya kusema kwamba njia ipo. 455 00:24:22,000 --> 00:24:26,000 Nahitaji hyphen kwanza kwa sababu mimi nina kwenda kuwa wito huu juu ya mtawala mtazamo. 456 00:24:26,000 --> 00:24:28,000 Mimi haja ya kutoa aina hii. 457 00:24:28,000 --> 00:24:31,000 aina ya hii ni ya kwenda kuwa kitu IBAction kuwa tuliona mapema. 458 00:24:31,000 --> 00:24:35,000 Hii ni handler tukio hilo, hivyo ni kwenda na kurudi IBAction, 459 00:24:35,000 --> 00:24:38,000 na hii ni dokezo kwa XCode kusema kwamba 460 00:24:38,000 --> 00:24:40,000 hili ni jambo nataka waya kitu. 461 00:24:40,000 --> 00:24:45,000 Naweza kutoa jina, kama semicolon buttonPressed,. 462 00:24:45,000 --> 00:24:48,000 >> Sasa nimepata alitangaza mbinu mpya ndani ya darasa langu. 463 00:24:48,000 --> 00:24:50,000 Nilivyosema njia hii ina kuwepo. 464 00:24:50,000 --> 00:24:53,000 Sasa hebu kuja katika ViewController.m, 465 00:24:53,000 --> 00:24:56,000 na hebu sema nini njia hii inaweza kufanya. 466 00:24:56,000 --> 00:25:03,000 Kama mimi kuanza kuandika, kwa mfano, (utupu) buttonPressed 467 00:25:03,000 --> 00:25:06,000 taarifa XCode ni kweli nice na autocompletes kwa ajili yangu. 468 00:25:06,000 --> 00:25:09,000 Hiyo ni kweli ajabu. 469 00:25:09,000 --> 00:25:12,000 Ona hapa kwamba ndani ya faili. M pia naweza kusema batili, 470 00:25:12,000 --> 00:25:15,000 na hii ni kwa sababu IBAction kwamba ni kweli si aina. 471 00:25:15,000 --> 00:25:19,000 Ni kweli hashtag defined mahali fulani kuwa utupu, 472 00:25:19,000 --> 00:25:22,000 na tena, hii ni dokezo kwa XCode kwamba anasema 473 00:25:22,000 --> 00:25:25,000 Nataka hii kuwa handler tukio hilo, na tutaweza kuona nini katika haki ya pili. 474 00:25:25,000 --> 00:25:28,000 Wakati kifungo hii ni taabu mimi naenda kufanya kitu annoying 475 00:25:28,000 --> 00:25:30,000 kama kuonyesha popup. 476 00:25:30,000 --> 00:25:35,000 >> Ili kufanya hivyo naweza kujenga mfano mpya wa darasa hili aitwaye UIAlertView, 477 00:25:35,000 --> 00:25:39,000 na hii ni darasa kwamba Apple aliandika kwamba kinaendelea kuonyesha popups annoying. 478 00:25:39,000 --> 00:25:43,000 Tutamwita tahadhari hii popup, na mimi kuwa hatua 2, kumbuka, kwa kujenga hii kitu. 479 00:25:43,000 --> 00:25:46,000 Jambo la kwanza mimi haja ya kufanya ni kutenga nafasi. 480 00:25:46,000 --> 00:25:48,000 Mimi nataka UIAlertView. 481 00:25:48,000 --> 00:25:51,000 Mimi nataka kutenga nafasi. Hiyo ni njia yangu ya kwanza. 482 00:25:51,000 --> 00:25:53,000 Njia yangu ya pili ni mimi nataka initialize yake, 483 00:25:53,000 --> 00:25:58,000 na hivyo nina hii kubwa, muda mrefu njia iitwayo initWithTitle. 484 00:25:58,000 --> 00:26:01,000 Hiyo kimsingi kwenda kudhibiti kile dukizi hii anasema. 485 00:26:01,000 --> 00:26:04,000 hatimiliki ya popup yangu inaweza kuwa hello. 486 00:26:04,000 --> 00:26:08,000 ujumbe wa hii popup wanaweza kuwa "Hii ni iOS." 487 00:26:08,000 --> 00:26:10,000 Mjumbe kitu, sijui nini ni kwamba. 488 00:26:10,000 --> 00:26:13,000 Hebu sema ni kitu. 489 00:26:13,000 --> 00:26:18,000 Sasa kifungo ambayo inaenda kuonekana unaweza kusema kitu kama "Ni uhakika ni," 490 00:26:18,000 --> 00:26:24,000 na mimi si kweli unataka vifungo nyingine yoyote, hivyo hebu kufuta kwamba karibu na bracket. 491 00:26:24,000 --> 00:26:27,000 >> Sawa, mimi umba moja ya ziada. Kuna sisi kwenda. 492 00:26:27,000 --> 00:26:30,000 Hii ni jinsi gani naweza kujenga popup mpya. 493 00:26:30,000 --> 00:26:35,000 Kama mimi nataka kuonyesha kweli popup nataka kuita njia show. 494 00:26:35,000 --> 00:26:38,000 Ili kufanya hivyo naweza kusema tahadhari na show, 495 00:26:38,000 --> 00:26:40,000 na tena, oto kukamilisha alikuwa super nice. 496 00:26:40,000 --> 00:26:42,000 Kama mimi nilimsahau nini kwamba ilikuwa, kama mimi tu typed katika s, 497 00:26:42,000 --> 00:26:45,000 Mimi unaweza kitabu kupitia hapa kufikiri nini ilikuwa, 498 00:26:45,000 --> 00:26:48,000 na filters nicely. 499 00:26:48,000 --> 00:26:52,000 Sasa mimi aliumba hii popup mpya. 500 00:26:52,000 --> 00:26:55,000 Tutaweza kuja nyuma kwa nini mjumbe maana baadaye, 501 00:26:55,000 --> 00:26:58,000 na sasa mimi nataka kusema nataka njia hii kuwa fired 502 00:26:58,000 --> 00:27:01,000 wakati mimi waandishi wa habari kifungo, hivyo mimi nina kwenda kurudi kwenye Muhtasari yangu, 503 00:27:01,000 --> 00:27:04,000 na mimi nataka sasa ambatisha hii IBAction. 504 00:27:04,000 --> 00:27:06,000 Jambo la kwanza unataka kufanya ni bonyeza button. 505 00:27:06,000 --> 00:27:08,000 Wakati mimi bonyeza button hii nataka kitu kutokea. 506 00:27:08,000 --> 00:27:10,000 Sitakuja kushikilia chini ya udhibiti. 507 00:27:10,000 --> 00:27:13,000 Mimi naenda bonyeza na Drag kutoka kifungo 508 00:27:13,000 --> 00:27:15,000 kwa zaidi ya hapa ambapo anasema View Mdhibiti. 509 00:27:15,000 --> 00:27:17,000 Tunaweza kuona kwamba ni nicely taa juu. 510 00:27:17,000 --> 00:27:22,000 >> Kama mimi basi kwenda na kipanya yangu mimi sasa hii popup zaidi ya hapa ambapo mimi baadhi ya chaguzi. 511 00:27:22,000 --> 00:27:24,000 Moja ya hayo ni matukio ambayo naweza kujisajili. 512 00:27:24,000 --> 00:27:28,000 Haya yote ni ya njia hizo mimi alitangaza katika faili yangu h kama IBActions. 513 00:27:28,000 --> 00:27:31,000 Hii ni jinsi XCode anajua nini wanapaswa kuonekana katika orodha hii ndogo, 514 00:27:31,000 --> 00:27:33,000 hivyo kwamba tu ladha. 515 00:27:33,000 --> 00:27:37,000 Kama mimi bonyeza kifungo taabu, nimekuwa sasa kusajiliwa handler tukio hilo. 516 00:27:37,000 --> 00:27:41,000 Katika JavaScript sisi alikuwa na kusema mimi na baadhi ya kificho kwamba kusajiliwa handler tukio hilo. 517 00:27:41,000 --> 00:27:43,000 Katika Lengo C-ni kweli kwamba rahisi. 518 00:27:43,000 --> 00:27:46,000 Kama mimi kukimbia hii tena 519 00:27:46,000 --> 00:27:49,000 sasa wakati mimi waandishi wa habari kifungo tukio yangu handler ni kwenda kwa moto, 520 00:27:49,000 --> 00:27:51,000 na mimi naenda kupata hii popup. 521 00:27:51,000 --> 00:27:54,000 Super, super rahisi huko. 522 00:27:54,000 --> 00:27:57,000 >> Kama umewahi wanataka kuona matukio yote ya kuwa kutokea kwa kuandikishwa 523 00:27:57,000 --> 00:28:00,000 juu ya sehemu kama mimi bonyeza button hii 524 00:28:00,000 --> 00:28:02,000 na mimi kuja hapa kwa upande wa kulia 525 00:28:02,000 --> 00:28:05,000 kwanza unaweza kuona zaidi ya hapa Naweza kufanya mambo kama aina ya kifungo, 526 00:28:05,000 --> 00:28:08,000 hivyo kama unataka mmoja wa wale wa mimi au kuongeza kifungo mawasiliano 527 00:28:08,000 --> 00:28:10,000 au chochote. 528 00:28:10,000 --> 00:28:13,000 Kama nataka kuona matukio yote ya kwamba ni juu ya kifungo hii 529 00:28:13,000 --> 00:28:16,000 nikija njia yote juu hapa kwa upande wa kulia 530 00:28:16,000 --> 00:28:19,000 tunaweza kuona hapa katika matukio nina matukio haya yote tofauti. 531 00:28:19,000 --> 00:28:23,000 Naweza waandishi wa habari kifungo, wakati mimi basi kwenda ya kifungo, wakati mimi mara mbili bomba au chochote, 532 00:28:23,000 --> 00:28:26,000 na moja mimi waliojiandikisha tu ni tukio hili aitwaye Touch Up Ndani, 533 00:28:26,000 --> 00:28:29,000 na hii anasema kwamba haraka kama kidole changu anakuja mbali kifungo 534 00:28:29,000 --> 00:28:32,000 kuwa tukio ni kwenda moto, na kwamba ni nini hasa ilitokea tu. 535 00:28:32,000 --> 00:28:36,000 Hii ni aina ya tukio default kifungo taabu. 536 00:28:36,000 --> 00:28:39,000 >> Maswali yoyote hadi sasa? 537 00:28:39,000 --> 00:28:43,000 Okay, hiyo ni jinsi tunaweza kuanza kwa waya juu ya mambo katika code yetu 538 00:28:43,000 --> 00:28:46,000 katika mambo ya ndani ya interface yetu. 539 00:28:46,000 --> 00:28:49,000 Kumbuka jambo la kwanza sisi na kufanya ni kupata code, 540 00:28:49,000 --> 00:28:54,000 na kisha sisi wired up interface kwa kificho, 541 00:28:54,000 --> 00:28:57,000 na kuna programu yetu ya kwanza. 542 00:28:57,000 --> 00:29:00,000 Okay, kwamba ilikuwa kweli baridi, na sisi aliumba hii kifungo. 543 00:29:00,000 --> 00:29:03,000 Nini kama sisi si unataka kuwa na kuunda kundi la mali 544 00:29:03,000 --> 00:29:05,000 anayewakilisha vifungo haya? 545 00:29:05,000 --> 00:29:08,000 Kwa mfano, katika Tic TAC Toe nina vifungo 9, 546 00:29:08,000 --> 00:29:11,000 na ni d kuwa super, super annoying kuwa kwa Drag na kuacha mara 9 547 00:29:11,000 --> 00:29:14,000 au kama mimi alikuwa na kufanya Tic TAC Toe na 81 badala ya 9 548 00:29:14,000 --> 00:29:17,000 na mimi alikuwa na Drag na kuacha mara 81, na kwamba ni kilema. 549 00:29:17,000 --> 00:29:20,000 Nini tunaweza kufanya badala yake ni kiasi kama HTML 550 00:29:20,000 --> 00:29:23,000 wakati tulikuwa na vitu kama Vitambulisho majina na tunaweza kutafuta mambo 551 00:29:23,000 --> 00:29:27,000 na ID zao, kuna wazo sawa katika iOS kuitwa tags. 552 00:29:27,000 --> 00:29:31,000 >> tag ni tu kipekee namba kitambulisho kwa sehemu. 553 00:29:31,000 --> 00:29:34,000 Kama mimi kusema hii ina tag wa 0, kwa mfano, 554 00:29:34,000 --> 00:29:38,000 kama mimi kujenga kifungo na kuwapa tag wa 0, na tutaweza kuona jinsi ya kufanya kwamba katika haki ya pili, 555 00:29:38,000 --> 00:29:41,000 kama nataka kupata kwamba kifungo naweza tu kusema mimi nataka kuita 556 00:29:41,000 --> 00:29:45,000 , viewWithTag njia juu ya kitu zaidi ya hapa 557 00:29:45,000 --> 00:29:48,000 self.view, ambayo inawakilisha screen ya sasa, kwa mfano. 558 00:29:48,000 --> 00:29:53,000 Kama mimi wito kwamba njia viewWithTag, mimi nina kwenda kuvuta nyuma kifungo na tag 0. 559 00:29:53,000 --> 00:29:58,000 Hebu tuangalie hili kwa toe jengo Tic TAC. 560 00:29:58,000 --> 00:30:01,000 Kwanza, hii ni storyboard yangu. 561 00:30:01,000 --> 00:30:05,000 Nimekuwa umba hizi vifungo UI 10. 562 00:30:05,000 --> 00:30:07,000 Angalia wao uko ukubwa wote ni sawa. 563 00:30:07,000 --> 00:30:11,000 Kama mimi bonyeza mmoja wa hawa na mimi kuja nyuma zaidi ya hapa, upande huu wa kulia 564 00:30:11,000 --> 00:30:15,000 utaona mimi kurekebishwa font haki hapa, hivyo mimi alifanya font kidogo kubwa zaidi, 565 00:30:15,000 --> 00:30:19,000 lakini kile Mimi pia alifanya alikuwa mimi kuweka hii tag. 566 00:30:19,000 --> 00:30:23,000 Mimi alisema kwamba hii ina tag wa 1, na kwamba upande wa juu kushoto. 567 00:30:23,000 --> 00:30:26,000 >> Sasa, kama mimi bonyeza kifungo mwingine, kama hii moja ya pili hapa, 568 00:30:26,000 --> 00:30:29,000 sasa utaona kwamba lebo yangu ni 2. 569 00:30:29,000 --> 00:30:32,000 Kila moja ya vifungo hizi tu ana tag kipekee, 570 00:30:32,000 --> 00:30:35,000 na hivyo hii ni baadaye jinsi mimi nina kwenda kuanza mazungumzo 571 00:30:35,000 --> 00:30:38,000 na programu yangu. 572 00:30:38,000 --> 00:30:40,000 Hii yote ni ndani ya moja mtawala view, 573 00:30:40,000 --> 00:30:42,000 lakini hapa ni nini sisi. 574 00:30:42,000 --> 00:30:44,000 Tuna mali 3 hapa. 575 00:30:44,000 --> 00:30:49,000 moja ya kwanza na ile ya mwisho ni kwenda kuwakilisha hali ya bodi yangu. 576 00:30:49,000 --> 00:30:53,000 Kimsingi hii ni moja ya kwanza safu anayewakilisha ambapo XS na Os ni. 577 00:30:53,000 --> 00:30:57,000 Hii moja nyingine hapa inatuambia zamu ya nani ni. 578 00:30:57,000 --> 00:31:01,000 Utagundua kuwa mimi pia kuwa mambo haya hapa. 579 00:31:01,000 --> 00:31:05,000 Kabla ya wakati sisi alitangaza mali sisi aliwapa jina na aina. 580 00:31:05,000 --> 00:31:08,000 Tunaweza pia kuwapa baadhi ya maelezo ya ziada hapa. 581 00:31:08,000 --> 00:31:11,000 Hii kwanza anasema nonatomic, na nini hii anasema 582 00:31:11,000 --> 00:31:16,000 kimsingi ni jambo moja tu ataweza kujaribu kupata hii variable wakati. 583 00:31:16,000 --> 00:31:19,000 Unaweza kufanya maombi zaidi tata kwamba ni multi-mnyororo, 584 00:31:19,000 --> 00:31:22,000 na hivyo nyuma katika Scratch tulikuwa threads tofauti, 585 00:31:22,000 --> 00:31:25,000 na sprites mbalimbali inaweza kufanya mambo mbalimbali kwa wakati mmoja. 586 00:31:25,000 --> 00:31:29,000 >> Kama hiyo si kesi, ambayo si katika kitu chochote kwamba tutaweza kuwa na kuangalia, 587 00:31:29,000 --> 00:31:33,000 tukisema nonatomic ni kweli kwenda kufanya mambo kidogo kidogo kwa kasi zaidi. 588 00:31:33,000 --> 00:31:37,000 Sisi pia kuwa hii kitu kinachoitwa hawawajui, nguvu, au dhaifu. 589 00:31:37,000 --> 00:31:40,000 Hii hawawajui tu anasema kwamba hii ni aina ya kiwango. 590 00:31:40,000 --> 00:31:43,000 Hii si kitu au pointer kwa sababu hii ni bool, 591 00:31:43,000 --> 00:31:46,000 hivyo bool ni kujengwa katika Lengo C-. 592 00:31:46,000 --> 00:31:49,000 Hii inasema wala kujaribu kufanya kitu chochote dhana na kuyatumia hapa. 593 00:31:49,000 --> 00:31:51,000 Ni kawaida ya zamani scaler. 594 00:31:51,000 --> 00:31:54,000 Nguvu na dhaifu, hii dhaifu anasema kwamba kwa kweli 595 00:31:54,000 --> 00:31:57,000 Nataka hii kuwa akizungumzia kitu katika mtazamo mtawala. 596 00:31:57,000 --> 00:32:00,000 Sitakuja kwa kweli kutenga au init hii mwenyewe. 597 00:32:00,000 --> 00:32:04,000 wajenzi interface, wakati mimi kukimbia programu, ni kwenda kushughulikia initialization kwamba wote. 598 00:32:04,000 --> 00:32:07,000 Nikisema dhaifu, kwamba anasema mtu mwingine ni kwenda kujenga hii. 599 00:32:07,000 --> 00:32:09,000 Nikisema nguvu, hii anasema kwamba mimi nina kwenda kuwa moja 600 00:32:09,000 --> 00:32:12,000 hiyo ni kujenga hii kitu bodi, 601 00:32:12,000 --> 00:32:14,000 na hivyo hapa nina mbinu baadhi zaidi hapa, 602 00:32:14,000 --> 00:32:18,000 kwa mfano, hatua kwa wakati mpya kifungo mchezo ni taabu, 603 00:32:18,000 --> 00:32:20,000 utekelezaji kwa wakati yoyote ya kifungo nyingine ni taabu, 604 00:32:20,000 --> 00:32:23,000 na kadhalika. 605 00:32:23,000 --> 00:32:26,000 >> Sisi si kupata ndani ya sana wa mantiki ya Tic TAC Toe, 606 00:32:26,000 --> 00:32:30,000 ingawa ni ya kusisimua sana, lakini hebu tuangalie 607 00:32:30,000 --> 00:32:33,000 baadhi ya mambo ambayo tunaweza kufanya ndani ya iOS. 608 00:32:33,000 --> 00:32:35,000 Hii mpya mchezo mbinu ni kwenda kuwa fired 609 00:32:35,000 --> 00:32:37,000 wakati mimi waandishi mpya mchezo button. 610 00:32:37,000 --> 00:32:41,000 Kwa ndoano kuwa hadi mimi tu kuja juu kwenye Muhtasari yangu. 611 00:32:41,000 --> 00:32:43,000 Mimi clicked juu ya mchezo mpya. 612 00:32:43,000 --> 00:32:47,000 Kama mimi kuja hapa kwa haki mimi kuona kwamba 613 00:32:47,000 --> 00:32:50,000 Kugusa Up Inside ni wired njia newGame. 614 00:32:50,000 --> 00:32:53,000 Hiyo ndiyo sababu hii ni kwenda kupata fired. 615 00:32:53,000 --> 00:32:56,000 Njia newGame anaenda kufanya baadhi ya kuweka juu. 616 00:32:56,000 --> 00:32:59,000 Ni kwenda kusema mimi nataka wewe wazi hali ya bodi. 617 00:32:59,000 --> 00:33:01,000 Hii ni njia nzuri juu ya arrays mutable. 618 00:33:01,000 --> 00:33:03,000 Hii ni kwenda kusema ni sasa upande wa X, 619 00:33:03,000 --> 00:33:07,000 na sasa mimi naenda kuchukua faida ya jambo hili viewWithTag. 620 00:33:07,000 --> 00:33:11,000 >> Najua kwamba vifungo yangu kuwa tags 1-9, 621 00:33:11,000 --> 00:33:13,000 na kwamba ni kitu mimi kiholela ilichukua. 622 00:33:13,000 --> 00:33:15,000 Kama mimi nataka kuweka Nakala ya kifungo kila kuwa tupu 623 00:33:15,000 --> 00:33:17,000 kwa sababu mimi tu ya kuanza mchezo mpya na sitaki yoyote 624 00:33:17,000 --> 00:33:20,000 XS au Os kuwa kushoto juu naweza kufanya hili. 625 00:33:20,000 --> 00:33:24,000 Naweza kusema mimi nataka mtazamo na tag, 1, 2, 3, 4 nakadhalika. 626 00:33:24,000 --> 00:33:27,000 Hii kuvuta kifungo tofauti kila wakati. 627 00:33:27,000 --> 00:33:30,000 Hapa nina kwenda kuwatupia UIButton. 628 00:33:30,000 --> 00:33:33,000 Tu kama sisi inaweza kutupwa ints kwa ikifungwa na kinyume chake 629 00:33:33,000 --> 00:33:37,000 hii anasema kuwa nataka kutupwa hii UIButton. 630 00:33:37,000 --> 00:33:40,000 Hiyo ina maana ya aina ya hii itakuwa * UIButton 631 00:33:40,000 --> 00:33:43,000 kwa sababu ya kuyatumia, lakini usijali, wao siyo inatisha tena. 632 00:33:43,000 --> 00:33:47,000 >> Mara baada ya mimi kuwa na kifungo nitakacho kuwaita njia juu yake. 633 00:33:47,000 --> 00:33:50,000 Mbinu hii hujulikana setTitle forState, na hivyo hii anasema 634 00:33:50,000 --> 00:33:53,000 Nataka kuweka Nakala ya kifungo kuwa string tupu, 635 00:33:53,000 --> 00:33:57,000 na mimi nataka kuwa string tupu wakati siyo taabu. 636 00:33:57,000 --> 00:34:01,000 Kama mimi nina kutumia njia hii, naweza kubadili Nakala ya kifungo 637 00:34:01,000 --> 00:34:04,000 haraka kama mtu hits, lakini tunataka kusema wakati button wamekaa tu pale 638 00:34:04,000 --> 00:34:07,000 Mimi nataka Nakala kuwa tupu. 639 00:34:07,000 --> 00:34:10,000 Hatimaye, tunakwenda initialize bodi yangu, 640 00:34:10,000 --> 00:34:12,000 na mimi nina kwenda kusema kuwa kila kitu sasa ni 0, 641 00:34:12,000 --> 00:34:15,000 hivyo hii wajumbe wa bodi hayabadiliki ni safu mutable, 642 00:34:15,000 --> 00:34:21,000 ambayo ina maana siwezi kuwaita njia addObject na tu ndani 0 yake. 643 00:34:21,000 --> 00:34:23,000 Hiyo ni nini kinatokea wakati mimi kujenga mchezo mpya. 644 00:34:23,000 --> 00:34:25,000 >> Hebu tuangalie mwingine mmoja. 645 00:34:25,000 --> 00:34:28,000 Njia hii hapa ni IBAction ambayo inaenda kuwa taabu 646 00:34:28,000 --> 00:34:31,000 wakati kila mmoja wa miraba wale ni taabu. 647 00:34:31,000 --> 00:34:33,000 Sasa tuna baadhi Tic TAC Toe mantiki hapa. 648 00:34:33,000 --> 00:34:36,000 Sisi takwimu nje zamu ya nani ni, 649 00:34:36,000 --> 00:34:39,000 na kwa kuzingatia kwamba sisi ama kuweka X au O, 650 00:34:39,000 --> 00:34:43,000 lakini sisi taarifa kwamba sisi ni Reusing hiyo tukio handler 651 00:34:43,000 --> 00:34:45,000 kwa kila moja ya vifungo hizo. 652 00:34:45,000 --> 00:34:49,000 Hiyo ina maana kwamba mimi si kuwa mbinu kwa ajili ya kifungo juu kushoto, 653 00:34:49,000 --> 00:34:52,000 njia tofauti ya batani ya kulia chini, ingawa mimi naweza kuwa amefanya hivyo. 654 00:34:52,000 --> 00:34:54,000 Hiyo si kweli kuwa nzuri design. 655 00:34:54,000 --> 00:34:57,000 Nini mimi kufanya hapa ni mimi nina kweli kwenda kuamua 656 00:34:57,000 --> 00:35:00,000 nini tag wa kifungo kwamba ilikuwa taabu ni. 657 00:35:00,000 --> 00:35:04,000 Taarifa kwamba njia hii inachukua kucheza moja hoja. 658 00:35:04,000 --> 00:35:07,000 Ni wito mtumaji, na kile mtumaji ni ni mtumaji ni kwenda 659 00:35:07,000 --> 00:35:10,000 kuwakilisha nini hasa ilikuwa kuchukuliwa hatua juu ya. 660 00:35:10,000 --> 00:35:15,000 Kama mimi waandishi wa habari kifungo, mtumaji hii ni ya kwenda kuwa UIButton 661 00:35:15,000 --> 00:35:18,000 kwamba mimi kwa kweli taabu, hivyo hiyo ina maana kwamba kuwa UIButton 662 00:35:18,000 --> 00:35:20,000 ina tag sababu mimi umba tag. 663 00:35:20,000 --> 00:35:23,000 >> Kama mimi nataka kupata saa tag naweza tu kusema 664 00:35:23,000 --> 00:35:26,000 Mimi nataka tag wa mtumaji, 665 00:35:26,000 --> 00:35:28,000 na tena, nimekuwa tu casted kwa UIButton. 666 00:35:28,000 --> 00:35:32,000 Mimi kutokea kwa kujua kwamba mtumaji itakuwa UIButton. 667 00:35:32,000 --> 00:35:34,000 Haina daima kuwa UIButton. 668 00:35:34,000 --> 00:35:36,000 Mimi naweza, kwa mfano, kujiandikisha huo tukio handler 669 00:35:36,000 --> 00:35:38,000  kwa moja kwa kifungo, moja kwa slider. 670 00:35:38,000 --> 00:35:40,000 Katika kesi hiyo, najua uko wote vifungo, hivyo mimi nina kwenda kusema 671 00:35:40,000 --> 00:35:43,000 Nataka hii kuwa kifungo, na kisha naweza kupata tag, 672 00:35:43,000 --> 00:35:48,000 na kutoka tag Mimi sasa kujua ambapo mimi ni ndani ya bodi. 673 00:35:48,000 --> 00:35:51,000 Kisha mimi anaweza tu kuweka aidha X au O, unaweza flip upande, 674 00:35:51,000 --> 00:35:54,000 kuangalia ambaye ameshinda, nakadhalika. 675 00:35:54,000 --> 00:35:59,000 >> Maswali yoyote juu ya hili hadi sasa? 676 00:35:59,000 --> 00:36:02,000 Okay, code wote sisi posted online-hatutaki kupata ndani sana 677 00:36:02,000 --> 00:36:06,000 Tic TAC ya mantiki toe, lakini sasa unaweza kuona kwamba kweli 678 00:36:06,000 --> 00:36:09,000 wote sisi ni kufanya ni sisi ni juu ya safu hii looping, 679 00:36:09,000 --> 00:36:13,000 hivyo sisi kuwa wanandoa wa matanzi kwa hapa, na sisi ni tu kulinganisha na kuona 680 00:36:13,000 --> 00:36:18,000 Je, tuna mechi katika safu yote, mechi katika safu au kitu kama hicho. 681 00:36:18,000 --> 00:36:21,000 Kwa kweli kuendesha programu hii, ikiwa mimi bomba kwenye moja ya vifungo hizi 682 00:36:21,000 --> 00:36:24,000 njia ambayo kucheza alikuwa fired, hivyo kwamba maana mimi tu kuweka 683 00:36:24,000 --> 00:36:31,000 button kuwa X, hivyo sasa kifungo hii itakuwa O, na kadhalika, 684 00:36:31,000 --> 00:36:35,000 na hivyo ndiyo jinsi sisi ni mapya kwa kuingiliana na programu hii moja ukurasa. 685 00:36:35,000 --> 00:36:38,000 >> Tutaweza post code, ili kujisikia huru peruse kwamba, 686 00:36:38,000 --> 00:36:43,000 lakini hebu sasa majadiliano kuhusu baadhi ya programu ambayo ni zaidi kuliko tu ukurasa mmoja. 687 00:36:43,000 --> 00:36:47,000 Kama kusisimua kama Tic TAC Toe ilikuwa, mengi ya programu ndani ya iOS 688 00:36:47,000 --> 00:36:50,000 ni aina ya drill haya mambo chini na skrini nyingi. 689 00:36:50,000 --> 00:36:54,000 dhana ya kwanza kwamba tutaweza haja ya kuzungumza kuhusu ni itifaki, 690 00:36:54,000 --> 00:36:57,000 na itifaki ni tu seti ya mbinu 691 00:36:57,000 --> 00:36:59,000 kwamba wewe unaweza ahadi ya kufafanua. 692 00:36:59,000 --> 00:37:02,000 Kama mimi kuunda hii itifaki mpya na mbinu 2, hii moja kwanza, 693 00:37:02,000 --> 00:37:05,000 kama aina ya kurudi ni batili, mimi kuitwa ni foo. 694 00:37:05,000 --> 00:37:07,000 Inachukua hoja hakuna. Mimi na mwingine mbinu. 695 00:37:07,000 --> 00:37:11,000 Kuirudisha int. Mimi kuitwa ni bar, na inachukua moja hoja. 696 00:37:11,000 --> 00:37:14,000 Hii itifaki zote ni kwamba ni wito SomeProtocol hapa juu, 697 00:37:14,000 --> 00:37:19,000 hii ni seti ya mambo ambayo mtu anaweza kutekeleza. 698 00:37:19,000 --> 00:37:22,000 Mimi si ndani ya itifaki hii alisema nini foo gani. 699 00:37:22,000 --> 00:37:26,000 Badala yake, mimi nina kusema tu unaweza kufafanua foo kama unataka. 700 00:37:26,000 --> 00:37:30,000 Kama mimi nina kujenga mtawala mtazamo au kujenga darasa 701 00:37:30,000 --> 00:37:33,000 Naweza ndani ya kwamba ahadi ya darasa kutekeleza 702 00:37:33,000 --> 00:37:40,000 baadhi ya mbinu hizo, hivyo kwa mfano, kama kusema 703 00:37:40,000 --> 00:37:43,000 hii sasa anasema mimi nina kufanya ahadi na wewe kwamba ndani ya 704 00:37:43,000 --> 00:37:50,000 wa darasa hili mtawala mtazamo nami kuwa ufafanuzi kwa wote foo na bar. 705 00:37:50,000 --> 00:37:52,000 >> Kwa nini ni kwamba manufaa? 706 00:37:52,000 --> 00:37:55,000 mengi ya vipengele ndani ya iOS kuchukua fursa hii, 707 00:37:55,000 --> 00:37:58,000 kubuni muundo kuitwa ujumbe, na nini ujumbe anasema 708 00:37:58,000 --> 00:38:01,000 ni kwamba, kwa mfano, kama nina sanduku Nakala 709 00:38:01,000 --> 00:38:04,000 na kuna baadhi ya matukio ambayo inaweza kusajiliwa ndani ya asilia sanduku langu, 710 00:38:04,000 --> 00:38:07,000 badala ya kujenga matukio tofauti nini siwezi kufanya ni naweza kusema 711 00:38:07,000 --> 00:38:10,000 mjumbe wa sanduku hii Nakala itakuwa baadhi kitu. 712 00:38:10,000 --> 00:38:13,000 Wakati mimi kusema kwamba hii ni mjumbe sasa hiyo ina maana kwamba 713 00:38:13,000 --> 00:38:16,000 kila tukio baadhi ingekuwa fired katika sanduku Nakala 714 00:38:16,000 --> 00:38:18,000 badala ya kuwa na kujiandikisha au kitu kama hicho 715 00:38:18,000 --> 00:38:21,000 ni tu kwenda kuwaita njia ya mjumbe. 716 00:38:21,000 --> 00:38:24,000 Kwa mfano, ndani ya sanduku Nakala yangu nina mbinu kwa ajili ya wakati mimi waandishi 717 00:38:24,000 --> 00:38:27,000 kwamba amefanya kifungo katika haki ya chini, 718 00:38:27,000 --> 00:38:30,000 na hivyo badala ya kusajili tukio handler nini naweza kusema ni 719 00:38:30,000 --> 00:38:34,000 Nakala sanduku, hapa ni kitu ambayo Mimi nataka wewe kuwaita njia juu ya 720 00:38:34,000 --> 00:38:37,000 wakati kila mtu mashinikizo button kufanyika, 721 00:38:37,000 --> 00:38:40,000 na hiyo ina maana kwamba kitu ambayo ina kutekeleza baadhi ya itifaki 722 00:38:40,000 --> 00:38:45,000 kwamba anasema mimi ahadi kufafanua kwamba amefanya kifungo hatua, 723 00:38:45,000 --> 00:38:47,000 kwa sababu kama haina kufafanua kwamba mbinu na vyombo vya habari kufanyika, 724 00:38:47,000 --> 00:38:49,000 basi ni kwenda kuwa na utata. 725 00:38:49,000 --> 00:38:55,000 >> Hebu tuangalie mfano. 726 00:38:55,000 --> 00:38:58,000 Hapa mimi tu na moja Nakala sanduku, 727 00:38:58,000 --> 00:39:04,000 na moja ya mali ya sanduku hii Nakala zaidi ya hapa, upande huu wa kulia ni mjumbe. 728 00:39:04,000 --> 00:39:06,000 Hii ni mali ya darasa. 729 00:39:06,000 --> 00:39:09,000 Nini mimi hapa ni mimi kudhibiti clicked, na mimi dragged kutoka doa hii zaidi hapa 730 00:39:09,000 --> 00:39:13,000 kwa mtawala mtazamo, na kwamba anasema sasa mjumbe wa sanduku hii Nakala 731 00:39:13,000 --> 00:39:18,000 ni kwenda kuwa mtawala mtazamo. 732 00:39:18,000 --> 00:39:20,000 Hiyo ina maana kwamba wakati baadhi vitendo kutokea, badala ya kusajili 733 00:39:20,000 --> 00:39:25,000 tofauti tukio handlers Mimi nataka wewe kuwatuma mjumbe. 734 00:39:25,000 --> 00:39:28,000 Sasa hebu tuangalie mtazamo mtawala wangu. 735 00:39:28,000 --> 00:39:32,000 Ndani ya faili. H nimekuwa alitoa ahadi. 736 00:39:32,000 --> 00:39:36,000 Nimekuwa aliahidi kutekeleza mbinu kadhaa ndani ya itifaki hii 737 00:39:36,000 --> 00:39:38,000 kuitwa UITextFieldDelegate, na tena, 738 00:39:38,000 --> 00:39:42,000 hii ni baadhi tu orodha ya baadhi ya mambo ambayo siwezi kuchagua kutekeleza. 739 00:39:42,000 --> 00:39:46,000 >> Kama mimi kuja hapa katika faili yangu. M, mimi zimetekeleza mmoja kama mbinu. 740 00:39:46,000 --> 00:39:49,000 Nimekuwa kuitwa ni textFieldShouldReturn 741 00:39:49,000 --> 00:39:52,000 kwa sababu hiyo ndiyo ilikuwa inaitwa ndani ya itifaki. 742 00:39:52,000 --> 00:39:57,000 Na sasa wakati mimi waandishi kufanyika kifungo ndani ya shamba kwamba Nakala 743 00:39:57,000 --> 00:40:00,000 hii ni nini kinaendelea kupata walioitwa, hivyo sikuweza kujiandikisha handler tukio hilo. 744 00:40:00,000 --> 00:40:03,000 Mimi kushikamana mjumbe, na wakati wowote tukio hili fired 745 00:40:03,000 --> 00:40:08,000 hii ni njia ambayo inaitwa kupata, hivyo kama mimi kuja hapa kwenye Muhtasari yangu na kukimbia- 746 00:40:08,000 --> 00:40:11,000 wakati hiyo upakiaji tunaweza kuona nini hii gani. 747 00:40:11,000 --> 00:40:13,000 Kwenye screen yangu Ninayo 2. 748 00:40:13,000 --> 00:40:16,000 Nina uwanja huu wa maandishi, na nina studio. 749 00:40:16,000 --> 00:40:19,000 Mimi kusema tu nataka Nakala ya studio hii 750 00:40:19,000 --> 00:40:23,000 kuwa sawa na chochote mtumiaji typed katika ndani ya uwanja maandishi. 751 00:40:23,000 --> 00:40:26,000 Hii mstari unaofuata hapa ni njia tu kwamba mimi nina wito 752 00:40:26,000 --> 00:40:29,000 kwenye shamba Nakala kwamba anasema mimi nataka wewe kujificha keyboard. 753 00:40:29,000 --> 00:40:33,000 Hii ni njia holela kwamba Apple alichagua. 754 00:40:33,000 --> 00:40:38,000 >> Tena, kabla ya mimi alifanya kitu chochote mimi alikuwa na waya kila kitu juu, hivyo mimi kwanza alikuja juu hapa. 755 00:40:38,000 --> 00:40:42,000 Kutoka mtawala view Mimi Drag juu kwa Nakala sanduku. 756 00:40:42,000 --> 00:40:46,000 Mimi basi kwenda, na mimi kuona hapa kwamba naweza kufanya hili shamba Nakala mali 757 00:40:46,000 --> 00:40:49,000 tangu juu hapa nchini mtawala mtazamo nimekuwa defined mali 758 00:40:49,000 --> 00:40:52,000 kwamba ni IBOutlet ya shamba maandishi. 759 00:40:52,000 --> 00:40:55,000 Hii inasema kwamba naweza waya mali hii hadi 760 00:40:55,000 --> 00:40:59,000 kwa shamba asilia katika UI yangu. 761 00:40:59,000 --> 00:41:03,000 Nilipofika bonyeza hii naweza kuanza kuandika. 762 00:41:03,000 --> 00:41:06,000 Sasa kama mimi bonyeza button kufanyika hili ni kwenda kwa moto 763 00:41:06,000 --> 00:41:08,000 tukio kwamba mimi sasa wanaweza kujibu. 764 00:41:08,000 --> 00:41:10,000 Handlers tukio No. 765 00:41:10,000 --> 00:41:13,000 Hayo ni jinsi mimi tu waliitikia kifungo kwamba kufanyika. 766 00:41:13,000 --> 00:41:15,000 Mantiki? 767 00:41:15,000 --> 00:41:20,000 >> Hii si mfano kubuni kwamba-unaweza milele kupata mwenyewe 768 00:41:20,000 --> 00:41:23,000 kujenga itifaki yako mwenyewe, lakini tu kujua kwamba baadhi 769 00:41:23,000 --> 00:41:27,000 tofauti iOS vipengele kujiandikisha matukio katika njia tofauti. 770 00:41:27,000 --> 00:41:29,000 Vifungo, kwa mfano, kutumia IBActions hizo. 771 00:41:29,000 --> 00:41:32,000 Nakala mashamba, kwa upande mwingine, ni kwenda kutumia wajumbe. 772 00:41:32,000 --> 00:41:36,000 Tunaweza kuona na unaweza kuangalia yote ya ndani kuwa juu ya nyaraka. 773 00:41:36,000 --> 00:41:41,000 Kwa njia, kuna kweli tani ya stuff UI kujengwa ndani ya iOS kwa ajili yenu, 774 00:41:41,000 --> 00:41:46,000 hivyo kwa mfano, njia ya mimi kusema kwamba alifanya kufanyika katika haki ya chini 775 00:41:46,000 --> 00:41:48,000 ni mimi kuchaguliwa uwanja huu wa maandishi. 776 00:41:48,000 --> 00:41:50,000 Mimi alikuja juu hapa. 777 00:41:50,000 --> 00:41:53,000 Mimi scrolled chini kidogo kurudi muhimu, 778 00:41:53,000 --> 00:41:56,000 na mimi unaweza kweli kufanya hii rundo zima wa mambo, kama kama nataka kusema kwamba 779 00:41:56,000 --> 00:42:00,000 dharura waomba badala siwezi kufanya hivyo, ambayo ni kabisa random, 780 00:42:00,000 --> 00:42:02,000 na sijui nini kuna kujengwa katika dharura wito kifungo, 781 00:42:02,000 --> 00:42:06,000 lakini kuna, inasema dharura wito kwa herufi ndogo kweli. 782 00:42:06,000 --> 00:42:08,000 Kuna kwenda. 783 00:42:08,000 --> 00:42:12,000 >> Dhahiri kuchunguza yote ya chaguzi hizi tofauti katika iOS. 784 00:42:12,000 --> 00:42:14,000 Maswali yoyote juu ya wajumbe? 785 00:42:14,000 --> 00:42:18,000 Tena, kuvutia tu kubuni muundo kwamba unapaswa kufahamu. 786 00:42:18,000 --> 00:42:22,000 Okay, hebu ijayo kuangalia maoni ya meza. 787 00:42:22,000 --> 00:42:26,000 mtazamo meza kimsingi ni kwamba orodha ya vitu kuwa ni kila mahali katika iOS. 788 00:42:26,000 --> 00:42:29,000 Wakati wewe ni flipping kwa njia zote za mawasiliano yako, wewe kuangalia 789 00:42:29,000 --> 00:42:34,000 ukurasa linatua, na kwamba aina ya orodha ya mambo inaitwa mtazamo meza. 790 00:42:34,000 --> 00:42:37,000 Kutekeleza maoni meza katika iOS ni pretty rahisi. 791 00:42:37,000 --> 00:42:41,000 Badala ya kufanya darasa kwamba anapotoka kwamba UIViewController 792 00:42:41,000 --> 00:42:44,000 kama tumekuwa kufanyika kabla ya sisi tu haja ya kusema kuliko 793 00:42:44,000 --> 00:42:46,000 kila kitu UIViewController haina nataka kufanya, 794 00:42:46,000 --> 00:42:50,000 Mimi kusema kila kitu UITableViewController haina nataka kufanya, 795 00:42:50,000 --> 00:42:54,000 ili tu anaongeza baadhi ya mambo ya nyongeza ambayo ni kabisa kufanyika kwa ajili yetu. 796 00:42:54,000 --> 00:42:58,000 Tunahitaji kufanya kidogo sana na kimsingi kujaza nafasi zilizoachwa wazi ndani ya meza. 797 00:42:58,000 --> 00:43:02,000 >> Ili kuonyesha meza mimi haja ya kujibu baadhi ya maswali. 798 00:43:02,000 --> 00:43:06,000 swali la kwanza mimi haja ya kujibu ni sehemu ngapi ni katika meza? 799 00:43:06,000 --> 00:43:08,000 Wakati wewe ni flipping kupitia programu yako mawasiliano utasikia taarifa kwamba ni aina ya 800 00:43:08,000 --> 00:43:12,000 iliyoandaliwa na Kama, basi una Bs, na una kwamba kidogo ndogo header. 801 00:43:12,000 --> 00:43:14,000 Kila wa wale inaitwa sehemu. 802 00:43:14,000 --> 00:43:16,000 Wewe au anaweza haja hizi. 803 00:43:16,000 --> 00:43:19,000 Jambo la kwanza unahitaji kufanya ni kutekeleza mbinu 804 00:43:19,000 --> 00:43:22,000 kuitwa tableView: numberOfSectionsInTableView. 805 00:43:22,000 --> 00:43:25,000 Hiyo tu anarudi ngapi sehemu una, 806 00:43:25,000 --> 00:43:29,000 hivyo hii inaweza kusema kurudi moja kama una moja kubwa meza mtazamo. 807 00:43:29,000 --> 00:43:33,000 swali la pili kwamba iOS anahitaji kujua ni jinsi gani safu nyingi gani? 808 00:43:33,000 --> 00:43:36,000 Kwa mfano, wewe ni flipping kupitia mtazamo meza. 809 00:43:36,000 --> 00:43:39,000 Una idadi ya kudumu ya nyimbo wewe kuangalia au idadi maalum ya mawasiliano. 810 00:43:39,000 --> 00:43:41,000 Kama wewe ni yangu, bila shaka, si kwamba wengi, 811 00:43:41,000 --> 00:43:44,000 na hivyo ndiyo jinsi iOS anajua jinsi wengi seli ya kuonyesha. 812 00:43:44,000 --> 00:43:46,000 >> Tena, hii inaweza kusema kitu kama kurudi 3. 813 00:43:46,000 --> 00:43:49,000 Meza yangu ina mtazamo safu 3. 814 00:43:49,000 --> 00:43:52,000 Hatimaye, iOS anahitaji kujua nini kila kiini inaonekana kama, 815 00:43:52,000 --> 00:43:54,000 hivyo kile ni kweli kwenda kufanya ni kuwaita njia hii hapa chini, 816 00:43:54,000 --> 00:43:57,000 hii tableView: cellForRowAtIndexPath. 817 00:43:57,000 --> 00:44:01,000 Ni kwenda kuwaita njia hii juu ya kila kiini moja ndani ya meza yako. 818 00:44:01,000 --> 00:44:03,000 Jinsi gani unajua jinsi mara nyingi simu yake? 819 00:44:03,000 --> 00:44:06,000 Naam, ninyi habari ndani ya idadi ya mistari katika sehemu. 820 00:44:06,000 --> 00:44:08,000 Sisi ni kwenda kuwaita hii kila siku juu ya seli zetu, 821 00:44:08,000 --> 00:44:11,000 na ndani ya hii ambapo unaweza kweli kufanya mambo kama 822 00:44:11,000 --> 00:44:16,000 kuweka maandishi au kukuambia nini kuwa buluu kidogo kifungo juu ya upande wa kulia gani. 823 00:44:16,000 --> 00:44:19,000 mfano kwa ajili ya kupata chembechembe hizi, tunakwenda kutumia njia hii 824 00:44:19,000 --> 00:44:22,000 kuitwa dequeueReusableCellWithIdentifier. 825 00:44:22,000 --> 00:44:29,000 >> Lengo-C ni kweli anajulikana sana kwa urefu ridiculous ya majina yao mbinu, 826 00:44:29,000 --> 00:44:32,000 na hii ni kweli kesi nzuri katika mfano uhakika. 827 00:44:32,000 --> 00:44:37,000 Nini njia hii haina ni hii tu anasema mimi nataka wewe nipe kiini. 828 00:44:37,000 --> 00:44:39,000 Tu iOS kitu. 829 00:44:39,000 --> 00:44:41,000 Kama una kitu kama nyimbo 100,000 kwenye iPod yako 830 00:44:41,000 --> 00:44:45,000 nini iOS hataki kufanya ni kutenga seli 100,000, 831 00:44:45,000 --> 00:44:48,000 kwa sababu kama wewe ni katika juu ya orodha yako, je kweli haja kutenga kumbukumbu 832 00:44:48,000 --> 00:44:51,000 kwa hiyo ni kiini 99,000 safu chini? 833 00:44:51,000 --> 00:44:55,000 Hapana, kwa sababu kama wewe ni scrolling unaweza aina ya kutenga kama wewe kwenda pamoja. 834 00:44:55,000 --> 00:44:57,000 Hii inafanywa kwa ajili yenu. 835 00:44:57,000 --> 00:44:59,000 Huwezi kuwa na wasiwasi juu ya mambo ya kijinga kwamba wote utendaji. 836 00:44:59,000 --> 00:45:02,000 Wote wanasema ni wewe piga hii dequeueReusableCellWithIdentifier mbinu, 837 00:45:02,000 --> 00:45:06,000 na hii anasema, sawa, kama unahitaji nitakacho kujenga kiini mpya kwa ajili yenu. 838 00:45:06,000 --> 00:45:09,000 >> Lakini kama wewe ni chini ya meza na ve tayari zimetengwa seli baadhi 839 00:45:09,000 --> 00:45:12,000 saa ya juu ya meza kwamba wewe ni kweli si kwenda haja ya hivi karibuni 840 00:45:12,000 --> 00:45:15,000 Mimi naenda kukupa moja ya wale nyuma badala ya kugawa moja mpya, 841 00:45:15,000 --> 00:45:17,000 na hivyo hii ni nzuri ya utendaji wasiwasi. 842 00:45:17,000 --> 00:45:21,000 Huna kutenga seli mwenyewe. 843 00:45:21,000 --> 00:45:23,000 Hiyo naenda kukupa wewe nyuma kiini. 844 00:45:23,000 --> 00:45:25,000 Ni kwenda na kurudi na wewe kitu kiini. 845 00:45:25,000 --> 00:45:28,000 Mara una kitu kiini unaweza kufanya mambo hayo. 846 00:45:28,000 --> 00:45:32,000 Unaweza kuweka Nakala ya kiini na mali hii inaitwa Nakala studio. 847 00:45:32,000 --> 00:45:36,000 Unaweza kuongeza kuwa mshale juu ya haki au nyingine random stuff 848 00:45:36,000 --> 00:45:41,000 na mali hii nyingine iitwayo accessoryType, na kadhalika na kadhalika. 849 00:45:41,000 --> 00:45:46,000 >> Hebu tuangalie kwa kweli kutekeleza mtazamo meza sasa. 850 00:45:46,000 --> 00:45:49,000 Wakati mimi umba mradi huu 851 00:45:49,000 --> 00:45:53,000 badala ya kusema moja mtazamo maombi mimi kweli alikuja juu hapa 852 00:45:53,000 --> 00:45:57,000 kwa maombi bwana-undani, na hivyo kimsingi hii sambamba na programu pepe 853 00:45:57,000 --> 00:46:01,000 iPad kwa mtazamo meza upande wa kushoto na kisha yaliyomo juu ya haki. 854 00:46:01,000 --> 00:46:07,000 On iPod au iPhone hii ni kwenda yanahusiana na mtazamo moja meza. 855 00:46:07,000 --> 00:46:10,000 Hiyo ambapo mimi got code yangu Starter. 856 00:46:10,000 --> 00:46:13,000 >> Hebu kwanza kuchukua kuangalia storyboard. 857 00:46:13,000 --> 00:46:15,000 Yote hii ilifanyika kwa ajili yangu, kimsingi kuundwa. 858 00:46:15,000 --> 00:46:18,000 Hii bar urambazaji alinionyeshea nini kiini mfano inaweza kuangalia kama, 859 00:46:18,000 --> 00:46:22,000 na mimi unaweza bonyeza mara mbili hii, mabadiliko ya cheo. 860 00:46:22,000 --> 00:46:25,000 Nyingine yoyote UI wasiwasi mimi wanaweza kushughulikia huko. 861 00:46:25,000 --> 00:46:27,000 faili header inaonekana kweli rahisi. 862 00:46:27,000 --> 00:46:30,000 Badala ya kusema hii ni UIViewController tuko sasa akisema hii ni 863 00:46:30,000 --> 00:46:35,000 TableViewController, hivyo tunajua kwamba tunataka wawaite mbinu zote za meza. 864 00:46:35,000 --> 00:46:38,000 Ijayo nataka kujenga mali ambayo inaenda kuwakilisha 865 00:46:38,000 --> 00:46:40,000 mambo ya ndani ya meza yangu. 866 00:46:40,000 --> 00:46:43,000 Meza hii ni ya kwenda kiholela kuonyesha 867 00:46:43,000 --> 00:46:46,000 orodha ya matunda, na hivyo mimi haja ya kuunda baadhi ya safu 868 00:46:46,000 --> 00:46:49,000 ambayo mimi unaweza kuingiza matunda. 869 00:46:49,000 --> 00:46:52,000 Ndani ya utekelezaji wangu faili jambo la kwanza nataka kufanya 870 00:46:52,000 --> 00:46:55,000 ni mimi nataka kuhakikisha mimi initialize hii safu. 871 00:46:55,000 --> 00:46:58,000 >> Mimi alisema alloc init, umba matunda yangu safu, 872 00:46:58,000 --> 00:47:03,000 na mimi nina akiongeza mambo 4 kwa hiyo, moja ambayo ni zaidi kuliko utata 3 nyingine. 873 00:47:03,000 --> 00:47:06,000 Na sasa nina safu ya ukubwa 4. 874 00:47:06,000 --> 00:47:08,000 Sisi ni kutetereka ni juu katika CS50. 875 00:47:08,000 --> 00:47:11,000 Mimi sasa safu ya ukubwa 4. 876 00:47:11,000 --> 00:47:13,000 Sasa mimi nina kwenda kuanza kujibu maswali haya, na kweli, 877 00:47:13,000 --> 00:47:16,000 wakati mimi aliumba hii programu hii yote ilikuwa tayari amefanya kwa ajili yangu. 878 00:47:16,000 --> 00:47:19,000 Sikuwa na kucharaza nje sehemu kadhaa katika mtazamo meza. 879 00:47:19,000 --> 00:47:22,000 Ilikuwa tayari huko, na mimi nina kujaza nafasi zilizoachwa wazi. 880 00:47:22,000 --> 00:47:24,000 Jinsi sehemu ngapi niseme? 881 00:47:24,000 --> 00:47:26,000 Mmoja. Zote kufanyika. 882 00:47:26,000 --> 00:47:28,000 Jinsi safu ngapi niseme? 883 00:47:28,000 --> 00:47:31,000 Naam, mimi kuwa na mstari mmoja kwa kila matunda, hivyo hii kuhesabu 884 00:47:31,000 --> 00:47:34,000 ni mali ya safu yoyote kwamba anasema jinsi kubwa ni nini? 885 00:47:34,000 --> 00:47:36,000 Hiyo ni jinsi wengi safu nina. 886 00:47:36,000 --> 00:47:42,000 Hatimaye, nahitaji kusema nini kila kiini kuangalia kama? 887 00:47:42,000 --> 00:47:46,000 Mimi nina kwenda kusema dequeueReusableCellWithIdentifier. 888 00:47:46,000 --> 00:47:48,000 >> Tena, hii ilikuwa tayari imeandikwa kwa ajili yangu. 889 00:47:48,000 --> 00:47:51,000 Sikuwa na kufanya hili mwenyewe, na nataka kupata nyuma 890 00:47:51,000 --> 00:47:54,000 hii kiini katika eneo hili. 891 00:47:54,000 --> 00:47:57,000 Kumbuka kwamba sisi ni wito njia hii sawa juu ya kila kiini moja, 892 00:47:57,000 --> 00:48:01,000 na hoja hii hapa, hoja hii indexPath, 893 00:48:01,000 --> 00:48:03,000 anasema nini mstari mimi nina in 894 00:48:03,000 --> 00:48:05,000 Nikisema indexPath.row chini hapa 895 00:48:05,000 --> 00:48:09,000 hii itakuwa 0, basi itakuwa 1, basi itakuwa 2, na hii ni hivyo najua 896 00:48:09,000 --> 00:48:11,000 nini kiini Mimi sasa kuonyesha. 897 00:48:11,000 --> 00:48:15,000 Nataka kuweka Nakala ya kiini kutumia mali hii textLabel 898 00:48:15,000 --> 00:48:19,000 kwenda ndani matunda safu yangu na kupata 899 00:48:19,000 --> 00:48:21,000 kitu sambamba na kila mstari. 900 00:48:21,000 --> 00:48:24,000 Kama hii ni kamba, mimi nina sasa kuweka 901 00:48:24,000 --> 00:48:28,000 Nakala mali kwa kamba. 902 00:48:28,000 --> 00:48:30,000 Mimi siwezi kufanya kitu moja nyingine. 903 00:48:30,000 --> 00:48:32,000 Naweza pia kujiandikisha handler tukio juu ya kila moja ya seli, 904 00:48:32,000 --> 00:48:35,000 hivyo wakati mimi bomba kila seli hizi 905 00:48:35,000 --> 00:48:39,000 hii didSelectRowAtIndexPath, hii ni kwenda kuitwa kwa ajili yangu, 906 00:48:39,000 --> 00:48:42,000 hivyo tu na kufafanua hii naweza sasa kushughulikia kile kinachotokea 907 00:48:42,000 --> 00:48:46,000 wakati wewe bomba kiini, na tena, sisi ni kupita katika ambayo kiini tapped 908 00:48:46,000 --> 00:48:50,000 ili tuweze kutumia tena hiyo tukio handler kwa wote wa seli zetu. 909 00:48:50,000 --> 00:48:53,000 >> Tena, hii ni kitu iOS ni kufanya kwa ajili yangu. 910 00:48:53,000 --> 00:48:55,000 Hebu kuonyesha mwingine popup annoying 911 00:48:55,000 --> 00:48:59,000 kwamba tu anasema wewe ilichukua kitu ambapo kwamba kitu 912 00:48:59,000 --> 00:49:04,000 ni kwenda kuwa kitu mfululizo. 913 00:49:04,000 --> 00:49:10,000 Wakati mimi kukimbia hii, mimi naenda kuwa hii nice meza mtazamo 914 00:49:10,000 --> 00:49:14,000 na mstari mmoja kwa kila moja ya matunda haya, na ikiwa mimi bomba moja 915 00:49:14,000 --> 00:49:16,000 ni inaniambia nini kilichotokea. 916 00:49:16,000 --> 00:49:21,000 Mantiki? 917 00:49:21,000 --> 00:49:24,000 Hebu kujenga kidogo kidogo ngumu zaidi ya programu, 918 00:49:24,000 --> 00:49:28,000 kama vile kubonyeza wewe ilichukua nyanya ni. 919 00:49:28,000 --> 00:49:31,000 sehemu nzuri kuhusu storyboarding 920 00:49:31,000 --> 00:49:35,000 ni siyo tu kwenda kusaidia skrini kubuni sisi binafsi, 921 00:49:35,000 --> 00:49:38,000 ni pia kwenda kutusaidia kufunga pamoja programu yetu yote, 922 00:49:38,000 --> 00:49:42,000 hivyo programu ya mwisho tutaweza kuwa jengo ni hii nice habari za michezo msomaji, 923 00:49:42,000 --> 00:49:45,000 na hivyo ni kwenda na skrini nyingi, na hivyo mimi kweli anaweza kuwakilisha 924 00:49:45,000 --> 00:49:48,000 kila moja ya skrini hizi nyingi kwenye storyboard, 925 00:49:48,000 --> 00:49:52,000 na mimi wanaweza zoom nje na kuona programu yangu kutoka ngazi ya juu. 926 00:49:52,000 --> 00:49:55,000 >> Ili kujenga mpya kipengele ndani ya storyboard yangu 927 00:49:55,000 --> 00:49:59,000 ni kweli rahisi ndani ya Builder Interface. 928 00:49:59,000 --> 00:50:01,000 Kama mimi nataka kuongeza mwingine screen hii, kwa mfano, 929 00:50:01,000 --> 00:50:06,000 Naweza kwanza zoom nje kwa zoom Bana kwamba Apple anapenda sana, 930 00:50:06,000 --> 00:50:09,000 na chini hapa kabla mimi kutafuta kifungo 931 00:50:09,000 --> 00:50:12,000 na mimi Drag na kuacha kifungo 932 00:50:12,000 --> 00:50:15,000 kama nataka kujenga screen mpya kweli mimi Drag tu na kuacha 933 00:50:15,000 --> 00:50:19,000 nzima mtazamo mtawala, hivyo kama mimi pick hii, kuvuta ni zaidi ya hapa, 934 00:50:19,000 --> 00:50:23,000 hey, kuna mwingine screen, na hivyo sasa kwa kutumia hiyo storyboard faili 935 00:50:23,000 --> 00:50:26,000 Naweza kuwa na yote ya skrini ndani ya programu yangu, na mimi wanaweza zoom nje 936 00:50:26,000 --> 00:50:28,000 na kuona jinsi kuingiliana. 937 00:50:28,000 --> 00:50:32,000 Haya si kuingiliana bado. 938 00:50:32,000 --> 00:50:36,000 njia ambayo haya skrini 2 kuingiliana ni unaweza kufafanua uhusiano. 939 00:50:36,000 --> 00:50:39,000 Unaweza kusema hii kimsingi screen, wakati waandishi button hii, 940 00:50:39,000 --> 00:50:42,000 Mimi nataka wewe slide juu ya screen hii mpya. 941 00:50:42,000 --> 00:50:44,000 Hiyo ina maana kuna aina hii ya uhusiano kati ya 942 00:50:44,000 --> 00:50:46,000  screen kwanza na pili screen. 943 00:50:46,000 --> 00:50:49,000 Itabidi kimsingi mshale kutoka kifungo kwamba kwa screen pili 944 00:50:49,000 --> 00:50:53,000 kusema kwamba wakati waandishi hii kifungo hiyo ambapo nataka kwenda. 945 00:50:53,000 --> 00:50:57,000 Tu kama sisi kudhibiti clicked na dragged kufafanua maduka those 946 00:50:57,000 --> 00:51:01,000 tunakwenda kufanya kitu kimoja kufafanua segues haya. 947 00:51:01,000 --> 00:51:05,000 >> Tutaweza kuona mfano kwa kuwa, na kabla ya kweli mpito 948 00:51:05,000 --> 00:51:08,000 kutoka screen moja hadi nyingine iOS ni nzuri kutosha kuwaita njia hii 949 00:51:08,000 --> 00:51:11,000 kuitwa prepareForSegue, na hii ni mahali ambapo tunaweza kuanza 950 00:51:11,000 --> 00:51:14,000 kutuma data kutoka programu moja hadi nyingine. 951 00:51:14,000 --> 00:51:17,000 Katika mfano sisi ni juu ya kuangalia ni mapenzi kimsingi kuruhusu sisi 952 00:51:17,000 --> 00:51:20,000 kuchuja timu ya baseball kwa ligi na mgawanyiko. 953 00:51:20,000 --> 00:51:23,000 Wakati mimi kuchagua ligi, kwa mfano, nataka mpito 954 00:51:23,000 --> 00:51:25,000 screen yangu ijayo ambapo naweza kuonyesha yote ya mgawanyiko 955 00:51:25,000 --> 00:51:27,000 katika kuwa ligi au timu zote tofauti. 956 00:51:27,000 --> 00:51:31,000 Mimi haja ya kutuma kwa kuwa screen nini timu unapaswa kuonyesha. 957 00:51:31,000 --> 00:51:35,000 Ili kufanya hivyo mimi naenda kuchukua faida ya njia hii hapa. 958 00:51:35,000 --> 00:51:39,000 >> Hatimaye, tu hatua random juu ya iOS. 959 00:51:39,000 --> 00:51:41,000 Kama unataka kuhifadhi data kuna jambo hili aitwaye msingi data, 960 00:51:41,000 --> 00:51:44,000 ambayo ni kweli ngumu aina ya kufanya kazi pamoja. 961 00:51:44,000 --> 00:51:47,000 Unaweza pia kutumia SQL kuhifadhi data, 962 00:51:47,000 --> 00:51:51,000 ambayo, tena, ni nzuri lakini aina ya upande ngumu zaidi kufanya kazi pamoja, 963 00:51:51,000 --> 00:51:55,000 lakini pia inasaidia iOS mambo haya kweli cool kuitwa mali orodha, 964 00:51:55,000 --> 00:52:00,000 na orodha ya mali tu ni faili kwamba inawakilisha jozi thamani muhimu. 965 00:52:00,000 --> 00:52:03,000 Unaweza kufafanua orodha ya funguo, na wewe kusema ufunguo hii ni kwenda kuwa safu. 966 00:52:03,000 --> 00:52:06,000 Muhimu Hii ni kwenda kuwa kamba, na kimsingi chochote unaweza kufanya 967 00:52:06,000 --> 00:52:10,000 katika JSON unaweza kufanya ndani ya orodha ya mali, 968 00:52:10,000 --> 00:52:14,000 na hivyo kweli hii nicely inaruhusu sisi kazi na baadhi ya data. 969 00:52:14,000 --> 00:52:18,000 Kwa mfano, nina hii Teams.plist kwamba mimi kuundwa. 970 00:52:18,000 --> 00:52:22,000 Mimi umba mpya plist faili, na mimi siwezi drill chini. 971 00:52:22,000 --> 00:52:26,000 Hii ni kamusi, hii ni kamusi, hizi ni masharti, 972 00:52:26,000 --> 00:52:30,000 na hivyo hii ni nzuri graphical uwakilishi wa hati JSON 973 00:52:30,000 --> 00:52:33,000 au tu ya kuweka jozi ufunguo thamani, 974 00:52:33,000 --> 00:52:37,000 na hivyo hii ni data ambayo mimi itakuwa kufanya kazi na ndani ya programu yangu. 975 00:52:37,000 --> 00:52:40,000 >> Hebu kwanza kuja hapa. Tuna files mengi zaidi sasa. 976 00:52:40,000 --> 00:52:44,000 Lakini hebu kwanza kuja hapa kwenye Muhtasari. 977 00:52:44,000 --> 00:52:48,000 storyboard hapa-kama mimi wanaweza zoom nje- 978 00:52:48,000 --> 00:52:51,000 sasa tunaweza kuona kwamba hii ni mtiririko wa programu yangu. 979 00:52:51,000 --> 00:52:53,000 Mimi kwanza kwenda kuanza kwenye screen hii. 980 00:52:53,000 --> 00:52:55,000 Mimi nina kwenda drill chini screen hii, 981 00:52:55,000 --> 00:52:58,000 na mimi nina kwenda drill chini screen hii, na tunaweza kuona hapa kwamba kama mimi aina ya 982 00:52:58,000 --> 00:53:04,000 hoja moja ya hizi kuzunguka tuna hizi mishale inaenda hapa na hapa, 983 00:53:04,000 --> 00:53:08,000 na njia ya mimi kufafanua kwamba mshale ilikuwa kama mimi zoom katika kidogo, 984 00:53:08,000 --> 00:53:12,000 na kama mimi kuja juu na mtawala mtazamo huu, 985 00:53:12,000 --> 00:53:16,000 na hapa ni kiini, na mimi nataka kusema kwamba wakati bomba kiini 986 00:53:16,000 --> 00:53:18,000 Mimi nataka wewe slide juu ya screen mwingine. 987 00:53:18,000 --> 00:53:21,000 Naweza tu kushikilia chini ya udhibiti, 988 00:53:21,000 --> 00:53:26,000 kitabu juu ya kidogo kidogo, kushikilia chini ya udhibiti, Drag hii kiini juu na basi kwenda. 989 00:53:26,000 --> 00:53:30,000 >> Na zaidi ya hapa tunasema nini mpito kwamba unataka kutumia? 990 00:53:30,000 --> 00:53:32,000 Je, unataka kutumia kitu slide kwamba wito kushinikiza? 991 00:53:32,000 --> 00:53:34,000 Je, unataka slide juu kutoka chini? 992 00:53:34,000 --> 00:53:36,000 Hiyo inaitwa modal. 993 00:53:36,000 --> 00:53:40,000 Na mara moja mimi bonyeza moja ya hizi, ni kwenda kuteka hii arrow kwa ajili yangu, 994 00:53:40,000 --> 00:53:44,000 na hiyo ina maana kwamba Nimekuwa kwa kweli kubebwa kile kinachotokea wakati Nakaza hii kifungo graphically. 995 00:53:44,000 --> 00:53:48,000 Sikuweza kuandika code yoyote kwa kweli slide kutoka screen 00:59 ijayo. 996 00:53:48,000 --> 00:53:51,000 Mimi defined hii kuibua ndani ya Builder Interface. 997 00:53:51,000 --> 00:53:55,000 Kama mimi bonyeza mshale huu, tunaweza kuona kwamba mimi alitoa jambo hili jina. 998 00:53:55,000 --> 00:53:59,000 Mimi kuitwa ni showDivisions, na hii ni ili niweze kujua 999 00:53:59,000 --> 00:54:03,000 kile cha mpito ni karibu kutokea, na tutaweza kuona nini katika tu sec. 1000 00:54:03,000 --> 00:54:06,000 Hiyo ni jinsi nimekuwa wired up skrini tofauti katika programu yangu. 1001 00:54:06,000 --> 00:54:09,000 Kama hili walikuwa kifungo, kwa mfano, badala ya mtazamo meza, 1002 00:54:09,000 --> 00:54:11,000 Mimi inaweza kudhibiti bonyeza button, Drag juu ya screen ijayo, 1003 00:54:11,000 --> 00:54:16,000 na kwamba ni jinsi gani naweza kufanya urambazaji kwamba njia. 1004 00:54:16,000 --> 00:54:19,000 >> Kweli haraka, kama sisi kuja katika MasterViewController, 1005 00:54:19,000 --> 00:54:22,000 tena, tuko tu kwenda kufafanua orodha ya mambo 1006 00:54:22,000 --> 00:54:26,000 kwamba itakuwa visas katika mtazamo meza. 1007 00:54:26,000 --> 00:54:29,000 Hapa mimi kusema mimi nataka kuchukua kwamba faili plist, 1008 00:54:29,000 --> 00:54:32,000 na mimi nataka wewe mzigo juu katika kamusi, 1009 00:54:32,000 --> 00:54:35,000 na mara moja tu na kwamba kamusi, mimi naenda kujibu maswali hayo tena. 1010 00:54:35,000 --> 00:54:37,000 Hapa ni sehemu kadhaa. 1011 00:54:37,000 --> 00:54:41,000 Mmoja, kuna mstari mmoja kwa kila ligi, na maandishi ya kila kiini 1012 00:54:41,000 --> 00:54:46,000 wanapaswa kuwa ama moja kwanza, ligi ya kwanza, ligi ya pili, na kadhalika. 1013 00:54:46,000 --> 00:54:51,000 Mwisho, mimi naenda kutumia njia hii ya kuwa sisi tu kuona kuitwa prepareForSegue, 1014 00:54:51,000 --> 00:54:54,000 na hii ni njia ambayo inaenda kuwa fired wakati mimi bonyeza 1015 00:54:54,000 --> 00:54:57,000 juu ya moja ya safu hizo na kwa hiyo inleda kwamba mpito 1016 00:54:57,000 --> 00:54:59,000 kwamba mimi kuanzisha na mishale. 1017 00:54:59,000 --> 00:55:02,000 Hii ni kusema kwamba siwezi kuwa na nyingi 1018 00:55:02,000 --> 00:55:05,000 mahusiano kutoka screen moja na nyingine. 1019 00:55:05,000 --> 00:55:08,000 Kama mimi na vifungo 2 na kifungo kila inachukua wewe screen mbalimbali 1020 00:55:08,000 --> 00:55:10,000 Mimi naenda kuwa segues 2, 1 kwa kila kifungo. 1021 00:55:10,000 --> 00:55:14,000 Lakini prepareForSegue hii ni mara ya pili, kwenda kuwa reused 1022 00:55:14,000 --> 00:55:17,000 kwa kila moja ya mahusiano mbalimbali, hivyo hiyo ina maana kwamba mimi haja njia 1023 00:55:17,000 --> 00:55:21,000 ya kutambua kama vyombo vya habari kifungo kwanza au vyombo vya habari button pili. 1024 00:55:21,000 --> 00:55:25,000 >> Kumbuka wakati mimi alitoa kwamba segue jina, hii showDivisions, 1025 00:55:25,000 --> 00:55:29,000 hiyo ni jinsi mimi sasa kujua kwamba hii ni segue kwamba alikuwa ulioamilishwa. 1026 00:55:29,000 --> 00:55:32,000 Yote nataka kufanya ni mimi nataka kusema 1027 00:55:32,000 --> 00:55:35,000 Mimi nataka kufikiri nini mimi tu hit, 1028 00:55:35,000 --> 00:55:38,000 na hivyo kupata kwamba, naweza kusema mimi nataka indexPath kwa safu ya kuchaguliwa, 1029 00:55:38,000 --> 00:55:42,000 kumbuka indexPath tu anasema ambapo mimi tu clicked, 1030 00:55:42,000 --> 00:55:47,000 na kisha Mimi nataka kusema nataka kufikiri ambapo mimi naenda. 1031 00:55:47,000 --> 00:55:50,000 DestinationViewController hii, hiyo ni mali ya segue. 1032 00:55:50,000 --> 00:55:53,000 Hiyo screen nitakacho, 1033 00:55:53,000 --> 00:55:56,000 hivyo najua kwamba screen nitakacho inaitwa DivisionsViewController 1034 00:55:56,000 --> 00:55:59,000 kwa sababu mimi umba kwamba darasa, 1035 00:55:59,000 --> 00:56:02,000 na hivyo sasa kama mimi kusema d.divisions 1036 00:56:02,000 --> 00:56:06,000 Mimi sasa kuweka mali ya mtawala mtazamo mimi nina kuhusu kwenda. 1037 00:56:06,000 --> 00:56:10,000 Hii ni jinsi mimi nina kutuma data kutoka screen moja na screen mwingine. 1038 00:56:10,000 --> 00:56:13,000 >> Kuangalia tu DivisionsViewController hii 1039 00:56:13,000 --> 00:56:16,000 unaweza kuona hapa kwamba katika faili. h 1040 00:56:16,000 --> 00:56:20,000 kuna mgawanyiko mali, na kwamba ni nini mimi kimsingi populating, 1041 00:56:20,000 --> 00:56:25,000 hivyo kwamba ni jinsi gani mimi kujua kwamba mimi nina kuonyesha mgawanyiko sambamba na 1042 00:56:25,000 --> 00:56:28,000 ligi hiyo mimi clicked, na tena, 1043 00:56:28,000 --> 00:56:31,000 halisi meza mtazamo inaonekana pretty kiasi sawa, tu kujibu those 1044 00:56:31,000 --> 00:56:34,000 3 rahisi maswali kama vile kutambua 1045 00:56:34,000 --> 00:56:37,000 kile kinachotokea wakati hoja ya screen ijayo. 1046 00:56:37,000 --> 00:56:40,000 Michache tu ya mambo mengine hapa. 1047 00:56:40,000 --> 00:56:43,000 Utaona saa ya juu hapa kwamba badala ya kusema ni pamoja na # 1048 00:56:43,000 --> 00:56:45,000 Mimi sasa akisema # kuagiza. 1049 00:56:45,000 --> 00:56:47,000 Hii ni kitu Lengo-C. 1050 00:56:47,000 --> 00:56:52,000 kuagiza kimsingi ni toleo nicer ya pamoja, 1051 00:56:52,000 --> 00:56:57,000 na kwa mfano, tunahitaji kujua kile darasa hili ni, 1052 00:56:57,000 --> 00:57:00,000 hivyo siwezi kusema tu DivisionsViewController. 1053 00:57:00,000 --> 00:57:05,000 Kama hatukuwa hashtag ndani standardio.c ya faili wetu c. 1054 00:57:05,000 --> 00:57:07,000 compiler hakuwa na wazo gani printf ilikuwa. 1055 00:57:07,000 --> 00:57:12,000 Vile vile, kama mimi si kuagiza DivisionsViewController 1056 00:57:12,000 --> 00:57:16,000 compiler kweli ana sijui nini DivisionsViewController ni. 1057 00:57:16,000 --> 00:57:19,000 Tu kuhakikisha kwamba ndani ya mafaili yako tofauti. M wewe kuhakikisha kuagiza 1058 00:57:19,000 --> 00:57:25,000 sambamba. h files ili compiler anajua nini kinaendelea. 1059 00:57:25,000 --> 00:57:31,000 >> Hatimaye, nini Apple hatimaye gani ni kuonyesha baadhi ya data kwa kutumia mtazamo mtandao, 1060 00:57:31,000 --> 00:57:35,000 na hivyo mtazamo mtandao ni kitu ambayo unaweza embed 1061 00:57:35,000 --> 00:57:37,000 kidogo ya mtandao browser ndani ya programu yako. 1062 00:57:37,000 --> 00:57:40,000 Wote unahitaji kufanya ni ugavi URL kwa mtandao browser yako, 1063 00:57:40,000 --> 00:57:43,000 hivyo nataka kwenda mlb.mlb.com, 1064 00:57:43,000 --> 00:57:46,000 na hii ni jinsi gani naweza kupata ukurasa wa nyumbani kwa kila timu, 1065 00:57:46,000 --> 00:57:49,000 na hivyo kwa kupita katika URL hii 1066 00:57:49,000 --> 00:57:52,000 mtazamo mtandao wanaweza kuonyesha hii kwa ajili yangu, na mimi unaweza kuvinjari kote, 1067 00:57:52,000 --> 00:58:01,000 na simulator ni katika matumizi na kwamba moja. 1068 00:58:01,000 --> 00:58:03,000 Sasa hii alifika kutoka plist yangu. 1069 00:58:03,000 --> 00:58:07,000 Kama mimi bonyeza hii hii pia alifika kutoka plist yangu, na sliding hili kubebwa 1070 00:58:07,000 --> 00:58:09,000 na kufafanua segues hizo. 1071 00:58:09,000 --> 00:58:12,000 Mimi bonyeza hii na moja zaidi, 1072 00:58:12,000 --> 00:58:15,000 na sasa hapa ni UIWebView yangu, hivyo tu kama kwamba 1073 00:58:15,000 --> 00:58:19,000 hapa ni tovuti kwa ajili ya URL kwamba mimi tu iliyoingia, 1074 00:58:19,000 --> 00:58:21,000 na sikuwa na kushughulikia chochote mambo. 1075 00:58:21,000 --> 00:58:24,000 Hii ni jinsi ya kuonyesha ukurasa wa mtandao. 1076 00:58:24,000 --> 00:58:27,000 Mambo kama button hii nyuma hapa pia niliopewa 1077 00:58:27,000 --> 00:58:33,000 kabisa kwa sababu nimekuwa bure defined mahusiano haya kwa kutumia segues. 1078 00:58:33,000 --> 00:58:37,000 >> Maswali yoyote? Yeah. 1079 00:58:37,000 --> 00:58:40,000 [Mwanafunzi] Basi wakati matumizi alloc, wewe kamwe kuwa na kitu chochote bure? 1080 00:58:40,000 --> 00:58:43,000 Hasa, wakati wewe piga alloc na init huna huru yake. 1081 00:58:43,000 --> 00:58:46,000 IOs ni kwenda kushughulikia yote ya kwamba kwa ajili yenu. 1082 00:58:46,000 --> 00:58:51,000 Ni ajabu, na wewe si kuvunja sheria yoyote. Yeah. 1083 00:58:51,000 --> 00:58:54,000 [Mwanafunzi] Kama ungekuwa ni pamoja na timu zaidi kwamba inaweza kufaa kwenye screen, 1084 00:58:54,000 --> 00:58:58,000 itakuwa ni ya moja kwa moja kuwa na chaguo kitabu, au ni kwamba kitu unahitaji kuongeza? 1085 00:58:58,000 --> 00:59:01,000 Hasa, kama ningekuwa na timu zaidi, kwa mfano, ingekuwa moja kwa moja kushughulikia 1086 00:59:01,000 --> 00:59:04,000 scrolling kwa ajili yangu, na matatizo yote ya utendaji 1087 00:59:04,000 --> 00:59:08,000 na meza kubwa pia kubebwa kabisa kwa ajili yangu. 1088 00:59:08,000 --> 00:59:11,000 >> Maswali mengine? 1089 00:59:11,000 --> 00:59:13,000 Wote wa kanuni hii ni kwenda kuwa posted. 1090 00:59:13,000 --> 00:59:16,000 Sisi aina ya glossed juu kidogo ya maelezo zaidi madogo madogo, 1091 00:59:16,000 --> 00:59:19,000 lakini mambo kama kuweka baadhi ya mali kwa mtazamo mtandao 1092 00:59:19,000 --> 00:59:22,000 ni mambo ambayo unaweza kupata kwa browsing nyaraka Apple, 1093 00:59:22,000 --> 00:59:24,000 ambayo ni kweli, kweli nicely zilizowekwa. 1094 00:59:24,000 --> 00:59:27,000 Wao wana mengi ya programu sampuli na mfano Matumizi 1095 00:59:27,000 --> 00:59:34,000 wa APIs mbalimbali, hivyo dhahiri peruse hayo kama unaweza. 1096 00:59:34,000 --> 00:59:36,000 Tu baadhi ya viungo msaada unaweza kutaka kuangalia. 1097 00:59:36,000 --> 00:59:38,000 Hizi ni baadhi Handy nyaraka viongozi. 1098 00:59:38,000 --> 00:59:41,000 URL ni mkubwa, hivyo wao 'walioteuliwa. 1099 00:59:41,000 --> 00:59:44,000 Hii moja ya kwanza ni maktaba mzima wa nyaraka. 1100 00:59:44,000 --> 00:59:46,000 Kuna kidogo tafuta baa, hivyo kama wewe kuanza kuandika kifungo 1101 00:59:46,000 --> 00:59:50,000 itaanza kutoa taarifa zote kuhusu mambo yote unaweza kufanya na kifungo. 1102 00:59:50,000 --> 00:59:53,000 Nimekuwa pia ni pamoja View Jedwali Programming Guide. 1103 00:59:53,000 --> 00:59:56,000 Hushughulikia maoni meza kwa undani zaidi, 1104 00:59:56,000 --> 01:00:00,000 jinsi ya kufanya mambo kama dynamically kuongeza seli au chembechembe hariri au kuondoa yao. 1105 01:00:00,000 --> 01:00:02,000 >> Kuna kura ya programu sampuli kutoka Apple kwamba nitakuonyesha jinsi ya kufanya hivyo, 1106 01:00:02,000 --> 01:00:05,000 na hatimaye, hii moja ya mwisho ni Binadamu Interface Miongozo, 1107 01:00:05,000 --> 01:00:09,000 na hii ni kimsingi baadhi ya majadiliano ya vipengele UI, 1108 01:00:09,000 --> 01:00:12,000 mambo kama hatuwezi kufanya kifungo kwamba ni 4 Ukubwa na saizi 4. 1109 01:00:12,000 --> 01:00:15,000 Hilo ni wazo mbaya, na mambo mengine kwamba Apple anataka kufanya 1110 01:00:15,000 --> 01:00:18,000 kuhamasisha design nzuri. 1111 01:00:18,000 --> 01:00:23,000 >> Maswali yoyote ya mwisho kabla ya sisi kumaliza up? 1112 01:00:23,000 --> 01:00:27,000 Haki zote, dhahiri jisikie huru-we're kwenda na maandiko maalum juu ya Diskutera. 1113 01:00:27,000 --> 01:00:30,000 Tutaweza kuwa iOS moja, hivyo dhahiri kujisikia huru kutumia hiyo. 1114 01:00:30,000 --> 01:00:34,000 Kama unataka kufanya kazi na wanafunzi wako juu ya miradi 1115 01:00:34,000 --> 01:00:37,000 au kusaidia takwimu nje baadhi random iOS stuff 1116 01:00:37,000 --> 01:00:40,000 jisikie huru email yangu, na dhahiri peruse online wote code kwa sababu 1117 01:00:40,000 --> 01:00:43,000 tu kwa maslahi ya wakati sisi aina ya glossed juu zaidi 1118 01:00:43,000 --> 01:00:45,000 finer grained maelezo ya mambo. 1119 01:00:45,000 --> 01:00:47,000 Lakini kama bado, basi, bahati nzuri katika miradi yako iOS, na natumaini tuna 1120 01:00:47,000 --> 01:00:53,000 kufurika kubwa ya programu katika Hifadhi App. 1121 01:00:53,000 --> 01:00:56,000 [CS50.TV]