1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [Seminar] [iOS: a Boss kimi proqramlar yazmaq] 2 00:00:02,000 --> 00:00:04,000 [Tommy MacWilliam] [Harvard Universiteti] 3 00:00:04,000 --> 00:00:08,000 [Bu CS50 edir.] [CS50.TV] 4 00:00:08,000 --> 00:00:12,000 >> Bütün hüquqlar, hər kəs, iOS xoş gəlmisiniz: a Boss kimi proqram yazmaq. 5 00:00:12,000 --> 00:00:16,000 Bu seminar iPhone apps yazılı diqqət gedir 6 00:00:16,000 --> 00:00:19,000 və öz növbəsində iPad üçün apps yazılı və biz əsasən vasitəsilə gəzmək olacaq 7 00:00:19,000 --> 00:00:23,000 bir app etmək üçün necə bir neçə müxtəlif nümunələri Tic Tac ucu kimi sadə bir oyun, 8 00:00:23,000 --> 00:00:26,000 və ya xəbər oxucu bir növ kimi bir app edilməsi daha maraqlı olduğunuz halda 9 00:00:26,000 --> 00:00:30,000 ya mən də bu barədə danışacağıq İnternet ilə əlaqə ki, bir şey. 10 00:00:30,000 --> 00:00:32,000 Burada qısa gündəliyi var. 11 00:00:32,000 --> 00:00:36,000 >> IOS apps, Objective-C adlı dilində yazılmış 12 00:00:36,000 --> 00:00:39,000 və bu, C oxşar deyil, həqiqətən bütün bir az 13 00:00:39,000 --> 00:00:41,000 biz dil özü haqqında bir az söhbət olacaq 14 00:00:41,000 --> 00:00:45,000 və sonra necə XCode adlanan bu app proqramı istifadə edərək iPhone apps yaratmaq üçün, 15 00:00:45,000 --> 00:00:48,000 siz hələ nazil əgər indi download başlamaq üçün çekinmeyin. 16 00:00:48,000 --> 00:00:50,000 Bir neçə gigabayt edir. 17 00:00:50,000 --> 00:00:54,000 Bu App Store-da pulsuz olmalıdır, belə ki, bir Mac lazımdır 18 00:00:54,000 --> 00:00:57,000 ideal OS X-in son versiyasını 19 00:00:57,000 --> 00:00:59,000 Siz değilseniz, heç bir problem. 20 00:00:59,000 --> 00:01:02,000 Biz sizin istifadə üçün mövcud elm mərkəzi Macs var 21 00:01:02,000 --> 00:01:05,000 XCode quraşdırılmış, və inkişafı üçün bu istifadə çekinmeyin. ilə 22 00:01:05,000 --> 00:01:07,000 Əgər app etmək istəyirəm, lakin Mac yoxsa, narahat olmayın. 23 00:01:07,000 --> 00:01:09,000 Ki, kampus resursları bol var. 24 00:01:09,000 --> 00:01:15,000 Və sonra siz edə bilərsiniz müxtəlif apps 2 böyük nümunələri əhatə olacaq. 25 00:01:15,000 --> 00:01:19,000 Objective-C C. super set deyirlər nə texniki 26 00:01:19,000 --> 00:01:24,000 Hər hansı C kodu də etibarlı Objective-C kodu deməkdir. 27 00:01:24,000 --> 00:01:29,000 Yəni kanal növü C. bəzi əlavə funksiyalar itiuclu o deməkdir ki, 28 00:01:29,000 --> 00:01:33,000 Bu xüsusiyyətləri bir daha malloc yazmaq olmayan daxildir, Allaha şükür 29 00:01:33,000 --> 00:01:36,000 heç o axmaq göstəricilərinə narahat olan və onlara azad və bütün məhsulları 30 00:01:36,000 --> 00:01:40,000 C haqqında nifrət və bu cür Objective-C getdi. 31 00:01:40,000 --> 00:01:43,000 >> İndi, Objective-C, həmçinin, çox daha böyük bir standart kitabxana 32 00:01:43,000 --> 00:01:47,000 belə ki, Objective-C pulsuz daxilində almaq daha çox funksionallıq var. 33 00:01:47,000 --> 00:01:50,000 Biz PHP yazılı zaman saxla biz dan getdi fark 34 00:01:50,000 --> 00:01:54,000 edə bilərsiniz, bütün bu crazy şeyi nəhəng kitabxana bu kiçik dil. 35 00:01:54,000 --> 00:01:56,000 Eyni şey iOS baş verir. 36 00:01:56,000 --> 00:01:59,000 Orada Buddist təqvim kimi şeylər üçün obyektlərin, və həqiqətən bir şey 37 00:01:59,000 --> 00:02:05,000 bəlkə yəqin ki, Objective-C-nin həyata keçirilməsində mövcud hesab edə bilər. 38 00:02:05,000 --> 00:02:08,000 Objective-C məqsədi hissəsi bir şey sened olunur 39 00:02:08,000 --> 00:02:11,000 Object-Oriented Programming çağırıb. 40 00:02:11,000 --> 00:02:14,000 Bu yeni konsepsiya cür, lakin biz, həqiqətən, çox öyrəndim 41 00:02:14,000 --> 00:02:17,000 artıq bu anlayışların bir çox. 42 00:02:17,000 --> 00:02:19,000 Object-Oriented Programming arxasında ideyası siz strukturu olacaq ki, 43 00:02:19,000 --> 00:02:23,000 bu şeylər ətrafında kodu bir çox dərsləri adlı 44 00:02:23,000 --> 00:02:26,000 və bu dərsləri həqiqətən structs tərənnüm olunur. 45 00:02:26,000 --> 00:02:30,000 Bir struct daxilində biz əsasən burada dedi, bir şey 46 00:02:30,000 --> 00:02:32,000 və bu şey üzvləri ola bilər. 47 00:02:32,000 --> 00:02:35,000 Məsələn, bağlı siyahısında node başqa şeylər ola bilər 48 00:02:35,000 --> 00:02:38,000 bir dəyər kimi, siyahıda növbəti node bir göstərici, 49 00:02:38,000 --> 00:02:44,000 və birlikdə göstərici və dəyəri struct bu bir instansiya ibarətdir ki,. 50 00:02:44,000 --> 00:02:47,000 Başqa Dərslər çox oxşar 51 00:02:47,000 --> 00:02:50,000 dərsləri də onların daxili funksiyaları ola bilər. 52 00:02:50,000 --> 00:02:54,000 Biz struct elan zaman, yalnız int n və ya sonrakı node * deyə bilər. 53 00:02:54,000 --> 00:02:57,000 >> İndi Objective-C ilə biz, həqiqətən, funksiyaları bilər 54 00:02:57,000 --> 00:02:59,000 o şeyi daxilində. 55 00:02:59,000 --> 00:03:03,000 Dərsləri edə başqa bir şey onlar digər siniflər data varis bilər. 56 00:03:03,000 --> 00:03:07,000 Məsələn, Objective-C dərsləri daxili bir dəstə baxaraq olacaq. 57 00:03:07,000 --> 00:03:11,000 Onlardan biri bir ekran görünüşü təmsil sinif ola bilər 58 00:03:11,000 --> 00:03:14,000 və belə deyərək Mən öz nöqteyi həyata istəyirəm 59 00:03:14,000 --> 00:03:18,000 biz əsasən Apple üzərində kimsə, yəqin ki, həqiqətən gözəl insanlar, demək 60 00:03:18,000 --> 00:03:21,000 Mənim üçün bu sinif yazdı və bu düymələr tapılanlar kimi şeylər emal 61 00:03:21,000 --> 00:03:25,000 və ya ekran göstərilməsi və biz, həqiqətən, ürəyisözlü olacaq 62 00:03:25,000 --> 00:03:28,000 bütün funksionallığı özümüz həyata keçirmək və belə sadəcə tərəfindən 63 00:03:28,000 --> 00:03:31,000 data devralma biz ki, sinif etdi ki, hər şey deyə bilər 64 00:03:31,000 --> 00:03:34,000 Mən də sinif daxilində istəyirsinizsə, və sonra, bəzi digər məhsulları etməyə gedirəm 65 00:03:34,000 --> 00:03:37,000 yəni bir app həyata keçirir. 66 00:03:37,000 --> 00:03:40,000 Yəni nə söz miras deməkdir. Biz bir daha konkret misal görəcəksiniz. 67 00:03:40,000 --> 00:03:42,000 >> Və nəhayət, Object-Oriented Programming ilə əsas olduğunu 68 00:03:42,000 --> 00:03:45,000 bu data encapsulation gətirib çıxarır. 69 00:03:45,000 --> 00:03:48,000 Bizim problem bəzi qoyur biz bu böyük, qlobal dəyişənlər ola bilər 70 00:03:48,000 --> 00:03:51,000 və hər yerdə Globals ki, biz dövlət takip istədiyiniz bilərsiniz. 71 00:03:51,000 --> 00:03:55,000 Dərsləri ilə biz bir obyekt daxilində məlumat encapsulating başlaya bilərsiniz. 72 00:03:55,000 --> 00:03:58,000 Biz app bir ekran varsa, biz, həqiqətən, hər hansı məlumatlar var ehtiyac yoxdur 73 00:03:58,000 --> 00:04:01,000 ki, bizim app daxilində digər ekran, 74 00:04:01,000 --> 00:04:04,000 və belə dərsləri ərzində şeyi encapsulating bu həqiqətən çıxarır 75 00:04:04,000 --> 00:04:08,000 daha yaxşı kod dizayn və bu, əlavə bəzi funksiyaları ilə mümkündür 76 00:04:08,000 --> 00:04:11,000 Objective-C. 77 00:04:11,000 --> 00:04:15,000 Forewarning, Objective-C üçün sintaksis bananas edir. 78 00:04:15,000 --> 00:04:19,000 Bu, biz əvvəl gördüm heç bir şey kimi 79 00:04:19,000 --> 00:04:22,000 belə ki, bir öyrənmə curve üçün istifadə əldə bir az 80 00:04:22,000 --> 00:04:24,000 Bu heck nə deməkdir? 81 00:04:24,000 --> 00:04:27,000 Amma bir dəfə həqiqətən, həqiqətən, hamar edir ilkin öyrənmə curve ki, keçmiş olsun 82 00:04:27,000 --> 00:04:29,000 apps yazılı başlamaq üçün. 83 00:04:29,000 --> 00:04:33,000 >> Burada demək, bir sinif elan etmək üçün var, mənim sinif 84 00:04:33,000 --> 00:04:35,000 və bəlkə burada daha sonra müəyyən gedirəm ki, bəzi şeylər var 85 00:04:35,000 --> 00:04:38,000 I @ interface demək gedirəm. 86 00:04:38,000 --> 00:04:41,000 I @ interface demək gedirəm. Mən sinif adı vermək gedirəm. 87 00:04:41,000 --> 00:04:43,000 Və sonra başqa bir yerdə mən, @ sonunda demək gedirəm 88 00:04:43,000 --> 00:04:46,000 bu @ interfeys və @ sonuna və hər şey 89 00:04:46,000 --> 00:04:48,000 mənim sinif olacaq. 90 00:04:48,000 --> 00:04:51,000 Yəni bizim. H faylları daxilində nə olacaq. 91 00:04:51,000 --> 00:04:55,000 Just C kimi. H faylları əsasən mövcud olacaq ki, bəzi şeylər burada dedi. 92 00:04:55,000 --> 00:04:57,000 Mən mütləq, onlar hələ nə belirten deyiləm 93 00:04:57,000 --> 00:04:59,000 lakin compiler onlar mövcud bilməlidir. 94 00:04:59,000 --> 00:05:04,000 Sonra içərisində bizim. M faylları çünki Objective-C m 95 00:05:04,000 --> 00:05:08,000 biz həqiqətən bu siniflər nə müəyyən olacaq edir. 96 00:05:08,000 --> 00:05:11,000 Çox bizim. C faylları kimi, biz funksiyaları üçün həyata keçirilməsi təmin edilir. 97 00:05:11,000 --> 00:05:15,000 Inside bizim. M fayl biz burada demək olacaq nə funksiyaları bütün 98 00:05:15,000 --> 00:05:18,000 onlar hər şeyi mənim sinif nə daxilində. 99 00:05:18,000 --> 00:05:22,000 Və nəhayət, daxili bir struct biz bu qıvrım aşırma daxilində demək olar 100 00:05:22,000 --> 00:05:25,000 int n və ya node * növbəti, 101 00:05:25,000 --> 00:05:28,000 və Objective-C, biz, söz @ mülkiyyət istifadə etmək olacaq 102 00:05:28,000 --> 00:05:31,000 və bu, xassələri müəyyən olacaq nə 103 00:05:31,000 --> 00:05:36,000 və ya siniflər bir hissəsi olan qeyri-fəaliyyət göstərir. 104 00:05:36,000 --> 00:05:40,000 >> Objective-C funksiyaları Zəng da bananas edir. 105 00:05:40,000 --> 00:05:43,000 Biz C funksiyaları elan edərkən biz int foo kimi bir şey dedi 106 00:05:43,000 --> 00:05:46,000 və sonra paren açıq və arqumentlər bir siyahısını verdi. 107 00:05:46,000 --> 00:05:51,000 Bu üsulları və ya funksiyaları elan Objective-C kimi görünür. 108 00:05:51,000 --> 00:05:54,000 Mən bir funksiyası və ya bir üsul bəyan istəyirsinizsə 109 00:05:54,000 --> 00:05:58,000 Mən üsul dedi alıram yerləşir, həqiqətən, bir sinif bir üzvü yalnız bir funksiyası 110 00:05:58,000 --> 00:06:01,000 əvəz cür deyil, həqiqətən, belə ki, 111 00:06:01,000 --> 00:06:03,000 içərisində mənim metodu mən yeni üsul yaratmaq istəyirik. 112 00:06:03,000 --> 00:06:06,000 Bu heç bir şey geri olacaq, buna növü qüvvədən düşmüş olacaq. 113 00:06:06,000 --> 00:06:08,000 Bu mənim funksiyası qaytarılması növüdür. 114 00:06:08,000 --> 00:06:11,000 -Çünki bilmirəm İndi biz burada parens var. 115 00:06:11,000 --> 00:06:14,000 Sonra, mənim funksiyası adı olacaq 116 00:06:14,000 --> 00:06:17,000 və sonra nəhayət biz yalnız biz C. idi kimi nöqtəli vergül var 117 00:06:17,000 --> 00:06:19,000 Burada yeni burada bu oğlan edir. 118 00:06:19,000 --> 00:06:22,000 Bu tire həqiqətən vacibdir, və nə deyir ki, 119 00:06:22,000 --> 00:06:26,000 burada bu üsul bir sinif bir misal çağırıb olmalıdır. 120 00:06:26,000 --> 00:06:29,000 >> Biz structs elan sonra yəqin ki, bir şey kimi, 121 00:06:29,000 --> 00:06:32,000 struct node n, və həqiqətən yaratdığı 122 00:06:32,000 --> 00:06:35,000 Mən, həqiqətən, iş başlamaq ki və ya structs biri instantiated 123 00:06:35,000 --> 00:06:38,000 onun daxilində nə ilə, bu tire biz o deməkdir ki, 124 00:06:38,000 --> 00:06:41,000 yalnız biz instantiated kimi sinif instantiate ki struct 125 00:06:41,000 --> 00:06:43,000 ona bu metodu zəng bilər. 126 00:06:43,000 --> 00:06:46,000 Mən üsulları dəlillər əlavə başlamaq istəyirsinizsə 127 00:06:46,000 --> 00:06:48,000 daha bananas olur. 128 00:06:48,000 --> 00:06:50,000 Burada mənim metodu adı var. 129 00:06:50,000 --> 00:06:53,000 Sonra bir nöqtə var gedirəm və bu kolon sonra burada deyir bəzi dəlillər gəlir. 130 00:06:53,000 --> 00:06:56,000 Bu üsul bir mübahisə edir. 131 00:06:56,000 --> 00:06:59,000 Onun dəlil növü bir int və arqument adı 132 00:06:59,000 --> 00:07:03,000 və ya metodu daxilində istifadə gedirəm ki, dəyişən i adlanır. 133 00:07:03,000 --> 00:07:05,000 Yenə bu metodudur. Bu, bir arqument edir. 134 00:07:05,000 --> 00:07:10,000 >> Daha çox dəlillər əlavə başlamaq istəyirsinizsə daha bananas alır 135 00:07:10,000 --> 00:07:13,000 ki, biz burada deyir ki, bu nöqtə arqumentlər mənim siyahısı gəlir var. 136 00:07:13,000 --> 00:07:15,000 Bu ilk arqument bir tamsayı edir. 137 00:07:15,000 --> 00:07:17,000 İndi bu ikinci arqument maraqlıdır. 138 00:07:17,000 --> 00:07:20,000 Mən funksiyası daxilində istifadə gedirəm ki, dəyişən 139 00:07:20,000 --> 00:07:23,000 belə daxili mənim funksiyası deyə bilər, f adlanır 140 00:07:23,000 --> 00:07:25,000 f + = 1 və ya bir şey. 141 00:07:25,000 --> 00:07:30,000 Burada Bu şey əsasən ki, dəlil və ya parametri üçün bir açardır. 142 00:07:30,000 --> 00:07:34,000 Biz əsas dəyər cüt idi və JSON və ya assosiativ seriallarda kimi bir şey kimi 143 00:07:34,000 --> 00:07:37,000 Objective-C, həqiqətən, açıq-aydın yalnız, belə ki, tamam, demək qərar 144 00:07:37,000 --> 00:07:39,000 Bütün bu parametrləri nə üsulu zəng zaman 145 00:07:39,000 --> 00:07:41,000 Mən, həqiqətən, onlara bütün adını gedirəm. 146 00:07:41,000 --> 00:07:45,000 Bir üsulu zəng zaman, həqiqətən, andFloat demək lazımdır 147 00:07:45,000 --> 00:07:47,000 və sonra siz onu da keçmək lazımdır 148 00:07:47,000 --> 00:07:50,000 >> Maraqlıdır ki, bu, adlı, lakin digər parametrlərin bütün deyil 149 00:07:50,000 --> 00:07:53,000 biz 3-cü dəlil olsaydı mən andFloat deyə bilər 150 00:07:53,000 --> 00:07:56,000 və başqa float və s. 151 00:07:56,000 --> 00:08:01,000 Mən bu üsulları zəng zaman, əlbəttə bananas edir 152 00:08:01,000 --> 00:08:04,000 Mən bir obyekt var və mən, foo adlı metodu müəyyən əgər 153 00:08:04,000 --> 00:08:09,000 və mən foo açıq / yaxın parens söyləyərək zəng deyil, istədiyiniz 154 00:08:09,000 --> 00:08:11,000 Mən bracket açmaq üçün gedirəm. 155 00:08:11,000 --> 00:08:13,000 Burada mənim metodu adı var. 156 00:08:13,000 --> 00:08:17,000 Mən bracket yaxın gedirəm və bu mən onu çağıran edirəm obyekti. 157 00:08:17,000 --> 00:08:20,000 Unutmayın, bu metodlar bütün dərsləri ərzində mövcud 158 00:08:20,000 --> 00:08:23,000 dərsləri onların daxilində müəyyən üsulları ola bilər çünki. 159 00:08:23,000 --> 00:08:26,000 >> Burada özbaşına, bəzi sinif obyekti yaratdıq 160 00:08:26,000 --> 00:08:28,000 və bu bunu üçün sintaksis edir. 161 00:08:28,000 --> 00:08:31,000 Obyekt yaratmaq üçün 2 pillə vardır. 162 00:08:31,000 --> 00:08:34,000 Ilk addım mən yer ayırmaq istəyirsiniz edir. 163 00:08:34,000 --> 00:08:37,000 Bu malloc bərabər deyil. Biz artıq malloc demək yoxdur. 164 00:08:37,000 --> 00:08:42,000 Biz m düşüb o alloc etdi və. M ilə. C əvəz. 165 00:08:42,000 --> 00:08:47,000 Biz alloc bir şey sonra sonra başlamaq lazımdır. 166 00:08:47,000 --> 00:08:49,000 Əsasən obyektlər yaratmaq zaman bir məntiq var isteyebilirsiniz 167 00:08:49,000 --> 00:08:53,000 yaratdığı etdiyiniz zaman həyata ki, bir-u mənim dəyərlər keçə bilər 168 00:08:53,000 --> 00:08:57,000 və ya kimi bir şey, bu init metodu əslində obyekt yaradır edir. 169 00:08:57,000 --> 00:08:59,000 Biz ilk, biz C etdiyiniz kimi, yer ayırmaq 170 00:08:59,000 --> 00:09:04,000 və sonra və ya bütün çox deyil bilər ki, bu başlamaq. 171 00:09:04,000 --> 00:09:07,000 Sonra bir obyekt o bu şey qaytarılması edirik. 172 00:09:07,000 --> 00:09:09,000 Bu texniki bir göstəricisidir çünki bir ulduz, burada var 173 00:09:09,000 --> 00:09:12,000 lakin göstəricilərinə ki, Objective-C böyük bir müqavilə artıq deyil, narahat olmayın. 174 00:09:12,000 --> 00:09:15,000 >> İndi NSObject adlanan bu sinif instantiated sonra 175 00:09:15,000 --> 00:09:19,000 və bu, yalnız Apple bir təsadüfi sinif edir. 176 00:09:19,000 --> 00:09:22,000 Biz bu instantiated etdik və indi bu sinif bir misal var 177 00:09:22,000 --> 00:09:25,000 Bu obyekt o, belə ki, müəyyən əgər o deməkdir ki, 178 00:09:25,000 --> 00:09:29,000 Bu metodlar Mən bu kimi onlara zəng bilər. 179 00:09:29,000 --> 00:09:31,000 Eynilə, bir arqumenti ilə bir üsulu zəng etmək istəyirdi, 180 00:09:31,000 --> 00:09:34,000 Bu bar üsulu belə ki, bir arqument edir 181 00:09:34,000 --> 00:09:38,000 qux üsul, bu 2 arqumentlər edir: və burada baz edir. 182 00:09:38,000 --> 00:09:44,000 Bu obyekt o bir funksiyası çağırır. 183 00:09:44,000 --> 00:09:46,000 Mənada etmək? 184 00:09:46,000 --> 00:09:50,000 Bu sintaksis mənada etməlidir, lakin növ üçün istifadə almaq. 185 00:09:50,000 --> 00:09:54,000 >> OK, in Objective-C daxil ki, bir neçə şey haqqında danışaq 186 00:09:54,000 --> 00:09:56,000 ki, mütləq C. daxil edilməyib 187 00:09:56,000 --> 00:09:59,000 C biz növ, bu axmaq xarakterli serialların kimi strings ilə məşğul idi 188 00:09:59,000 --> 00:10:01,000 və həqiqətən annoying var. 189 00:10:01,000 --> 00:10:04,000 Objective-C bütün bizim üçün tikilmiş o var və bu, inşa edir 190 00:10:04,000 --> 00:10:06,000 NSString adlanan bu sinif istifadə edərək. 191 00:10:06,000 --> 00:10:10,000 Mən daha çox gizli sintaksis var bir NSString yaratmaq istədiyiniz zaman. 192 00:10:10,000 --> 00:10:15,000 Əksinə biz @ "cs50" demək "cs50" deyərək çox 193 00:10:15,000 --> 00:10:17,000 və bu yalnız Objective-C strings elan üçün sintaksis edir. 194 00:10:17,000 --> 00:10:21,000 Bu unutmaq, belə deyil etmək çox asandır. 195 00:10:21,000 --> 00:10:24,000 İndi, bir dəfə mən bu var, bu simli, lakin qeyd 196 00:10:24,000 --> 00:10:26,000 həqiqətən yalnız bir obyekt var. 197 00:10:26,000 --> 00:10:30,000 Dedim mən sinif instantiated deməkdir NSString, 198 00:10:30,000 --> 00:10:32,000 başqası mənim üçün yazdığı NSString, deyilən 199 00:10:32,000 --> 00:10:35,000 və onlar artıq bu barədə çox gözəl idi, 200 00:10:35,000 --> 00:10:37,000 Mən bu üsulları zəng başlaya bilərsiniz. 201 00:10:37,000 --> 00:10:40,000 Mən bu obyekt s üsulu uzunluğu zəng edin 202 00:10:40,000 --> 00:10:43,000 o mənə simli uzunluğu geri olacaq. 203 00:10:43,000 --> 00:10:45,000 Bu C. yalnız strlen kimi 204 00:10:45,000 --> 00:10:47,000 Bu 4 qayıtmaq istəyirəm. 205 00:10:47,000 --> 00:10:51,000 >> Eynilə, mən qayğı bilərsiniz başqa bir metodu bu characterAtIndex edir. 206 00:10:51,000 --> 00:10:54,000 Bu simli s deyir ki, bir metodu 207 00:10:54,000 --> 00:10:57,000 Mən sizə zeroth xarakter almaq istəyirəm 208 00:10:57,000 --> 00:10:59,000 və bu, mənə karakter c qayıdacaqlarını 209 00:10:59,000 --> 00:11:02,000 və həqiqətən asanlıqla Google edə bilər ki, bu üsullar daha bütün dəstə var. 210 00:11:02,000 --> 00:11:07,000 Apple sənədlərin böyük və biz bir az ki nəzər lazımdır. 211 00:11:07,000 --> 00:11:09,000 Bu strings var. 212 00:11:09,000 --> 00:11:11,000 Biz də dəyişən ölçüsü seriallarda da tikilib 213 00:11:11,000 --> 00:11:13,000 Biz bir sıra elan zaman C saxla 214 00:11:13,000 --> 00:11:16,000 biz 5 elementlər, hekayə sonu var demək idi. 215 00:11:16,000 --> 00:11:18,000 Biz JavaScript və PHP var zaman başlaya 216 00:11:18,000 --> 00:11:20,000 elementləri əlavə və ya elementləri hərəkət kimi şeylər edir. 217 00:11:20,000 --> 00:11:22,000 Biz Objective-C eyni edə bilərsiniz. 218 00:11:22,000 --> 00:11:26,000 Normal C şəkildə bir sıra yaratmaq deyil 219 00:11:26,000 --> 00:11:30,000 yenə NSMutableArray adlı başqa bir sinif var. 220 00:11:30,000 --> 00:11:33,000 , NSArray da var 221 00:11:33,000 --> 00:11:35,000 və bu əsasən bir sıra içine gedir. 222 00:11:35,000 --> 00:11:38,000 Bu etmək istədiyiniz ilk şey mən ayırmaq istəyirəm deyir 223 00:11:38,000 --> 00:11:41,000 yeni array üçün yer və mən ayrılması sonra 224 00:11:41,000 --> 00:11:43,000 Mən sonra başlamaq lazımdır. 225 00:11:43,000 --> 00:11:45,000 Yenə yalnız bu 2 metodları zəng. 226 00:11:45,000 --> 00:11:48,000 İndi bu obyekt ki daxilində deməkdir 227 00:11:48,000 --> 00:11:50,000 Mən orada boş array oturan var. 228 00:11:50,000 --> 00:11:54,000 Mən bu seriala bir şey əlavə etmək istəyirsinizsə, mən addObject metodu zəng edə bilərsiniz. 229 00:11:54,000 --> 00:11:59,000 Mən bir sıra obyekt əlavə etmək istədiyiniz və mən simli CS50 əlavə etmək istəyirəm. 230 00:11:59,000 --> 00:12:02,000 Mən əksinə deyə bilərəm ki, aradan qaldırılması üçün istəyirdi istəyirəm 231 00:12:02,000 --> 00:12:09,000 serialın üzrə birinci yerdə obyekt aradan qaldırılması və ya bir etiraz. 232 00:12:09,000 --> 00:12:11,000 >> Mənada etmək? 233 00:12:11,000 --> 00:12:14,000 OK, siz cür bu kvadrat mötərizə şey üçün istifadə almaq. 234 00:12:14,000 --> 00:12:18,000 Yeri gəlmişkən, Apple kitabxanaların bir çox daxilində bu NS görəcəksiniz. 235 00:12:18,000 --> 00:12:21,000 Bu NS həqiqətən Steve Jobs ilk şirkətlərdən biri olan növbəti addım üçün dayanır 236 00:12:21,000 --> 00:12:24,000 o, həqiqətən kodu bir çox yazılı başladı və o 237 00:12:24,000 --> 00:12:27,000 Mac OS X və digər məhsullarının bütün əsas növləri kimi, 238 00:12:27,000 --> 00:12:32,000 və bu NS bu gözəl miras cür əvvəllər şirkətlərindən biri həyata bağırmaq deyil 239 00:12:32,000 --> 00:12:34,000 geri Apple ilk başlanğıc idi. 240 00:12:34,000 --> 00:12:36,000 Bu hər yerdə var. 241 00:12:36,000 --> 00:12:41,000 Bir daha vahid Objective-C, məsələn nəzər salaq. 242 00:12:41,000 --> 00:12:44,000 Burada XCode daxilində deyiləm. 243 00:12:44,000 --> 00:12:47,000 Burada almaq üçün, ilk, App Store-dan yükləyə XCode 244 00:12:47,000 --> 00:12:50,000 Mən, fayl burada getdi sonra bu qədər açıldı və 245 00:12:50,000 --> 00:12:54,000 burada yeni, daha sonra layihəsi. 246 00:12:54,000 --> 00:12:57,000 Mən yaratmaq istədiyiniz bütün bu variantları var ki, nə sonra, 247 00:12:57,000 --> 00:12:59,000 və biz, daha sonra bu seçimləri nəzər lazımdır 248 00:12:59,000 --> 00:13:03,000 ancaq bu, məsələn, çünki biz həqiqətən, hələ bir app üçün fikrində deyilik 249 00:13:03,000 --> 00:13:06,000 Burada aşağı gəldi və mən Command Line Tool bildirib 250 00:13:06,000 --> 00:13:09,000 və bu mən command line çalışır ki, bir app edir 251 00:13:09,000 --> 00:13:12,000 biz C. qaçaraq olduğunuz kimi 252 00:13:12,000 --> 00:13:16,000 Ki, mən bu layihənin yaradılmışdır necə, və indi mən burada deyiləm 253 00:13:16,000 --> 00:13:20,000 bu fayl da ilk göz qoy, və bu olduqca tanış baxmaq lazımdır. 254 00:13:20,000 --> 00:13:24,000 Mən int adı var. Dostuma argc, mənim digər dost argv var. 255 00:13:24,000 --> 00:13:30,000 Və biz bu mənim ilk Objective-C tətbiqi üçün giriş nöqtəsi olduğunu görə bilərsiniz. 256 00:13:30,000 --> 00:13:32,000 Burada biz indi bu iqnor edə bilər. 257 00:13:32,000 --> 00:13:35,000 Bu əsasən bəzi yaddaş idarə heyəti ki, siz həqiqətən olacaq 258 00:13:35,000 --> 00:13:37,000 heç narahat var. 259 00:13:37,000 --> 00:13:39,000 >> Burada bu ilk blok baxaq. 260 00:13:39,000 --> 00:13:46,000 Bu ilk line, mən Tələbə demək * Əgər alice = [[Tələbə alloc] init] nə ki? 261 00:13:46,000 --> 00:13:50,000 Burada Bu ilk tələbə, bu yəqin ki, bir sinif edir. 262 00:13:50,000 --> 00:13:54,000 Bu Apple yazdığı bir sinfi deyil, mən yazdığı bir sinif var. 263 00:13:54,000 --> 00:13:57,000 Mən istəyirəm ilk şey, yeni bir tələbə üçün yerin ayrılması istəyirəm 264 00:13:57,000 --> 00:14:00,000 və sonra mən onu başlamaq istəyirəm, bu mənə geri verir 265 00:14:00,000 --> 00:14:05,000 Bu yeni tələbə obyekt və mən Alice adlı bir dəyişən bu saxlanılması alıram. 266 00:14:05,000 --> 00:14:07,000 Ki, sinif haradan gəldi? 267 00:14:07,000 --> 00:14:12,000 Yaxşı, burada sol tərəfdə bu mənim layihə daxilində müxtəlif faylları bütün var. 268 00:14:12,000 --> 00:14:16,000 Biz bir Student.h və Student.m var burada görə bilərsiniz. 269 00:14:16,000 --> 00:14:20,000 Mən hər şeyi bəyan etdiyi. H fayl, unutmayın ki, 270 00:14:20,000 --> 00:14:22,000 ki, sinif daxilində mövcud olacaq. 271 00:14:22,000 --> 00:14:25,000 >> In ki, nəzər salaq. 272 00:14:25,000 --> 00:14:29,000 Bütün hüquqlar, burada biz bu @ interface var və bu, burada gəlir deyir ki, 273 00:14:29,000 --> 00:14:33,000 mənim sinif ərzində mövcud olacaq ki, hər şey bəyannamə. 274 00:14:33,000 --> 00:14:36,000 Sonra bir nöqtə var. Sonra bu NSObject şey var. 275 00:14:36,000 --> 00:14:40,000 Bu nöqtə biz bir az əvvəl müzakirə edilmişdir ki, miras bit bildirir. 276 00:14:40,000 --> 00:14:43,000 Bu deyir bir NSObject edə bilər hər şey 277 00:14:43,000 --> 00:14:46,000 NSObject başqası tərəfindən yazılmış bu sinif, olduğu 278 00:14:46,000 --> 00:14:50,000 Bunu etmək istəyirsinizsə bu NSObject edə bilər hər şey. 279 00:14:50,000 --> 00:14:54,000 Deyərək By: NSObject ki, mən əsasən deməkdir 280 00:14:54,000 --> 00:14:58,000 başqa sinif funksionalığına bütün miras qalmışdır. 281 00:14:58,000 --> 00:15:02,000 Bu, həqiqətən mənə istifadə edə bilər ki, müxtəlif metodları və xassələri bütün dəstə verdi. 282 00:15:02,000 --> 00:15:05,000 Down burada 2 xassələri yaradılması edirəm. 283 00:15:05,000 --> 00:15:08,000 Bu struct əgər mənim tələbə deməkdir ki, bu 2 şeyi olacaq 284 00:15:08,000 --> 00:15:11,000 içərisində mənim struct ki, belə hər tələbə bir adı var 285 00:15:11,000 --> 00:15:14,000 ki, bir simli və bir tələbə də bir sinif var 286 00:15:14,000 --> 00:15:17,000 bir int edir. 287 00:15:17,000 --> 00:15:23,000 >> Nəhayət, aşağı burada mənim tələbə üçün bir üsul yaratmaq üçün gedirəm. 288 00:15:23,000 --> 00:15:26,000 , Mən initWithName, mənim metodu adlanır və bir mübahisə edir 289 00:15:26,000 --> 00:15:31,000 və mübahisə bir simli və mən bu adı çağırdı. 290 00:15:31,000 --> 00:15:35,000 İndi biz, həqiqətən, bu sinif həyata necə baxaq. 291 00:15:35,000 --> 00:15:38,000 Burada indi mən. M fayl daxilində deyiləm 292 00:15:38,000 --> 00:15:40,000 həyata keçirilməsi üçün m, hərhalda. 293 00:15:40,000 --> 00:15:44,000 Mən son mənim həyata var və mən, həqiqətən, müəyyən edirəm burada deyil 294 00:15:44,000 --> 00:15:47,000 nə initWithName edir. 295 00:15:47,000 --> 00:15:50,000 Mən initWithName, mənim parametr adı, bu var 296 00:15:50,000 --> 00:15:53,000 Mən, həqiqətən, bir tələbə yaradılması alıram yerləşir ki, 297 00:15:53,000 --> 00:15:56,000 və bu bir az sirli, lakin bu boilerplate növü 298 00:15:56,000 --> 00:15:58,000 Siz inşaatçılar daxil etmək istəyirəm ki,. 299 00:15:58,000 --> 00:16:02,000 Burada Bu başlatma funksiyası, initWithName, konstruktor bir növüdür. 300 00:16:02,000 --> 00:16:05,000 Siz əsasən yeni tələbə obyekt inşa edirik 301 00:16:05,000 --> 00:16:07,000 və bəlkə daxilində bəzi data göndərilməsi. 302 00:16:07,000 --> 00:16:11,000 Mən istəyirəm ilk şey mən bu super şey init zəng istəyirəm. 303 00:16:11,000 --> 00:16:15,000 >> Xatırla ki, mən. H faylı geri burada dedi 304 00:16:15,000 --> 00:16:21,000 hər şeyi bir NSObject bir tələbə də var. 305 00:16:21,000 --> 00:16:24,000 Yəni nə də nə etmək lazımdır bir tələbə yaratmaq zaman deməkdir 306 00:16:24,000 --> 00:16:28,000 əmin olun ki, mən ki, data bütün devralma edirəm ki NSObject 307 00:16:28,000 --> 00:16:32,000 da düzgün başlatılmış olunur. 308 00:16:32,000 --> 00:16:36,000 Mən demək lazımdır bu super əslində ana sinif müraciət gedir 309 00:16:36,000 --> 00:16:39,000 Mən devralma edirəm ki, mən başlamaq əmin etmək istəyirəm 310 00:16:39,000 --> 00:16:43,000 Mən bunu istifadə etməyə çalışırıq başlamaq əvvəl mən asılı deyiləm ki, hər şey. 311 00:16:43,000 --> 00:16:46,000 Ki başlatılmış Əgər doğru bu yalnız deyən kimi əgər malloc 312 00:16:46,000 --> 00:16:50,000 null qaytarmayıb sonra bəzi xassələri qəbulu başlaya bilərsiniz. 313 00:16:50,000 --> 00:16:54,000 >> JavaScript və PHP biz bu söz, bu çağırmışdı 314 00:16:54,000 --> 00:16:58,000 və bu sinif mövcud instansiya edilir. 315 00:16:58,000 --> 00:17:00,000 Objective-C biz bu özünü çağırırıq. 316 00:17:00,000 --> 00:17:04,000 Mən self.name deyəndə, o deməkdir ki, obyekt 317 00:17:04,000 --> 00:17:07,000 Mən tələbə alloc init dedi Mən yaradılmış, 318 00:17:07,000 --> 00:17:09,000 bir obyekt mənə geri vermək olacaq. 319 00:17:09,000 --> 00:17:12,000 Deməkdir ki, mən ki, obyekt adı təyin etmək üçün istədiyiniz 320 00:17:12,000 --> 00:17:15,000 Mən içəri keçib nə üçün 321 00:17:15,000 --> 00:17:18,000 C kimi Sadəcə, biz bu dot üzvlərinin daxil 322 00:17:18,000 --> 00:17:21,000 belə self.name tələbə obyekt adı deyir 323 00:17:21,000 --> 00:17:24,000 İndi yalnız daxil keçdi nə olacaq 324 00:17:24,000 --> 00:17:28,000 Mən, həqiqətən, bir şey geri almaq Bunu nəhayət, onu qaytara bilər. 325 00:17:28,000 --> 00:17:30,000 >> Suallar? 326 00:17:30,000 --> 00:17:34,000 OK, bu özünü = super, init 327 00:17:34,000 --> 00:17:37,000 siz tamamilə miras stuff başa düşmürəm əgər narahat etmir. 328 00:17:37,000 --> 00:17:40,000 Sadəcə bilirəm ki, Siz öz init metodu etmək istəyirsinizsə yalnız 329 00:17:40,000 --> 00:17:42,000 Bunu, siz getmək üçün yaxşı olacaq. 330 00:17:42,000 --> 00:17:44,000 Bəli. >> [Tələbə] Nə əgər özünü demektir? 331 00:17:44,000 --> 00:17:49,000 Bu o deməkdir zaman malloc bu null bərabər, əgər biz həmişə yoxlanılır şey 332 00:17:49,000 --> 00:17:51,000 bu null idi və sonra biz çıxış edib. 333 00:17:51,000 --> 00:17:55,000 Bu gəlirlər null, onda biz yəqin seg günah olacaq, çünki bu, eyni şeydir 334 00:17:55,000 --> 00:17:57,000 biz bu manipulyasiya etməyə çalışır başlamaq əgər. 335 00:17:57,000 --> 00:18:01,000 Yəni bizim tələbə sinif var. 336 00:18:01,000 --> 00:18:03,000 Biz iki yoldan biri bizim tələbələr başlamaq olar deməkdir. 337 00:18:03,000 --> 00:18:08,000 Mən tələbə alloc init demək Əgər mən yalnız yazırdı ki metodundan istifadə deyiləm, 338 00:18:08,000 --> 00:18:11,000 əvəzinə mən sadəcə, alice.name deyə bilərsiniz 339 00:18:11,000 --> 00:18:14,000 və indi mülkiyyət adı təyin etmək üçün gedirəm. 340 00:18:14,000 --> 00:18:17,000 >> Eynilə, mən initWithName metodu istifadə etmək istəyirsinizsə, 341 00:18:17,000 --> 00:18:20,000 Mən sadəcə alloc demək, sonra daha çox init deyərək bilər 342 00:18:20,000 --> 00:18:24,000 Mən yalnız yaratmışdır ki metodu zəng gedirəm, mən Bob keçmək gedirəm. 343 00:18:24,000 --> 00:18:30,000 Bu nöqtədə, bu obyekt Bob Bob bərabər bir adı var. 344 00:18:30,000 --> 00:18:35,000 OK, aşağı burada biz əvvəllər baxdı ki NSMutableArray kullanıyorum. 345 00:18:35,000 --> 00:18:38,000 Mən yeni array başlatılıyor alıram space.Then ayrılması alıram. 346 00:18:38,000 --> 00:18:40,000 Mən bu 2 şeyi əlavə etmək üçün gedirəm. 347 00:18:40,000 --> 00:18:43,000 Bu array artıq tələbə obyektləri tutur. 348 00:18:43,000 --> 00:18:46,000 Heç mən bu tələbələr bir sıra demək oldu Qeyd edək ki,. 349 00:18:46,000 --> 00:18:48,000 Mən bunu bir sıra, müddəti var bildirib. 350 00:18:48,000 --> 00:18:50,000 Sonra mən istəyirəm ki, bu nə daxilində bilər. 351 00:18:50,000 --> 00:18:52,000 Burada 2 obyektləri var. 352 00:18:52,000 --> 00:18:56,000 >> Nəhayət, mən burada, bu TF bir obyekt var. 353 00:18:56,000 --> 00:18:59,000 Burada TF.h artıq əsasən eyni şey. 354 00:18:59,000 --> 00:19:01,000 Mən NSObject, və yolu ilə devralma alıram 355 00:19:01,000 --> 00:19:03,000 siz siniflər yaratmaq zaman bu sizin üçün edilir, 356 00:19:03,000 --> 00:19:06,000 interface boilerplate bu cür. 357 00:19:06,000 --> 00:19:08,000 Bu tələbələrin əmlak var. 358 00:19:08,000 --> 00:19:15,000 Mən bir neçə üsulları burada həqiqətən bütün çox yoxdur ki, var 359 00:19:15,000 --> 00:19:18,000 və mən bu TF obyekt yaratmaq sonra o deməkdir ki, 360 00:19:18,000 --> 00:19:23,000 Mən bu kimi bu metodu dərəcəli zəng edə bilərsiniz. 361 00:19:23,000 --> 00:19:26,000 Objective-C sintaksis haqqında suallarınız biz bir daha daxil hərəkət başlamaq əvvəl 362 00:19:26,000 --> 00:19:30,000 maraqlı apps inkişaf stuff? 363 00:19:30,000 --> 00:19:34,000 >> OK, belə nin əslində bir iPhone app edək. 364 00:19:34,000 --> 00:19:39,000 IPhone app siz daxilində istifadə lazımdır ki, əsas sinifləri keçirmək kontrollerlər deyilir 365 00:19:39,000 --> 00:19:42,000 və görünüşü nəzarətçi əsasən bir ekran təmsil 366 00:19:42,000 --> 00:19:46,000 Sizin app daxilində, mən, məsələn, musiqi app Ben əgər 367 00:19:46,000 --> 00:19:50,000 bir görünüşü nəzarətçi Mən iPhone bütün mahnıları keçirmək olan mövqeyini əks bilər. 368 00:19:50,000 --> 00:19:53,000 Mən mahnı basın və ifa başlamaq zaman başqa bir görünüşü nəzarətçi ola bilər 369 00:19:53,000 --> 00:19:55,000 və ya rəssamların daxil aşağı qazma alıram kimi. 370 00:19:55,000 --> 00:19:59,000 O müxtəlif ekranlar hər bir müxtəlif görünüşü nəzarətçi kimi təmsil bilər 371 00:19:59,000 --> 00:20:04,000 və görünüşü nəzarətçi həqiqətən bu ekran işləri necə deyir ki, yalnız bir sinif edir. 372 00:20:04,000 --> 00:20:07,000 Məqsədi nəzarətçi daxilində Things, biz xüsusiyyətləri olacaq 373 00:20:07,000 --> 00:20:10,000 bir düyməsinə kimi şeylər bizim fikrimizcə nəzarətçi mülkiyyəti olacaq. 374 00:20:10,000 --> 00:20:13,000 >> Biz də üsulları var olacaq və bu, əsasən, hadisə işleyicileri var. 375 00:20:13,000 --> 00:20:16,000 Bu üsul bu düyməsini basın zaman deyir 376 00:20:16,000 --> 00:20:19,000 Mən, nəhayət, yenə bir şey etmək istəyirəm və 377 00:20:19,000 --> 00:20:24,000 biz cari instansiya daxil olmaq üçün bu özünü söz istifadə olacaq. 378 00:20:24,000 --> 00:20:29,000 IOS ilə interfeys yaratmaq üçün, həqiqətən, həqiqətən, həqiqətən asandır. 379 00:20:29,000 --> 00:20:32,000 Onlar bu gözəl drag və Interface Builder adlı açılan interface 380 00:20:32,000 --> 00:20:37,000 və 2 əsas anlayışlar ki, Objective-C Interface Builder tel 381 00:20:37,000 --> 00:20:40,000 IBOutlet və IBAction var. 382 00:20:40,000 --> 00:20:44,000 Bir IBOutlet sadəcə bir düyməsinə ki, bir əmlak bəyan əgər deyir ki, 383 00:20:44,000 --> 00:20:47,000 və siz, faktiki UI bir şey onu bağlamaq istəyirəm 384 00:20:47,000 --> 00:20:49,000 siz bir çıxış demək olacaq. 385 00:20:49,000 --> 00:20:51,000 Eynilə, bir olay işleyicisi təmsil etmək istəyirsinizsə, 386 00:20:51,000 --> 00:20:54,000 sonra bir hərəkət var demək olacaq. 387 00:20:54,000 --> 00:20:57,000 >> Həqiqətən bu qrafik təmsil qədər tel 388 00:20:57,000 --> 00:21:00,000 və kodu, həqiqətən, həqiqətən sadə. 389 00:21:00,000 --> 00:21:03,000 Bir IBOutlet əlavə etmək istəyirsinizsə, Siz bütün, klik nəzarət edir 390 00:21:03,000 --> 00:21:05,000 və bu, həqiqətən, hızlı bir misal görə bilərsiniz. 391 00:21:05,000 --> 00:21:07,000 Məlumatlarına Controller deyir burada basın nəzarət. 392 00:21:07,000 --> 00:21:09,000 Siz, əksinə interfeys daxil sürükleyin gedir, ya edirik 393 00:21:09,000 --> 00:21:13,000 bir hadisə handler bağlamaq istəyirsinizsə, siz interfeys sürükleyin olacaq 394 00:21:13,000 --> 00:21:15,000 digər istiqamətdə. 395 00:21:15,000 --> 00:21:20,000 Bir həqiqətən sadə iOS Məsələn nəzər salaq. 396 00:21:20,000 --> 00:21:23,000 >> Üzrə yeni layihə yaratmaq edək. 397 00:21:23,000 --> 00:21:25,000 Mən tətbiqi üçün bura gəlib gedirəm 398 00:21:25,000 --> 00:21:28,000 və mən Subay View Application basın gedirəm. 399 00:21:28,000 --> 00:21:31,000 Mən növbəti basın gedirəm. Mən layihənin adı verəcəyik. 400 00:21:31,000 --> 00:21:33,000 Mən bunu Xoşgəldiniz zəng edəcəyik. 401 00:21:33,000 --> 00:21:36,000 Maraqlıdır ki, Apple bir məhsul oluşturuyorsanız tutur 402 00:21:36,000 --> 00:21:38,000 ki, siz onu sata bilər və onlar pul edə bilərsiniz. 403 00:21:38,000 --> 00:21:41,000 Down burada bu iPhone app edir ki, gedirəm. 404 00:21:41,000 --> 00:21:44,000 Siz iPad app yarada, və ya bu apps biri yaratmaq istəyirsinizsə, 405 00:21:44,000 --> 00:21:47,000 ki, siz də bunu edə bilər, həm də cihazları dəstəkləyir. 406 00:21:47,000 --> 00:21:49,000 Bu sizin checkmarks kimi baxmaq istəyirəm nə. 407 00:21:49,000 --> 00:21:51,000 >> Biz sonra göreceksiniz storyboards, istifadə etmək istədiyiniz 408 00:21:51,000 --> 00:21:54,000 və siz mütləq, avtomatik arayış hesablanması istifadə etmək istədiyiniz 409 00:21:54,000 --> 00:21:58,000 olan malloc və pulsuz demək olan engelleyen bir gözəl xüsusiyyətidir. 410 00:21:58,000 --> 00:22:03,000 Siz malloc və pulsuz zəng etmək istədiyiniz halda, bu Checked tərk edəcək. 411 00:22:03,000 --> 00:22:07,000 Mən İrəli düyməsini basın lazımdır və bunu saxlamaq, istədiyiniz nəhayət, bu mənə sual edir. 412 00:22:07,000 --> 00:22:14,000 Mən yaratmaq təşkil edəcəyik və biz burada gedin. 413 00:22:14,000 --> 00:22:16,000 Yeni bir layihə yaratdıq. 414 00:22:16,000 --> 00:22:19,000 Burada sol ərzində mənim layihə daxilində olan bütün faylları var, 415 00:22:19,000 --> 00:22:22,000 və mən bütün dəstə var ki, qeyd, mən heç bir şey belə olmadı. 416 00:22:22,000 --> 00:22:24,000 IOS böyükdür. 417 00:22:24,000 --> 00:22:27,000 >> Məsələn, burada bu ViewController.h, 418 00:22:27,000 --> 00:22:30,000 Bu, mənim ilk görünüşü nəzarətçi təmsil edir 419 00:22:30,000 --> 00:22:32,000 Mənim app daxilində ilk ekran belə. 420 00:22:32,000 --> 00:22:34,000 İndi biz bu söylədiyini bilirik. 421 00:22:34,000 --> 00:22:36,000 Biz, bu sinif ViewController zəng edirəm deyərək edirik 422 00:22:36,000 --> 00:22:40,000 və ViewController bir UIViewController ki, hər şey 423 00:22:40,000 --> 00:22:43,000 və bu, yenə Apple üçün bizə lazımlı məhsullarının bir çox ki, yazırdı ki, bəzi sinif 424 00:22:43,000 --> 00:22:46,000 ekran keçirmək istəyirəm. 425 00:22:46,000 --> 00:22:50,000 Mən, həqiqətən, mənim fikrimcə, nəzarətçi nə müəyyən edə bilərsiniz burada deyil, 426 00:22:50,000 --> 00:22:52,000 və mən, həqiqətən, bu, hər hansı bir ehtiyac yoxdur çıxır. 427 00:22:52,000 --> 00:22:55,000 Bu Apple pulsuz üçün mənə verir boilerplate kodu. 428 00:22:55,000 --> 00:22:59,000 , Mən ilk lazım idi, və ya bir sinif yoxdur 429 00:22:59,000 --> 00:23:02,000 belə ki qurtarmaq və bu xilas edə bilər. 430 00:23:02,000 --> 00:23:05,000 OK, belə ki, bu, mənim boş ekran. 431 00:23:05,000 --> 00:23:08,000 >> İndi, bu MainStoryboard.storyboard basın bildirin 432 00:23:08,000 --> 00:23:11,000 maraqlı almaq başlayır və bu. 433 00:23:11,000 --> 00:23:14,000 Bu, mənim app ilk ekran təmsil edir. 434 00:23:14,000 --> 00:23:17,000 Mən bir düğme əlavə etmək istəyirsinizsə, HTML bir düyməsini tag yaratmaq idi. 435 00:23:17,000 --> 00:23:20,000 Android siz bir düyməsinə tag yaratmaq üçün 436 00:23:20,000 --> 00:23:23,000 lakin iOS Mən yalnız sağ alt burada enmək əgər 437 00:23:23,000 --> 00:23:27,000 Mən burada bu 3-cü bir basın əgər və bu obyektləri deyir yerləşir 438 00:23:27,000 --> 00:23:31,000 və mən aşağı diyirləyin və ya mən düyməsini üçün axtarış başlaya bilərsiniz. 439 00:23:31,000 --> 00:23:35,000 Mən, həqiqətən, bu doğru sürükleyin və açılan belə, əgər, bir düyməsinə baxmaq 440 00:23:35,000 --> 00:23:38,000 Mən yalnız mənim app bu ekran bir düğme əlavə etdik. 441 00:23:38,000 --> 00:23:41,000 Mən mətn dəyişdirmək istəyirsinizsə, mən ikiqat, bu basın 442 00:23:41,000 --> 00:23:47,000 bir şey kimi tamahlandırıcı demək "Mən basın." 443 00:23:47,000 --> 00:23:51,000 Bu app run əgər OK, indi, biz, bu tərtib 444 00:23:51,000 --> 00:23:54,000 belə çalıştırmak üçün mən üst sol oynat 'düyməsinə basın və app var. 445 00:23:54,000 --> 00:23:58,000 Mən bir şey etmədim və Mən şirin axtarır iPhone app var. 446 00:23:58,000 --> 00:24:01,000 Mən bunu dayandırmaq istəyirsinizsə, siz stop düyməsini basın 447 00:24:01,000 --> 00:24:03,000 daha fun çünki. 448 00:24:03,000 --> 00:24:07,000 >> Gəlin Mən, həqiqətən, Mən bu düyməsini basın zaman nə bir şey istəyirəm ki, deyirlər. 449 00:24:07,000 --> 00:24:09,000 Nə etmək lazımdır Bunu etmək üçün mən yaratmaq lazımdır 450 00:24:09,000 --> 00:24:13,000 Yeni hadisə handler və ya fəaliyyət. 451 00:24:13,000 --> 00:24:16,000 Yəni mən adlandırmaq istəyirəm ki, bəzi metodu yaratmaq lazımdır o deməkdir ki, 452 00:24:16,000 --> 00:24:18,000 Mən düyməsini basın zaman, belə üzrə yeni üsul yaratmaq imkan verir. 453 00:24:18,000 --> 00:24:20,000 Mən ViewController.h daxilində deyiləm. 454 00:24:20,000 --> 00:24:22,000 Mən bir üsul var ki, demək lazımdır. 455 00:24:22,000 --> 00:24:26,000 Mən görünüşü nəzarətçi bu zəng üçün gedirəm, çünki mən ilk bir tire lazımdır. 456 00:24:26,000 --> 00:24:28,000 Mən bu növü vermək lazımdır. 457 00:24:28,000 --> 00:24:31,000 Bu növü daha əvvəl gördüm ki IBAction şey olacaq. 458 00:24:31,000 --> 00:24:35,000 Bu hadisə handler edir, bir IBAction qayıtmaq olacaq belə 459 00:24:35,000 --> 00:24:38,000 və bu ki XCode bir ipucu edir 460 00:24:38,000 --> 00:24:40,000 bu mən bir şey tel istədiyiniz şeydir. 461 00:24:40,000 --> 00:24:45,000 Mən buttonPressed, nöqtəli vergül kimi, bir ad verə bilər. 462 00:24:45,000 --> 00:24:48,000 >> İndi mənim sinif daxilində yeni üsul elan etdik. 463 00:24:48,000 --> 00:24:50,000 Mən bu metodu mövcud malikdir etdik. 464 00:24:50,000 --> 00:24:53,000 İndi ViewController.m daxil bildirin, 465 00:24:53,000 --> 00:24:56,000 və bu üsul nə deyək. 466 00:24:56,000 --> 00:25:03,000 Mən yazmağa başlayın varsa, məsələn, (void) buttonPressed 467 00:25:03,000 --> 00:25:06,000 bildiriş XCode həqiqətən gözəl və mənim üçün autocompletes. 468 00:25:06,000 --> 00:25:09,000 Bu, həqiqətən gözəl deyil. 469 00:25:09,000 --> 00:25:12,000 Edir. M fayl daxilində mən də etibarsız deyə bilərəm ki, burada edək, 470 00:25:12,000 --> 00:25:15,000 ki IBAction həqiqətən bir növü deyil, çünki bu. 471 00:25:15,000 --> 00:25:19,000 Bu, faktiki olaraq, bir boşluq olması haradasa müəyyən hashtag oldu 472 00:25:19,000 --> 00:25:22,000 və yenidən, bu, yalnız deyir ki, XCode bir ipucu edir 473 00:25:22,000 --> 00:25:25,000 Mən bu hadisə handler olmaq istəyirik və nə yalnız ikinci görəcəyik. 474 00:25:25,000 --> 00:25:28,000 Bu düyməni basdı zaman mən annoying bir şey gedirəm 475 00:25:28,000 --> 00:25:30,000 bir popup göstərmək istəyirəm. 476 00:25:30,000 --> 00:25:35,000 >> Mən UIAlertView adlanan bu sinif yeni instansiya yarada etmək üçün, 477 00:25:35,000 --> 00:25:39,000 və bu Apple annoying öz-up'lar keçirmək olacaq yazırdı ki, bir sinif edir. 478 00:25:39,000 --> 00:25:43,000 Biz bu popup alert zəng edəcəyik, mən 2 addımlar var, bu obyekt yaratmaq üçün, xatırlayıram. 479 00:25:43,000 --> 00:25:46,000 Mən nə etmək lazımdır ilk şey yer ayırmaq deyil. 480 00:25:46,000 --> 00:25:48,000 Mən UIAlertView istəyirəm. 481 00:25:48,000 --> 00:25:51,000 I yer ayırmaq istəyirlər. Bu mənim ilk üsul var. 482 00:25:51,000 --> 00:25:53,000 Mənim növbəti üsul, onu başlamaq istəyirəm 483 00:25:53,000 --> 00:25:58,000 və mən initWithTitle adlanan bu böyük, Uzunmüddətli üsulu var. 484 00:25:58,000 --> 00:26:01,000 Bu əsasən bu popup deyir nəzarət olacaq. 485 00:26:01,000 --> 00:26:04,000 Mənim popup adı salam ola bilər. 486 00:26:04,000 --> 00:26:08,000 Bu up mesaj ola bilər "Bu iOS edir." 487 00:26:08,000 --> 00:26:10,000 Nümayəndəsi şey, mən nə bilmirəm. 488 00:26:10,000 --> 00:26:13,000 Gəlin bu heç bir şey deyirlər. 489 00:26:13,000 --> 00:26:18,000 İndi görünür olacaq ki, düyməsini "Bu, əmin deyil" kimi bir şey demək olar 490 00:26:18,000 --> 00:26:24,000 və mən, həqiqətən, hər hansı digər düymələri istəmirəm, belə ki, silin və bracket yaxın bildirin. 491 00:26:24,000 --> 00:26:27,000 >> OK, əlavə bir yaratmışdır. Biz də gedin. 492 00:26:27,000 --> 00:26:30,000 Bu yeni popup yarada necə. 493 00:26:30,000 --> 00:26:35,000 Mən, həqiqətən, popup göstərmək istəyirəm, mən şou metodu zəng etmək istəyirəm. 494 00:26:35,000 --> 00:26:38,000 Mən alert və şou deyə bilərəm ki, nə üçün, 495 00:26:38,000 --> 00:26:40,000 və yenə AutoComplete super gözəl idi. 496 00:26:40,000 --> 00:26:42,000 Mən yalnız s çap ki, əgər nə unuttum Əgər 497 00:26:42,000 --> 00:26:45,000 Mən bunu nə anlamaq üçün burada vasitəsilə hərəkət edə bilər 498 00:26:45,000 --> 00:26:48,000 və gözəl filtreler. 499 00:26:48,000 --> 00:26:52,000 İndi bu yeni popup yaratmışdır. 500 00:26:52,000 --> 00:26:55,000 Biz sonra nümayəndəsi nə deməkdir qayıda bilərsiniz 501 00:26:55,000 --> 00:26:58,000 və indi mən bu metodu atəş olmaq istəyirəm demək istəyirəm 502 00:26:58,000 --> 00:27:01,000 Mən düyməsini basın zaman, mən eskizlərinin qayıtmaq gidiyorum belə 503 00:27:01,000 --> 00:27:04,000 və mən indi bu IBAction əlavə etmək istəyirəm. 504 00:27:04,000 --> 00:27:06,000 Siz istədiyiniz ilk şey düyməsini basın. 505 00:27:06,000 --> 00:27:08,000 Mən bu düyməsini basın zaman mən nə bir şey istəyirəm. 506 00:27:08,000 --> 00:27:10,000 Mən nəzarət basıb saxlayın gedən deyiləm. 507 00:27:10,000 --> 00:27:13,000 Mən basın və düyməsinə sürükleyin gedirəm 508 00:27:13,000 --> 00:27:15,000 burada yerləşir onu Məlumatlarına Controller deyir. 509 00:27:15,000 --> 00:27:17,000 Biz bu gözəl qədər işıq olduğunu görə bilərsiniz. 510 00:27:17,000 --> 00:27:22,000 >> Mən siçan ilə gedək, mən bəzi variantları var mən indi burada bu popup var. 511 00:27:22,000 --> 00:27:24,000 Bunlardan biri mən qeydiyyatdan olar ki, hadisələr deyil. 512 00:27:24,000 --> 00:27:28,000 Bu mənim h fayl IBActions kimi elan o üsulları vardır. 513 00:27:28,000 --> 00:27:31,000 Bu, XCode nə az siyahısı görünür bilir necə 514 00:27:31,000 --> 00:27:33,000 belə ki, yalnız bir işarə var. 515 00:27:33,000 --> 00:27:37,000 Mən bərk düyməsini basın varsa, indi hadisə handler qeydə etdik. 516 00:27:37,000 --> 00:27:41,000 JavaScript biz Mən hadisə handler qeydə bəzi kodu demək idi. 517 00:27:41,000 --> 00:27:43,000 Objective-C, həqiqətən, asan idi. 518 00:27:43,000 --> 00:27:46,000 Mən bu çalıştırıyorsanız 519 00:27:46,000 --> 00:27:49,000 İndi düyməsini basın zaman mənim hadisə handler, yanğın davam edir 520 00:27:49,000 --> 00:27:51,000 və bu popup almaq üçün gedirəm. 521 00:27:51,000 --> 00:27:54,000 Orada Super, super sadə. 522 00:27:54,000 --> 00:27:57,000 >> Əgər qeydiyyatdan baş verən hadisələr bütün görmək istəyirsinizsə 523 00:27:57,000 --> 00:28:00,000 komponenti mən bu düyməni basın əgər 524 00:28:00,000 --> 00:28:02,000 və mən sağ üçün bura gəl 525 00:28:02,000 --> 00:28:05,000 ilk, mən düyməsinə növü kimi şeylər edə bilərsiniz burada görə bilərsiniz 526 00:28:05,000 --> 00:28:08,000 o I və ya əlavə contact button biri mənə əgər 527 00:28:08,000 --> 00:28:10,000 və ya hər hansı. 528 00:28:10,000 --> 00:28:13,000 Mən bu düyməni olan hadisələr bütün görmək istəyirsinizsə 529 00:28:13,000 --> 00:28:16,000 Mən sağ burada bütün yol gəlib əgər 530 00:28:16,000 --> 00:28:19,000 biz bu müxtəlif tədbirlər bütün hadisələri burada görə bilərsiniz. 531 00:28:19,000 --> 00:28:23,000 Mən tap ikiqat və ya hər zaman düyməsini gidelim zaman, 'düyməsinə basın bilərsiniz 532 00:28:23,000 --> 00:28:26,000 və yalnız qeydə biri, bu hadisə Inside Touch Up adlanır 533 00:28:26,000 --> 00:28:29,000 və bu kimi tezliklə mənim barmaq 'düyməsinə off gəlir kimi deyir ki, 534 00:28:29,000 --> 00:28:32,000 Bu tədbirdə yanğın gedir və dəqiq yalnız nə var. 535 00:28:32,000 --> 00:28:36,000 Bu default düyməni basdı hadisə növüdür. 536 00:28:36,000 --> 00:28:39,000 >> Hər hansı sual, bu günə qədər? 537 00:28:39,000 --> 00:28:43,000 Okay ki, biz kodu şeyi tel başlaya bilərsiniz necə 538 00:28:43,000 --> 00:28:46,000 bizim interface daxilində şey daxil. 539 00:28:46,000 --> 00:28:49,000 Biz idi ilk şey, kodu tapmaq idi saxla 540 00:28:49,000 --> 00:28:54,000 və sonra biz kodu interfeys qədər simli 541 00:28:54,000 --> 00:28:57,000 və bizim ilk app var. 542 00:28:57,000 --> 00:29:00,000 OK, həqiqətən sərin idi və biz bu düyməni yaratmışdır. 543 00:29:00,000 --> 00:29:03,000 Biz əgər xassələri bir dəstə yaratmaq üçün mənə nə 544 00:29:03,000 --> 00:29:05,000 Bu düymələr təmsil? 545 00:29:05,000 --> 00:29:08,000 Məsələn, Tic Tac ucu mən, 9 düymələri var 546 00:29:08,000 --> 00:29:11,000 və 9 dəfə sürükle üçün super, super annoying olarıq 547 00:29:11,000 --> 00:29:14,000 və ya 81 Tic Tac Toe etmək əvəzinə 9 olsaydı 548 00:29:14,000 --> 00:29:17,000 və mən sürükleyin və 81 dəfə düşmək idi ki, topal deyil. 549 00:29:17,000 --> 00:29:20,000 Biz əvəzinə edə bilərsiniz çox bir HTML kimi 550 00:29:20,000 --> 00:29:23,000 biz kimlikleri və adları kimi şeylər idi və biz hər şeyi axtara bilər 551 00:29:23,000 --> 00:29:27,000 onların ID tərəfindən tags adlı iOS bənzər bir anlayış var. 552 00:29:27,000 --> 00:29:31,000 >> A tag sadəcə bir komponent üçün unikal ədədi tanımlayıcı. 553 00:29:31,000 --> 00:29:34,000 Mən bu 0 tag var demək Əgər, misal üçün, 554 00:29:34,000 --> 00:29:38,000 Mən bir düğme yaratmaq və 0 tag verir, və biz yalnız ikinci bunu necə görürsünüz əgər, 555 00:29:38,000 --> 00:29:41,000 Hesab edirəm ki, düyməsini almaq istəyirsinizsə mən sadəcə mən zəng etmək istəyirəm deyə bilərsiniz 556 00:29:41,000 --> 00:29:45,000 burada artıq obyekt üsul viewWithTag, 557 00:29:45,000 --> 00:29:48,000 Məsələn, cari ekran təmsil edən self.view,. 558 00:29:48,000 --> 00:29:53,000 Hesab edirəm ki, viewWithTag metodu zəng, mən tag 0 düyməsini geri çəkmək üçün gedirəm. 559 00:29:53,000 --> 00:29:58,000 Binasının Tic Tac ucu bu nəzər salaq. 560 00:29:58,000 --> 00:30:01,000 Birincisi, bu, mənim eskizlərinin edir. 561 00:30:01,000 --> 00:30:05,000 Mən bu 10 UI düymələr yaratdıq. 562 00:30:05,000 --> 00:30:07,000 Onlar bütün eyni ölçüdə istəyirik edək. 563 00:30:07,000 --> 00:30:11,000 Mən bu bir basın və mən bu sağ burada qayıtmaq edin 564 00:30:11,000 --> 00:30:15,000 siz, mən burada font düzəlişlər, mən bir az böyük font etdi görürsünüz 565 00:30:15,000 --> 00:30:19,000 lakin mən də nə mən bu tag müəyyən idi. 566 00:30:19,000 --> 00:30:23,000 Mən bu 1 tag var ki, və sol üst edir. 567 00:30:23,000 --> 00:30:26,000 >> İndi mən başqa düyməsini basın varsa, burada bu ikinci biri kimi, 568 00:30:26,000 --> 00:30:29,000 İndi mənim tag 2 olduğunu görəcəksiniz. 569 00:30:29,000 --> 00:30:32,000 Bu düymələri hər yalnız unikal tag var 570 00:30:32,000 --> 00:30:35,000 və bu sonra necə əlaqə başlamaq gedirəm edir 571 00:30:35,000 --> 00:30:38,000 Mənim app ilə. 572 00:30:38,000 --> 00:30:40,000 Bu, bir görünüşü nəzarətçi bütün daxili 573 00:30:40,000 --> 00:30:42,000 lakin burada biz nə edir. 574 00:30:42,000 --> 00:30:44,000 Biz burada 3 xassələri var. 575 00:30:44,000 --> 00:30:49,000 İlk və son bir mənim heyəti dövləti təmsil edir. 576 00:30:49,000 --> 00:30:53,000 Əsasən bu ilk bir Xs və Os olduğu təmsil bir sıra edir. 577 00:30:53,000 --> 00:30:57,000 Bu, digər bir burada olan növbəsində bu bizə deyir. 578 00:30:57,000 --> 00:31:01,000 Mən də burada bu şeylər var ki, görəcəksiniz. 579 00:31:01,000 --> 00:31:05,000 Əvvəl biz xassələri elan zaman biz onlara bir ad və bir növü verdi. 580 00:31:05,000 --> 00:31:08,000 Biz də burada bəzi əlavə məlumat verə bilər. 581 00:31:08,000 --> 00:31:11,000 Bu ilk nonatomic deyir, bu nə deyir 582 00:31:11,000 --> 00:31:16,000 əsasən yalnız bir şey heç bir zaman bu dəyişən daxil olmaq üçün çalışır olacaqsınız. 583 00:31:16,000 --> 00:31:19,000 Siz, multi-yivli ki, daha kompleks tətbiqləri edə 584 00:31:19,000 --> 00:31:22,000 və belə geri Not biz müxtəlif mövzuları idi 585 00:31:22,000 --> 00:31:25,000 və müxtəlif sprites eyni zamanda müxtəlif şeyler bilər. 586 00:31:25,000 --> 00:31:29,000 >> Ki, biz axtarır olacaq ki, bir şey olmayan halda, yoxsa 587 00:31:29,000 --> 00:31:33,000 biz nonatomic demək əgər həqiqətən şeyi bir az daha sürətli etmək olacaq. 588 00:31:33,000 --> 00:31:37,000 Biz də təyin güclü və ya zəif adlanan bu şey var. 589 00:31:37,000 --> 00:31:40,000 Bu təyin yalnız bu standart bir növü olduğunu söyləyir. 590 00:31:40,000 --> 00:31:43,000 Bu yalnız bir bool, çünki bu, bir obyekt və ya bir göstərici deyil 591 00:31:43,000 --> 00:31:46,000 belə bool Objective-C daxil edilir. 592 00:31:46,000 --> 00:31:49,000 Bu burada göstəricilər ilə xülya bir şey etməyə cəhd etməyin deyir. 593 00:31:49,000 --> 00:31:51,000 Bu müntəzəm köhnə scaler var. 594 00:31:51,000 --> 00:31:54,000 Güclü və zəif, bu zəif əslində deyir 595 00:31:54,000 --> 00:31:57,000 Mən bu görünüşü nəzarətçi bir şey işarə etmək istəyirəm. 596 00:31:57,000 --> 00:32:00,000 Mən, həqiqətən, ayrılması davam və ya bu özümü init deyiləm. 597 00:32:00,000 --> 00:32:04,000 The interface builder, mən app çalıştırdığınızda, bütün başlatma idarə edir. 598 00:32:04,000 --> 00:32:07,000 Mən zəif demək, o başqası bu yaratmaq olacaq deyir. 599 00:32:07,000 --> 00:32:09,000 Mən güclü demək, bu, mən biri gedirəm deyir ki, 600 00:32:09,000 --> 00:32:12,000 ki, bu board obyekt yaratmaq oldu 601 00:32:12,000 --> 00:32:14,000 və belə burada mən burada daha çox üsulları var 602 00:32:14,000 --> 00:32:18,000 Məsələn, yeni oyun düyməni basdı zaman üçün fəaliyyət, 603 00:32:18,000 --> 00:32:20,000 digər düymələri hər hansı bərk zaman üçün fəaliyyət, 604 00:32:20,000 --> 00:32:23,000 və Et Cetera. 605 00:32:23,000 --> 00:32:26,000 >> Biz Tic Tac ucu məntiqi çox çox nəzərə almaq deyil 606 00:32:26,000 --> 00:32:30,000 çox maraqlı, lakin edək nəzər baxmayaraq 607 00:32:30,000 --> 00:32:33,000 biz iOS daxilində edə bilər ki, bəzi şeyləri. 608 00:32:33,000 --> 00:32:35,000 Bu yeni oyun üsulu atəş olacaq 609 00:32:35,000 --> 00:32:37,000 Mən yeni oyun düyməsini basın zaman. 610 00:32:37,000 --> 00:32:41,000 Qədər mən sadəcə mənim eskizlərinin artıq gəlib ki, çəngəl. 611 00:32:41,000 --> 00:32:43,000 Yeni oyun tıklayan. 612 00:32:43,000 --> 00:32:47,000 Mən sağ buraya gəlmək varsa, mən görürəm ki, 613 00:32:47,000 --> 00:32:50,000 Bu newGame metodu simli edir Inside Up Touch. 614 00:32:50,000 --> 00:32:53,000 Bu atəş almaq üçün gedir görə. 615 00:32:53,000 --> 00:32:56,000 Bu newGame üsul bir set up etmək niyyətindədir. 616 00:32:56,000 --> 00:32:59,000 Mən siz board dövlət təmizləmək istəyirsiniz olacaq. 617 00:32:59,000 --> 00:33:01,000 Bu mutable seriallarda bir gözəl üsuldur. 618 00:33:01,000 --> 00:33:03,000 Bu, artıq X öz növbəsində demək gedir 619 00:33:03,000 --> 00:33:07,000 və indi bu viewWithTag şey istifadə etmək gedirəm. 620 00:33:07,000 --> 00:33:11,000 >> Mən düymələr tags 1-9 var bilirik ki, 621 00:33:11,000 --> 00:33:13,000 və mən özbaşına seçilmiş bir şey var. 622 00:33:13,000 --> 00:33:15,000 Mən boş hər bir düyməsinə mətn qurmaq istəyirsinizsə 623 00:33:15,000 --> 00:33:17,000 Mən yalnız bir yeni oyun açılmış və hər hansı istəmirəm, çünki 624 00:33:17,000 --> 00:33:20,000 Mən bunu edə bilərsiniz artıq Xs və ya Os yola düşəcək. 625 00:33:20,000 --> 00:33:24,000 Mən etiketi baxımından, 1, 2, 3, 4 Et Cetera mənə deyə bilərsiniz. 626 00:33:24,000 --> 00:33:27,000 Bu müxtəlif düyməsini hər dəfə çəkəcəyəm. 627 00:33:27,000 --> 00:33:30,000 Burada UIButton üçün tökmə gedirəm. 628 00:33:30,000 --> 00:33:33,000 Biz üzüb gedirdi və əksinə ints tökmə bilər kimi 629 00:33:33,000 --> 00:33:37,000 bu bir UIButton bu salmaq istəyirəm ki, deyir. 630 00:33:37,000 --> 00:33:40,000 Deməkdir ki, bu cür UIButton * olacaq 631 00:33:40,000 --> 00:33:43,000 çünki göstəricilərinə, amma narahat olmayın, onlar artıq qorxudan deyilik. 632 00:33:43,000 --> 00:33:47,000 >> Sonra mən bu üsulu zəng gedirəm bu düyməni var. 633 00:33:47,000 --> 00:33:50,000 Bu üsul setTitle forState adlanır və bu deyir olunur 634 00:33:50,000 --> 00:33:53,000 Mən boş string olmaq düyməsinə mətn qurmaq istəyirəm 635 00:33:53,000 --> 00:33:57,000 və mən onu bərk deyil zaman boş string olmaq istəyirəm. 636 00:33:57,000 --> 00:34:01,000 Mən bu metodu istifadə edirəm, mən düyməsinə mətn dəyişə bilərsiniz 637 00:34:01,000 --> 00:34:04,000 kimsə edib, ancaq 'düyməsinə yalnız orada oturan zaman demək istəyirəm kimi 638 00:34:04,000 --> 00:34:07,000 Mən mətn boş olsun. 639 00:34:07,000 --> 00:34:10,000 Nəhayət, biz, mənim board başlamaq olacaq 640 00:34:10,000 --> 00:34:12,000 və mən, hər şey 0 hazırda demək gedirəm 641 00:34:12,000 --> 00:34:15,000 Bu board belə üzvləri dəyişməz bir mutable array edir 642 00:34:15,000 --> 00:34:21,000 olan I addObject üsul və yalnız bir 0 daxilində zəng edə bilərsiniz deməkdir. 643 00:34:21,000 --> 00:34:23,000 Mən yeni bir oyun yaratmaq zaman nə baş var. 644 00:34:23,000 --> 00:34:25,000 >> Nin başqa bir nəzər salaq. 645 00:34:25,000 --> 00:34:28,000 Burada Bu üsul bərk olacaq ki IBAction edir 646 00:34:28,000 --> 00:34:31,000 hər dəfə bu meydanların bir bərk. 647 00:34:31,000 --> 00:34:33,000 İndi bəzi Tic Tac ucu məntiq burada var. 648 00:34:33,000 --> 00:34:36,000 Biz onun öz növbəsində edir anlamaq 649 00:34:36,000 --> 00:34:39,000 və biz bir X və ya O müəyyən əsaslanır 650 00:34:39,000 --> 00:34:43,000 lakin biz bu eyni hadisə handler yeniden edirik ki, görürsünüz 651 00:34:43,000 --> 00:34:45,000 o düymələri hər bir bir. 652 00:34:45,000 --> 00:34:49,000 Mən üst sol düyməsini bir üsul yoxdur ki, deməkdir ki, 653 00:34:49,000 --> 00:34:52,000 Mən aşağı sağ düyməsini üçün müxtəlif üsul ki, görülən bilər baxmayaraq. 654 00:34:52,000 --> 00:34:54,000 Bu həqiqətən yaxşı dizayn deyil. 655 00:34:54,000 --> 00:34:57,000 Mən burada yapýyorum Mən, həqiqətən, müəyyən gedirəm edir 656 00:34:57,000 --> 00:35:00,000 bərk ki düyməsinə tag edir. 657 00:35:00,000 --> 00:35:04,000 Bu oyun metodu bir mübahisə edir ki, görürsünüz. 658 00:35:04,000 --> 00:35:07,000 Bu göndərən deyirlər və nə göndərən göndərən gedir edilir 659 00:35:07,000 --> 00:35:10,000 dəqiq zaman tədbirlər nə təmsil edir. 660 00:35:10,000 --> 00:35:15,000 Mən bir düyməsini basın, bu göndərən ki UIButton olacaq 661 00:35:15,000 --> 00:35:18,000 Mən, həqiqətən, bərk ki, o deməkdir ki, ki UIButton 662 00:35:18,000 --> 00:35:20,000 Mən tag yaradılmışdır çünki tag var. 663 00:35:20,000 --> 00:35:23,000 >> Mən tag əldə etmək istəyirsinizsə, mən sadəcə demək olar 664 00:35:23,000 --> 00:35:26,000 Mən göndərən tag istəyirəm 665 00:35:26,000 --> 00:35:28,000 və yenidən, mən yalnız bir UIButton üçün casted etdik. 666 00:35:28,000 --> 00:35:32,000 Mən göndərən bir UIButton olacaq bilmək baş verir. 667 00:35:32,000 --> 00:35:34,000 Bu həmişə UIButton olmaq deyil. 668 00:35:34,000 --> 00:35:36,000 Mən, məsələn, eyni olay işleyicisi qeydiyyatdan bilər 669 00:35:36,000 --> 00:35:38,000  bir düyməsini bir kaydırıcıyı üçün bir biri üçün. 670 00:35:38,000 --> 00:35:40,000 Bu halda, onlar bütün düymələri olduğunu biliyorum, mən demək gedirəm 671 00:35:40,000 --> 00:35:43,000 Mən bu bir düyməsinə olmaq istəyirəm, sonra mən tag əldə edə bilərsiniz 672 00:35:43,000 --> 00:35:48,000 və tag mən indi board daxilində am yerləşir bilirik. 673 00:35:48,000 --> 00:35:51,000 Mən sadəcə X və ya O, öz növbəsində flip bilər, ya bilərsiniz 674 00:35:51,000 --> 00:35:54,000 , et Cetera qalib olan edin. 675 00:35:54,000 --> 00:35:59,000 >> Bu günə qədər hər hansı suallar? 676 00:35:59,000 --> 00:36:02,000 OK, biz online-biz çox almaq istəmirəm olunub bütün kodu 677 00:36:02,000 --> 00:36:06,000 bu Tic Tac ucu məntiq, indi siz həqiqətən bilərsiniz 678 00:36:06,000 --> 00:36:09,000 biz edirik bütün, biz bu sıra artıq loop edirik ki, 679 00:36:09,000 --> 00:36:13,000 biz burada loops üçün bir neçə var, və biz yalnız görmək karşılaştırdığınızdan 680 00:36:13,000 --> 00:36:18,000 biz bütün satırlar, belə bir sütun və ya bir şey bir matç matç var. 681 00:36:18,000 --> 00:36:21,000 Mən bu düymələri bir kran əgər həqiqətən bu app çalıştırmak üçün 682 00:36:21,000 --> 00:36:24,000 ki, oyun üsulu atəşə tutulmuşdur, yalnız müəyyən deməkdir ki, 683 00:36:24,000 --> 00:36:31,000 düyməsini bir X olmaq, belə ki, indi bu düyməni bir O olmaq və s edəcək 684 00:36:31,000 --> 00:36:35,000 və belə ki, bu bir səhifə app ilə qarşılıqlı başlayaraq edirsinizsə bilərsiniz. 685 00:36:35,000 --> 00:36:38,000 >> Biz kodu yazmaq lazımdır ki, diqqətlə oxumaq çekinmeyin 686 00:36:38,000 --> 00:36:43,000 amma indi yalnız bir səhifə daha çox bəzi apps haqqında danışmaq edək. 687 00:36:43,000 --> 00:36:47,000 Tic Tac ucu kimi maraqlı iOS daxilində, apps bir çox idi 688 00:36:47,000 --> 00:36:50,000 Bu qazma cür çox ekranlı şeyi aşağı edir. 689 00:36:50,000 --> 00:36:54,000 Biz danışmaq lazımdır ki, ilk anlayış, protokollar var 690 00:36:54,000 --> 00:36:57,000 və protokol sadəcə üsulları bir sıra 691 00:36:57,000 --> 00:36:59,000 siz müəyyən söz bilər. 692 00:36:59,000 --> 00:37:02,000 I 2 metodları ilə bu yeni protokol, bu ilk bir yaratmaq, əgər 693 00:37:02,000 --> 00:37:05,000 qaytarılması növü etibarsız olduqda, bu foo çağırıb. 694 00:37:05,000 --> 00:37:07,000 Bu arqumentlər heç edir. Mən başqa bir metodu var. 695 00:37:07,000 --> 00:37:11,000 Bu int qaytarır. Mən bu bar adlanır və bir mübahisə edir. 696 00:37:11,000 --> 00:37:14,000 Bütün bu protokol, burada SomeProtocol qədər deyirlər ki, 697 00:37:14,000 --> 00:37:19,000 bu kimsə həyata keçirə bilər şeyi bir sıra var. 698 00:37:19,000 --> 00:37:22,000 Mən daxilində bu protokolun foo nə bildirib yoxdur. 699 00:37:22,000 --> 00:37:26,000 Əksinə, mən yalnız istəyirsinizsə foo müəyyən edə bilər deyərək alıram. 700 00:37:26,000 --> 00:37:30,000 Mən bir görünüşü nəzarətçi yaratmaq və ya bir sinif yaradılması alıram edin 701 00:37:30,000 --> 00:37:33,000 Mən daxili ki, sinif vəd həyata bilər 702 00:37:33,000 --> 00:37:40,000 bu metodlar, bəzi, belə ki, məsələn, əgər demək 703 00:37:40,000 --> 00:37:43,000 indi mən sizə vəd edilməsi alıram deyir, daxili ki, 704 00:37:43,000 --> 00:37:50,000 Bu baxımdan nəzarətçi sinif I foo və bar üçün anlayışlar var. 705 00:37:50,000 --> 00:37:52,000 >> Niyə faydalıdır? 706 00:37:52,000 --> 00:37:55,000 IOS daxilində komponentləri bir çox bu istifadə etmək 707 00:37:55,000 --> 00:37:58,000 dizayn model nümayəndə heyəti adlanır və nümayəndə heyəti nə deyir 708 00:37:58,000 --> 00:38:01,000 ki, məsələn, bir mətn qutusuna varsa 709 00:38:01,000 --> 00:38:04,000 və mətn qutusuna daxilində qeydiyyatdan ola bilər ki, bəzi hadisələr var 710 00:38:04,000 --> 00:38:07,000 deyil, mən nə edə ayrı-ayrı hadisələr yaratmaqdan deyə bilər 711 00:38:07,000 --> 00:38:10,000 Bu mətn qutusu nümayəndəsi bir obyekt olacaq. 712 00:38:10,000 --> 00:38:13,000 Mən indi bir nümayəndə ki, o deməkdir ki, 713 00:38:13,000 --> 00:38:16,000 bir hadisə, mətn qutusuna atəş olardı zaman 714 00:38:16,000 --> 00:38:18,000 daha çox və ya bu kimi bir şey qeydiyyatdan olan 715 00:38:18,000 --> 00:38:21,000 yalnız nümayəndəsi bir üsul zəng edəcək. 716 00:38:21,000 --> 00:38:24,000 Məsələn, içərisində mənim metin qutusu Mən basın zaman üçün bir üsul var 717 00:38:24,000 --> 00:38:27,000 ki, sağ alt 'düyməsinə işlər 718 00:38:27,000 --> 00:38:30,000 və belə daha çox deyə bilərəm nə hadisə handler olunur qeydiyyatdan 719 00:38:30,000 --> 00:38:34,000 mətn qutusuna, burada sizə bir metodu zəng etmək üçün istədiyiniz bir obyekt 720 00:38:34,000 --> 00:38:37,000 hər dəfə kimsə presleri görülən düyməsini 721 00:38:37,000 --> 00:38:40,000 və ki, obyekt bir protokol həyata keçirilməsi o deməkdir ki, 722 00:38:40,000 --> 00:38:45,000 Mən ki, görülən düyməsini fəaliyyət müəyyən söz deyir 723 00:38:45,000 --> 00:38:47,000 çünki bu metod müəyyən etmir və OK düyməsini basın varsa, 724 00:38:47,000 --> 00:38:49,000 sonra confusing olacaq. 725 00:38:49,000 --> 00:38:55,000 >> Nin Məsələn nəzər salaq. 726 00:38:55,000 --> 00:38:58,000 Burada sadəcə, bir mətn qutusuna var 727 00:38:58,000 --> 00:39:04,000 və bu sağ burada bu mətn qutusuna xüsusiyyətləri biri nümayəndəsi deyil. 728 00:39:04,000 --> 00:39:06,000 Bu sinif bir mülkiyyətidir. 729 00:39:06,000 --> 00:39:09,000 Mən burada idi mən tıkladım nəzarət və mən burada bu yerdən sürüklənəcəklər 730 00:39:09,000 --> 00:39:13,000 görünüşü nəzarətçi və bu mətn qutusu nümayəndəsi deyir 731 00:39:13,000 --> 00:39:18,000 görünüşü nəzarətçi olacaq. 732 00:39:18,000 --> 00:39:20,000 Bəzi tədbirlər baş deyil, qeydiyyata çox zaman deməkdir ki, 733 00:39:20,000 --> 00:39:25,000 Mən sizə nümayəndəsi onları göndərmək istədiyiniz ayrı-ayrı hadisə işleyicileri. 734 00:39:25,000 --> 00:39:28,000 İndi mənim fikrimcə nəzarətçi nəzər salaq. 735 00:39:28,000 --> 00:39:32,000 Edin. H fayl daxilində bir söz etdik. 736 00:39:32,000 --> 00:39:36,000 Mən bu protokol daxilində bəzi üsullarını tətbiq vəd etdik 737 00:39:36,000 --> 00:39:38,000 UITextFieldDelegate və yenə adlı 738 00:39:38,000 --> 00:39:42,000 bu yalnız mən həyata seçə bilərsiniz ki, bəzi bəzi şeyləri siyahısı. 739 00:39:42,000 --> 00:39:46,000 >> Mən. M faylı buraya, mən belə bir üsul tətbiq edir. 740 00:39:46,000 --> 00:39:49,000 Mən bunu textFieldShouldReturn aradıktan 741 00:39:49,000 --> 00:39:52,000 ki, protokol daxilində adlanır nə çünki. 742 00:39:52,000 --> 00:39:57,000 İndi ki, mətn sahəsində görülən düyməsini basın zaman içərisində 743 00:39:57,000 --> 00:40:00,000 bu deyilən almaq üçün neler, belə bir hadisə handler qeydiyyatdan vermədi. 744 00:40:00,000 --> 00:40:03,000 Mən nümayəndə bağlı və bu hadisə atəşə zaman 745 00:40:03,000 --> 00:40:08,000 bu mənim eskizlərinin üçün buraya gəlmək və run əgər adlı almaq ki metodu it- 746 00:40:08,000 --> 00:40:11,000 ki, yükləmə var, biz bu nə görə bilərsiniz. 747 00:40:11,000 --> 00:40:13,000 Mənim ekranda I 2 şey var. 748 00:40:13,000 --> 00:40:16,000 Mən bu mətn sahəsində var və mən bu etiket var. 749 00:40:16,000 --> 00:40:19,000 Mən sadəcə mən bu etiketin mətn mənə dedi alıram 750 00:40:19,000 --> 00:40:23,000 istifadəçi mətn sahəsində daxilində tipli nə bərabər olmalıdır. 751 00:40:23,000 --> 00:40:26,000 Burada növbəti line sadəcə mən zəng edirəm ki, bir metodu 752 00:40:26,000 --> 00:40:29,000 Mən sizə klaviatura gizlətmək istəyirsinizsə deyir ki, mətn sahəsində. 753 00:40:29,000 --> 00:40:33,000 Bu yalnız Apple seçdi ki, ixtiyari metodudur. 754 00:40:33,000 --> 00:40:38,000 >> Mən hər şeyi qədər tel idi bir şey idi əvvəl Yenə, mən ilk buraya gəldi. 755 00:40:38,000 --> 00:40:42,000 Görünüşü nəzarətçi mən, mətn qutusuna üzərində sürükleyin. 756 00:40:42,000 --> 00:40:46,000 Mən bu mətn sahəsində mülkiyyət edə bilər ki, gedək, mən burada görə bilərsiniz 757 00:40:46,000 --> 00:40:49,000 artıq burada görünüşü nəzarətçi ildən əmlakın müəyyən etdik 758 00:40:49,000 --> 00:40:52,000 bir mətn sahəsində bir IBOutlet edir. 759 00:40:52,000 --> 00:40:55,000 Bu bu əmlakın qədər tel bilər ki, deyir 760 00:40:55,000 --> 00:40:59,000 mənim UI bir mətn sahəsində. 761 00:40:59,000 --> 00:41:03,000 İndi bu basın zaman yazmağa başlaya bilərsiniz. 762 00:41:03,000 --> 00:41:06,000 Mən görülən düyməsini basın əgər İndi bu yanğın davam edir 763 00:41:06,000 --> 00:41:08,000 Mən indi cavab verə bilər ki, bir hadisə. 764 00:41:08,000 --> 00:41:10,000 No hadisə işleyicileri. 765 00:41:10,000 --> 00:41:13,000 Mən yalnız həyata düyməsini cavab nasıl. 766 00:41:13,000 --> 00:41:15,000 Mənada etmək? 767 00:41:15,000 --> 00:41:20,000 >> Bu, siz heç özünüz tapa bilər bir dizayn model deyil 768 00:41:20,000 --> 00:41:23,000 öz protokol yaradılması, ancaq bilirsiniz ki, bəzi 769 00:41:23,000 --> 00:41:27,000 müxtəlif iOS komponentləri müxtəlif yollarla hadisələr qeydiyyatdan keçin. 770 00:41:27,000 --> 00:41:29,000 Buttons, misal üçün, o IBActions istifadə edin. 771 00:41:29,000 --> 00:41:32,000 Mətn sahələrində, digər tərəfdən, nümayəndə istifadə edir. 772 00:41:32,000 --> 00:41:36,000 Biz görürük və sənədlərin qədər daxilində bütün baxa bilərsiniz. 773 00:41:36,000 --> 00:41:41,000 Yeri gəlmişkən, sizin üçün iOS daxil UI məhsullarının bir ton, həqiqətən var 774 00:41:41,000 --> 00:41:46,000 belə, məsələn, yol mən sağ alt görülən demək ki edib 775 00:41:46,000 --> 00:41:48,000 Mən bu mətn sahəsində seçilir. 776 00:41:48,000 --> 00:41:50,000 Mən buraya gəldi. 777 00:41:50,000 --> 00:41:53,000 Mən, əsas qayıtmaq üçün bir az aşağı kaydırılmış 778 00:41:53,000 --> 00:41:56,000 demək istəyirik ki, əgər kimi və mən, həqiqətən, bu şeylər bütün dəstə edə bilər 779 00:41:56,000 --> 00:42:00,000 təcili yerinə mən tamamilə təsadüfi deyil ki, bunu edə bilərsiniz zəng 780 00:42:00,000 --> 00:42:02,000 daxili təcili zəng düyməsini var niyə və mən bilmirəm 781 00:42:02,000 --> 00:42:06,000 lakin, həqiqətən, kiçik hərflərlə təcili zəng deyir. 782 00:42:06,000 --> 00:42:08,000 Burada getmək. 783 00:42:08,000 --> 00:42:12,000 >> Əlbəttə iOS bu müxtəlif variantları bütün araşdırmaq. 784 00:42:12,000 --> 00:42:14,000 Nümayəndənin hər hansı suallar? 785 00:42:14,000 --> 00:42:18,000 Yine, xəbərdar olmalıdır ki, yalnız bir maraqlı dizayn model. 786 00:42:18,000 --> 00:42:22,000 OK, növbəti masa views nəzər salaq. 787 00:42:22,000 --> 00:42:26,000 A masa görünüşü əsasən bütün iOS yer üzərində öğeleri ki, siyahısı. 788 00:42:26,000 --> 00:42:29,000 Sizin əlaqələrin bütün vasitəsilə Flipping olduğunuzda, siz aradığınız 789 00:42:29,000 --> 00:42:34,000 qəbulu səhifə, və şeyi siyahısı belə bir masa görünüşü adlanır. 790 00:42:34,000 --> 00:42:37,000 IOS bir masa baxımından həyata keçirilməsi olduqca sadədir. 791 00:42:37,000 --> 00:42:41,000 Əvəzində ki UIViewController dən alçalır bir sinif edilməsi 792 00:42:41,000 --> 00:42:44,000 biz sadəcə demək deyil lazımdır əvvəl biz etdik kimi 793 00:42:44,000 --> 00:42:46,000 bir UIViewController mən nə istəyir hər şeyi, 794 00:42:46,000 --> 00:42:50,000 Mən UITableViewController mən nə istəyir hər şey demək 795 00:42:50,000 --> 00:42:54,000 ki, sadəcə tamamilə bizim üçün edilir ki, bəzi əlavə şeylər əlavə edir. 796 00:42:54,000 --> 00:42:58,000 Biz əsasən masa daxilində blanklara doldurmaq üçün çox az etmək lazımdır. 797 00:42:58,000 --> 00:43:02,000 >> Mən bəzi suallara cavab lazımdır masa keçirmək üçün. 798 00:43:02,000 --> 00:43:06,000 Mən cavab lazımdır ilk sual cədvəldə nə çox bölmələr var? 799 00:43:06,000 --> 00:43:08,000 Siz əlaqə app vasitəsilə Flipping etdiyiniz zaman bu cür olduğunu görəcəksiniz 800 00:43:08,000 --> 00:43:12,000 bu kimi təşkil sonra pansiyonlar var və siz az sub mövzu var. 801 00:43:12,000 --> 00:43:14,000 O hər bir hissəsində deyilir. 802 00:43:14,000 --> 00:43:16,000 Siz ola bilər və ya bu lazım deyil bilər. 803 00:43:16,000 --> 00:43:19,000 Siz nə etmək lazımdır ilk şey bir üsul tətbiq edir 804 00:43:19,000 --> 00:43:22,000 numberOfSectionsInTableView: tableView çağırıb. 805 00:43:22,000 --> 00:43:25,000 Bu sadəcə, siz nə qədər bölmələr qaytarır 806 00:43:25,000 --> 00:43:29,000 bu bir böyük masa görünüşü varsa bir qayıtmaq demək bilər. 807 00:43:29,000 --> 00:43:33,000 IOS bilmək lazımdır ki, növbəti sual necə çox satır var edir? 808 00:43:33,000 --> 00:43:36,000 Məsələn, bir masa görünüşü vasitəsilə Flipping edirik. 809 00:43:36,000 --> 00:43:39,000 Siz geçirdiğiniz mahnıları sabit sayı və ya əlaqə sabit var. 810 00:43:39,000 --> 00:43:41,000 Əgər, əlbəttə ki, çox deyil mənə etdiyiniz 811 00:43:41,000 --> 00:43:44,000 və ki iOS Profilə neçə hüceyrələri bilir bilərsiniz. 812 00:43:44,000 --> 00:43:46,000 >> Yenə bu qaytarılması 3 kimi bir şey deyə bilər. 813 00:43:46,000 --> 00:43:49,000 Mənim masa görünüşü 3 satır var. 814 00:43:49,000 --> 00:43:52,000 Nəhayət, iOS, hər bir hüceyrə kimi görünür nə bilməlidir 815 00:43:52,000 --> 00:43:54,000 belə nə həqiqətən nə olacaq, aşağı burada bu metodu zəng edir 816 00:43:54,000 --> 00:43:57,000 bu tableView: cellForRowAtIndexPath. 817 00:43:57,000 --> 00:44:01,000 Bu masa daxilində hər bir hüceyrə bu metodu zəng edəcək. 818 00:44:01,000 --> 00:44:03,000 Necə ki, bu, zəng etmək üçün necə dəfələrlə bilir? 819 00:44:03,000 --> 00:44:06,000 Yaxşı, siz bölməsində satır sayı daxili bildirib. 820 00:44:06,000 --> 00:44:08,000 Biz hüceyrələrinin hər bu zəng olacaq 821 00:44:08,000 --> 00:44:11,000 həqiqətən kimi şeylər edə bilər və daxilində bu edir 822 00:44:11,000 --> 00:44:16,000 mətn seçin və ya sağ tərəfində kiçik mavi düyməsini nə sizə. 823 00:44:16,000 --> 00:44:19,000 Bu hüceyrələri almaq üçün model, bu metodu istifadə etmək olacaq 824 00:44:19,000 --> 00:44:22,000 dequeueReusableCellWithIdentifier çağırıb. 825 00:44:22,000 --> 00:44:29,000 >> Objective-C, onların üsulu adları gülünc uzunluğu üçün çox yaxşı tanınan əslində 826 00:44:29,000 --> 00:44:32,000 və bu, həqiqətən baxımından nümunə bir gözəl haldır. 827 00:44:32,000 --> 00:44:37,000 Bu nə bu metodu yoxdur, yalnız mənə bir hüceyrə vermək istəyirəm deyir. 828 00:44:37,000 --> 00:44:39,000 Yalnız iOS şey. 829 00:44:39,000 --> 00:44:41,000 Siz iPod 100,000 mahnısı kimi bir şey varsa, 830 00:44:41,000 --> 00:44:45,000 nə iOS etmək istəmir 100,000 hüceyrələri ayırmağa edir 831 00:44:45,000 --> 00:44:48,000 Əgər siyahı üst edirsinizsə, həqiqətən, yaddaş ayırmaq lazımdır, çünki 832 00:44:48,000 --> 00:44:51,000 aşağı 99.000 satır ki, mobil üçün? 833 00:44:51,000 --> 00:44:55,000 Xeyr, kaydırarak etdiyiniz kimi siz boyunca getmək kimi ayrılması cür ola bilər, çünki. 834 00:44:55,000 --> 00:44:57,000 Bu sizin üçün edilir. 835 00:44:57,000 --> 00:44:59,000 Siz ki, bütün axmaq icra heyəti narahat yoxdur. 836 00:44:59,000 --> 00:45:02,000 Deyə bütün bu üsul dequeueReusableCellWithIdentifier zəng edir 837 00:45:02,000 --> 00:45:06,000 Mən sizin üçün yeni mobil yaratmaq gedirəm lazımdır və bu, tamam, deyir. 838 00:45:06,000 --> 00:45:09,000 >> Siz masa altında etdiyiniz və əgər Amma artıq bəzi hüceyrələr ayrılan sonra 839 00:45:09,000 --> 00:45:12,000 həqiqətən, zaman tezliklə lazımdır fikrində deyilik ki, masa başında 840 00:45:12,000 --> 00:45:15,000 Mən sizə yerinə yeni bir bölüşdürülməsi geri o biri vermək gedirəm 841 00:45:15,000 --> 00:45:17,000 və bu gözəl performance aiddir. 842 00:45:17,000 --> 00:45:21,000 Siz hüceyrələri özünüz ayrılması yoxdur. 843 00:45:21,000 --> 00:45:23,000 Bu mobil geri vermək olacaq. 844 00:45:23,000 --> 00:45:25,000 Bu sizin üçün bir hüceyrə obyekt qayıtmaq olacaq. 845 00:45:25,000 --> 00:45:28,000 Sonra sizə bu şeylər edə bilərsiniz mobil obyekt var. 846 00:45:28,000 --> 00:45:32,000 Siz mətn etiket adlanan bu əmlak ilə hüceyrə mətn bilərsiniz. 847 00:45:32,000 --> 00:45:36,000 Siz sağ və ya digər təsadüfi stuff ki arrow əlavə edə bilərsiniz 848 00:45:36,000 --> 00:45:41,000 bu digər əmlak accessoryType adlı və s və s. 849 00:45:41,000 --> 00:45:46,000 >> Nin həqiqətən artıq bir masa görünüşü həyata nəzər salaq. 850 00:45:46,000 --> 00:45:49,000 Mən bu layihə yaradılan zaman 851 00:45:49,000 --> 00:45:53,000 deyil, bir görünüşü tətbiq deyərək dən Mən, həqiqətən, burada artıq gəldi 852 00:45:53,000 --> 00:45:57,000 master-ətraflı tətbiqi, və əsasən bu mail app uyğun 853 00:45:57,000 --> 00:46:01,000 sol masa keçirmək və sonra sağ məzmunu ilə iPad. 854 00:46:01,000 --> 00:46:07,000 IPod və ya iPhone bu bir masa keçirmək üçün uyğun gedir. 855 00:46:07,000 --> 00:46:10,000 Mən başlanğıc kodu var harada. 856 00:46:10,000 --> 00:46:13,000 >> Ilk Kadr lövhəsindən nəzər salaq. 857 00:46:13,000 --> 00:46:15,000 Bütün bu əsasən yaradılmış, mənim üçün həyata keçirilmişdir. 858 00:46:15,000 --> 00:46:18,000 Bu navigation bar, nümunə hüceyrə kimi baxmaq nə mənə göstərdi 859 00:46:18,000 --> 00:46:22,000 və mən ikiqat, bu basın adı dəyişə bilərsiniz. 860 00:46:22,000 --> 00:46:25,000 Hər hansı digər UI narahatlıq orada idarə edə bilərsiniz. 861 00:46:25,000 --> 00:46:27,000 Başlığı fayl həqiqətən sadə görünür. 862 00:46:27,000 --> 00:46:30,000 Əksinə bu UIViewController olduğunu deyib artıq indi bu olduğunu deyib edirik 863 00:46:30,000 --> 00:46:35,000 TableViewController, belə ki, biz bütün bu masa metodları zəng etmək istəyirəm ki, bilirik. 864 00:46:35,000 --> 00:46:38,000 Mən təmsil etmək olur ki, bir əmlak yaratmaq istəyirik Sonrakı 865 00:46:38,000 --> 00:46:40,000 mənim masa daxilində şeylər. 866 00:46:40,000 --> 00:46:43,000 Bu cədvəl özbaşına Profilə gedir 867 00:46:43,000 --> 00:46:46,000 meyvə siyahısı və mən bir sıra yaratmaq lazımdır 868 00:46:46,000 --> 00:46:49,000 olan I meyvə əlavə edə bilərsiniz. 869 00:46:49,000 --> 00:46:52,000 Mənim həyata fayl ilk şey Inside mən etmək istəyirəm 870 00:46:52,000 --> 00:46:55,000 Mən bu seriala başlamaq əmin etmək istəyirəm edir. 871 00:46:55,000 --> 00:46:58,000 >> Mən alloc init dedi mənim meyvə array yaradılmış, 872 00:46:58,000 --> 00:47:03,000 və mən bunu digər 3-dən çox mübahisəli olan bir 4 şeyi əlavə edirəm. 873 00:47:03,000 --> 00:47:06,000 İndi ölçüsü 4 bir sıra var. 874 00:47:06,000 --> 00:47:08,000 Biz CS50 bu qədər sarsıntı edirik. 875 00:47:08,000 --> 00:47:11,000 İndi ölçüsü 4 bir sıra var. 876 00:47:11,000 --> 00:47:13,000 İndi mən, həqiqətən, bu suallara cavab başlamaq niyyətindəyik və alıram 877 00:47:13,000 --> 00:47:16,000 Bu app yaratdığı bütün bu artıq mənim üçün həyata keçirilmişdir. 878 00:47:16,000 --> 00:47:19,000 Mən masa baxımından bölmələr sayını yazın yoxdur. 879 00:47:19,000 --> 00:47:22,000 Orada artıq idi və mən blanklara doldurmaq alıram. 880 00:47:22,000 --> 00:47:24,000 Kaç bölmələr var? 881 00:47:24,000 --> 00:47:26,000 Biri. Bütün edilir. 882 00:47:26,000 --> 00:47:28,000 Mən neçə satır var? 883 00:47:28,000 --> 00:47:31,000 Bəli, mən hər meyvə bir sıra var, belə ki, bu sayı 884 00:47:31,000 --> 00:47:34,000 necə böyük deyir ki, hər hansı bir serialın bir əmlak var? 885 00:47:34,000 --> 00:47:36,000 Yəni nə çox satır var. 886 00:47:36,000 --> 00:47:42,000 Nəhayət, mən nə hər cell kimi baxmaq deyil demək lazımdır? 887 00:47:42,000 --> 00:47:46,000 Mən dequeueReusableCellWithIdentifier demək gedirəm. 888 00:47:46,000 --> 00:47:48,000 >> Yenə bu artıq mənim üçün yazılmışdır. 889 00:47:48,000 --> 00:47:51,000 Mən bu özümə nə yox idi, mən geri almaq istəyirəm 890 00:47:51,000 --> 00:47:54,000 Bu yer, bu mob. 891 00:47:54,000 --> 00:47:57,000 Biz hər bir hüceyrə bu eyni metodu zəng unutmayın, 892 00:47:57,000 --> 00:48:01,000 və burada bu arqument bu indexPath dəlil, 893 00:48:01,000 --> 00:48:03,000 Mən daxil oldum nə sıra deyir 894 00:48:03,000 --> 00:48:05,000 Burada indexPath.row aşağı demək edin 895 00:48:05,000 --> 00:48:09,000 bu 0 olacaq, onda 1 olacaq, o, 2 olacaq və mən bilirəm belə bu 896 00:48:09,000 --> 00:48:11,000 Hal-hazırda tapılanlar alıram nə mob. 897 00:48:11,000 --> 00:48:15,000 Mən bu textLabel əmlak istifadə edərək mobil mətn qurmaq istəyirəm 898 00:48:15,000 --> 00:48:19,000 mənim meyvə array daxilində getmək və almaq 899 00:48:19,000 --> 00:48:21,000 Hər bir sıra müvafiq obyekt. 900 00:48:21,000 --> 00:48:24,000 Bu simli deyil, mən indi müəyyən alıram 901 00:48:24,000 --> 00:48:28,000 simli üçün mətn əmlak. 902 00:48:28,000 --> 00:48:30,000 Mən başqa bir şey edə bilərsiniz. 903 00:48:30,000 --> 00:48:32,000 Mən də hüceyrələrin hər bir hadisə handler üzv ola bilərsiniz 904 00:48:32,000 --> 00:48:35,000 Mən bu hüceyrələrin hər kran belə zaman 905 00:48:35,000 --> 00:48:39,000 bu didSelectRowAtIndexPath, bu, mənim üçün deyilən olacaq 906 00:48:39,000 --> 00:48:42,000 belə sadəcə bu müəyyən İndi nə idarə edə bilərsiniz 907 00:48:42,000 --> 00:48:46,000 daha mobil kran və zaman, biz mobil tapped olan keçən edirik 908 00:48:46,000 --> 00:48:50,000 belə ki, bizim hüceyrələrinin bütün bu eyni hadisə handler yenidən istifadə edə bilərsiniz. 909 00:48:50,000 --> 00:48:53,000 >> Yenə bu iOS mənim üçün edir bir şeydir. 910 00:48:53,000 --> 00:48:55,000 Digər annoying popup göstərmək edək 911 00:48:55,000 --> 00:48:59,000 sadəcə siz ki, bir şey bir şey seçilmiş deyir 912 00:48:59,000 --> 00:49:04,000 sıra obyekt olacaq. 913 00:49:04,000 --> 00:49:10,000 Mən bu çalıştırdığınızda, mən bu gözəl masa görünüşü gedirəm 914 00:49:10,000 --> 00:49:14,000 Bu meyvə hər biri üçün bir sıra ilə, və əgər mən bir kran 915 00:49:14,000 --> 00:49:16,000 o nə mənə deyir. 916 00:49:16,000 --> 00:49:21,000 Mənada etmək? 917 00:49:21,000 --> 00:49:24,000 Nin bir app bir az daha kompleks inşa edək, 918 00:49:24,000 --> 00:49:28,000 siz pomidor seçilmiş tıklayarak kimi çox deyil. 919 00:49:28,000 --> 00:49:31,000 Bu storyboarding haqqında gözəl hissəsi 920 00:49:31,000 --> 00:49:35,000 yalnız fərdi Bookmark dizayn ekranlar kömək etmək niyyətində deyil olunur 921 00:49:35,000 --> 00:49:38,000 bu da bizim bütün app sarmalamaq kömək olacaq 922 00:49:38,000 --> 00:49:42,000 biz bina olacaq son app, bu gözəl idman xəbərləri oxucu 923 00:49:42,000 --> 00:49:45,000 və buna çox ekranlar var olacaq və mən həqiqətən təmsil edə bilər 924 00:49:45,000 --> 00:49:48,000 Kadr lövhəsindən bu çox ekranlar hər 925 00:49:48,000 --> 00:49:52,000 və mən kiçiltmək və yüksək səviyyədə mənim app bilərsiniz. 926 00:49:52,000 --> 00:49:55,000 >> Mənim eskizlərinin yeni bir element daxili yaratmaq üçün 927 00:49:55,000 --> 00:49:59,000 bu Interface Builder daxilində həqiqətən sadə. 928 00:49:59,000 --> 00:50:01,000 Mən bu başqa bir ekran əlavə etmək istəyirsinizsə, misal üçün, 929 00:50:01,000 --> 00:50:06,000 Mən ilk, Apple çox sevir ki, pinch zoom ilə zoom edə bilərsiniz 930 00:50:06,000 --> 00:50:09,000 və aşağı burada bir düyməsinə axtarmaq əvvəl 931 00:50:09,000 --> 00:50:12,000 və bir düyməsini sürükle 932 00:50:12,000 --> 00:50:15,000 Yeni ekran yaratmaq istəyirsinizsə, Mən, həqiqətən, yalnız sürükleyin və açılır 933 00:50:15,000 --> 00:50:19,000 bütün görünüşü nəzarətçi, bu seçə əgər, burada üzərində çəkmək 934 00:50:19,000 --> 00:50:23,000 hey, başqa ekran, və indi bu eskizlərinin faylı istifadə edərək, 935 00:50:23,000 --> 00:50:26,000 Mən app daxilində ekranlar bütün bilər, mən zoom edə bilər 936 00:50:26,000 --> 00:50:28,000 və onlar qarşılıqlı necə oldu. 937 00:50:28,000 --> 00:50:32,000 Bu hələ qarşılıqlı deyil. 938 00:50:32,000 --> 00:50:36,000 Bu 2 ekranlar qarşılıqlı olan yol münasibətləri müəyyən edir. 939 00:50:36,000 --> 00:50:39,000 Siz əsasən, bu düyməsini basın zaman, bu ekran demək olar 940 00:50:39,000 --> 00:50:42,000 Mən sizə bu yeni ekran üzərində uçmaq istəyirəm. 941 00:50:42,000 --> 00:50:44,000 Deməkdir ki, arasında əlaqələr bu cür var 942 00:50:44,000 --> 00:50:46,000  ilk ekran və ikinci ekran. 943 00:50:46,000 --> 00:50:49,000 Siz əsasən ki düyməsinə ikinci ekran üçün arrow lazımdır 944 00:50:49,000 --> 00:50:53,000 Mən getmək istədiyiniz bu düyməsini basın zaman ki ki. 945 00:50:53,000 --> 00:50:57,000 Biz tıklayan və bu vasitələri müəyyən sürüklənəcəklər nəzarəti kimi 946 00:50:57,000 --> 00:51:01,000 bu segues müəyyən eyni şey olacaq. 947 00:51:01,000 --> 00:51:05,000 >> Biz nümunə görmək və biz, həqiqətən, keçid qarşısında olacaq 948 00:51:05,000 --> 00:51:08,000 bir ekran digər iOS bu metodu zəng etmək üçün kifayət qədər gözəl 949 00:51:08,000 --> 00:51:11,000 prepareForSegue adlanır və biz başlamaq bilərsiniz bu 950 00:51:11,000 --> 00:51:14,000 bir app başqa data göndərilməsi. 951 00:51:14,000 --> 00:51:17,000 Məsələn, biz baxmaq üzeresiniz əsasən bizə imkan verəcək 952 00:51:17,000 --> 00:51:20,000 leagues və bölmələri tərəfindən beysbol komanda filter. 953 00:51:20,000 --> 00:51:23,000 Mən bir liqa seçin, məsələn, mən keçid etmək istəyirəm 954 00:51:23,000 --> 00:51:25,000 Mən bölmələrinin bütün bilərsiniz mənim növbəti ekran 955 00:51:25,000 --> 00:51:27,000 ki, liqa və ya bütün müxtəlif qrupları. 956 00:51:27,000 --> 00:51:31,000 Mən nə komanda siz göstərmək lazımdır ki, ekran göndərmək lazımdır. 957 00:51:31,000 --> 00:51:35,000 Mən burada bu metodu istifadə etmək gidiyorum ki etmək. 958 00:51:35,000 --> 00:51:39,000 >> Nəhayət, iOS yalnız bir təsadüfi nöqtəsi. 959 00:51:39,000 --> 00:51:41,000 Siz məlumatın istəyirsinizsə əsas data adlanan bu şey var 960 00:51:41,000 --> 00:51:44,000 hansı faktiki olaraq işləmək mürəkkəb növü. 961 00:51:44,000 --> 00:51:47,000 Ayrıca, veri SQL istifadə edə bilərsiniz 962 00:51:47,000 --> 00:51:51,000 ki, daha, ilə işləmək üçün daha çətin tərəfi gözəl lakin cür edir 963 00:51:51,000 --> 00:51:55,000 lakin iOS də, əmlak siyahıları adlı bu həqiqətən sərin şeyi dəstəkləyir 964 00:51:55,000 --> 00:52:00,000 və əmlakının siyahısının yalnız əsas dəyər cüt təmsil bir fayl. 965 00:52:00,000 --> 00:52:03,000 Siz düymələri bir siyahısını müəyyən, və bu əsas bir sıra olacaq deyirlər. 966 00:52:03,000 --> 00:52:06,000 Bu əsas əsasən edə bilərsiniz bir şey simli olacaq, və 967 00:52:06,000 --> 00:52:10,000 JSON siz, bir əmlak siyahı daxilində edə bilərsiniz 968 00:52:10,000 --> 00:52:14,000 və bu, həqiqətən, gözəl bizə data ilə işləmək üçün imkan verir. 969 00:52:14,000 --> 00:52:18,000 Məsələn, mən yaratdığı bu Teams.plist var. 970 00:52:18,000 --> 00:52:22,000 Yeni plist fayl yaradılmışdır və mən aşağı qazmaq bilər. 971 00:52:22,000 --> 00:52:26,000 Bu lüğət, bu lüğət, bu, simlər var 972 00:52:26,000 --> 00:52:30,000 və bu bir JSON sənədin gözəl qrafik təmsil edir 973 00:52:30,000 --> 00:52:33,000 və ya əsas dəyər cüt yalnız bir set 974 00:52:33,000 --> 00:52:37,000 və bu mənim app daxilində iş olacaq ki, data deyil. 975 00:52:37,000 --> 00:52:40,000 >> Ilk buraya gəlsin. Biz indi daha çox faylları. 976 00:52:40,000 --> 00:52:44,000 Amma ilk Kadr lövhəsindən üçün buraya gəlmək imkan verir. 977 00:52:44,000 --> 00:52:48,000 Kadr lövhəsindən burada əgər mən zoom edə bilərsiniz out- 978 00:52:48,000 --> 00:52:51,000 İndi bu mənim app axını olduğunu görə bilərsiniz. 979 00:52:51,000 --> 00:52:53,000 Mən ilk bu ekran başlamaq üçün gedirəm. 980 00:52:53,000 --> 00:52:55,000 Mən bu ekran aşağı qazmaq gedirəm 981 00:52:55,000 --> 00:52:58,000 və mən bu ekran aşağı qazmaq gedirəm, və biz burada görə bilərsiniz ki, mən növ əgər 982 00:52:58,000 --> 00:53:04,000 bu oxlar buradan burada gedən var ətrafında bu bir hərəkət 983 00:53:04,000 --> 00:53:08,000 Mən bir az zoom əgər və mən arrow müəyyən yol idi, 984 00:53:08,000 --> 00:53:12,000 və bu görünüşü nəzarətçi üzərində gəlsə, 985 00:53:12,000 --> 00:53:16,000 və burada bir hüceyrə, ve siz mobil kran mən demək istəyirəm ki, 986 00:53:16,000 --> 00:53:18,000 Mən sizə bir ekran üzərində uçmaq istəyirəm. 987 00:53:18,000 --> 00:53:21,000 Mən sadəcə, nəzarət basıb saxlayın bilərsiniz 988 00:53:21,000 --> 00:53:26,000 bir az üzərində hərəkət, nəzarət basıb saxlayın bu hüceyrə üzərində sürükleyin və gidelim. 989 00:53:26,000 --> 00:53:30,000 >> Və burada biz istifadə etmək istəyirəm ki, keçid nə demək? 990 00:53:30,000 --> 00:53:32,000 Siz push deyirlər ki, slayd şey istifadə etmək istəyirsiniz? 991 00:53:32,000 --> 00:53:34,000 Siz altına qədər uçmaq istəyirsiniz? 992 00:53:34,000 --> 00:53:36,000 Bu modal deyirlər. 993 00:53:36,000 --> 00:53:40,000 Və bir dəfə mən bu bir basın, bu, mənim üçün bu arrow çəkmək olacaq 994 00:53:40,000 --> 00:53:44,000 və mən, həqiqətən, mən qrafik bu düyməsini basın zaman nə olar ele olduğunuz deməkdir. 995 00:53:44,000 --> 00:53:48,000 Mən, həqiqətən, bir ekran növbəti bir sürüşdürmək üçün hər hansı bir kod yazmaq vermədi. 996 00:53:48,000 --> 00:53:51,000 Mən Interface Builder bu vizual daxilində müəyyən edilmişdir. 997 00:53:51,000 --> 00:53:55,000 Mən bu arrow basın varsa, biz bu şey bir ad verdi ki, görürük. 998 00:53:55,000 --> 00:53:59,000 Mən bunu showDivisions adlanır və bu bilirəm edə bilərsiniz, belə ki, 999 00:53:59,000 --> 00:54:03,000 nə keçid haqqında baş və niyə yalnız bir Saniyə biz görəcəksiniz. 1000 00:54:03,000 --> 00:54:06,000 Yəni mənim app müxtəlif ekranlar qədər simli etdik bilərsiniz. 1001 00:54:06,000 --> 00:54:09,000 Bu bir düyməsinə, misal üçün, daha çox bir masa görünüşü olsaydı, 1002 00:54:09,000 --> 00:54:11,000 Mən növbəti ekran üzərində sürükleyin, düyməsini basın nəzarət edə 1003 00:54:11,000 --> 00:54:16,000 və mən naviqasiya şəkildə edə bilərsiniz. 1004 00:54:16,000 --> 00:54:19,000 >> Həqiqətən tez, biz MasterViewController gəlmək əgər, 1005 00:54:19,000 --> 00:54:22,000 daha, biz sadəcə şeyi bir siyahısını müəyyən olacaq 1006 00:54:22,000 --> 00:54:26,000 olan masa görünüşü göstərilir. 1007 00:54:26,000 --> 00:54:29,000 Burada mən ki plist fayl etmək istəyirəm dedi alıram 1008 00:54:29,000 --> 00:54:32,000 və mən sizə bir lüğət halına qədər yük istəyirəm 1009 00:54:32,000 --> 00:54:35,000 və bir dəfə siz lüğət var, yenidən həmin suallara cavab gedirəm. 1010 00:54:35,000 --> 00:54:37,000 Burada bölmələr sayı. 1011 00:54:37,000 --> 00:54:41,000 Biri, hər liqaya satır, hər bir hüceyrə mətn var 1012 00:54:41,000 --> 00:54:46,000 s birinci, ilk liqa, ikinci liqada və ya olmalıdır. 1013 00:54:46,000 --> 00:54:51,000 Nəhayət, mən, biz yalnız prepareForSegue adlı gördüm ki, bu metodu istifadə gedirəm 1014 00:54:51,000 --> 00:54:54,000 və bu mən basın zaman atəş olacaq ki metodudur 1015 00:54:54,000 --> 00:54:57,000 o satır biri və buna görə də ki, keçid Aktivləşdirmə 1016 00:54:57,000 --> 00:54:59,000 Mən oxları ilə müəyyən edir. 1017 00:54:59,000 --> 00:55:02,000 Bu çox ola bilər ki, deyib 1018 00:55:02,000 --> 00:55:05,000 bir ekran digər münasibətləri. 1019 00:55:05,000 --> 00:55:08,000 I 2 düymələri və hər düyməsinə müxtəlif ekran götürür edin 1020 00:55:08,000 --> 00:55:10,000 Mən hər düyməsinə üçün 2 segues, 1 üçün gedirəm. 1021 00:55:10,000 --> 00:55:14,000 Amma bu prepareForSegue təkrar istifadə olunacaq, təkrar edir 1022 00:55:14,000 --> 00:55:17,000 müxtəlif əlaqələr hər biri üçün, belə ki, bir yol lazımdır o deməkdir ki, 1023 00:55:17,000 --> 00:55:21,000 Siz ilk düyməsini basın və ya ikinci düyməsini basın əgər müəyyən edir. 1024 00:55:21,000 --> 00:55:25,000 >> Hesab edirəm ki, segue bir adı, bu showDivisions verdi zaman saxla 1025 00:55:25,000 --> 00:55:29,000 Mən indi bu aktivləşdirilmiş ki segue bilirik ki, necə. 1026 00:55:29,000 --> 00:55:32,000 Mən istəyirəm demək istəyirəm ki, 1027 00:55:32,000 --> 00:55:35,000 Mən yalnız edib nə anlamaq istəyirəm 1028 00:55:35,000 --> 00:55:38,000 və ki, almaq, mən Seçilmiş sıra üçün indexPath mənə deyə bilərsiniz 1029 00:55:38,000 --> 00:55:42,000 Mən yalnız tıklayan olduğu indexPath xatırlayıram yalnız deyir 1030 00:55:42,000 --> 00:55:47,000 və sonra mən gedirəm yerləşir anlamaq istəyirəm demək istəyirəm. 1031 00:55:47,000 --> 00:55:50,000 Bu destinationViewController ki, segue bir əmlak var. 1032 00:55:50,000 --> 00:55:53,000 Yəni, mən gedirəm ekran var 1033 00:55:53,000 --> 00:55:56,000 belə mən gedirəm ekran DivisionsViewController adlanır bilirik ki, 1034 00:55:56,000 --> 00:55:59,000 Hesab edirəm ki, sinif yaradılmış, çünki 1035 00:55:59,000 --> 00:56:02,000 və indi mən d.divisions demək əgər 1036 00:56:02,000 --> 00:56:06,000 Mən indi getmək haqqında Ben görünüşü nəzarətçi əmlakın müəyyən edirəm. 1037 00:56:06,000 --> 00:56:10,000 Bu bir ekran bir ekran data göndərilməsi alıram necə. 1038 00:56:10,000 --> 00:56:13,000 >> Məhz bu DivisionsViewController baxaraq 1039 00:56:13,000 --> 00:56:16,000 Burada görə bilərsiniz ki. h fayl 1040 00:56:16,000 --> 00:56:20,000 var ki, əmlak bölmələri və mən əsasən populating alıram nə 1041 00:56:20,000 --> 00:56:25,000 ki, mən müvafiq bölmələrinin tapılanlar edirəm ki, bilirsiniz necə 1042 00:56:25,000 --> 00:56:28,000 mən tıkladım və yenidən ki, liqada 1043 00:56:28,000 --> 00:56:31,000 faktiki masa görünüşü yalnız cavab olduqca çox eyni görünür 1044 00:56:31,000 --> 00:56:34,000 3 sadə sualları, habelə müəyyən 1045 00:56:34,000 --> 00:56:37,000 Siz növbəti ekran hərəkət zaman nə baş verir. 1046 00:56:37,000 --> 00:56:40,000 Burada başqa şeylər yalnız bir neçə. 1047 00:56:40,000 --> 00:56:43,000 Siz burada üst hiss ki, daha çox # daxildir söyləyərək 1048 00:56:43,000 --> 00:56:45,000 İndi # idxal dedi alıram. 1049 00:56:45,000 --> 00:56:47,000 Bu yalnız bir Objective-C şeydir. 1050 00:56:47,000 --> 00:56:52,000 Idxalı, əsasən daxil bir gözəl versiyası 1051 00:56:52,000 --> 00:56:57,000 və məsələn, biz bu sinif olduğunu bilmək lazımdır 1052 00:56:57,000 --> 00:57:00,000 Mən yalnız DivisionsViewController deyə bilmərəm. 1053 00:57:00,000 --> 00:57:05,000 Biz. C fayl standardio.c daxilində hashtag olmasaydı 1054 00:57:05,000 --> 00:57:07,000 derleyiciyi printf nə yox idi. 1055 00:57:07,000 --> 00:57:12,000 Eynilə, mən DivisionsViewController idxal olmayan 1056 00:57:12,000 --> 00:57:16,000 derleyiciyi həqiqətən DivisionsViewController nə heç bir fikir var. 1057 00:57:16,000 --> 00:57:19,000 Yalnız fərqli. M faylları daxilində siz idxal əmin olun əmin olun 1058 00:57:19,000 --> 00:57:25,000 müvafiq. h faylları belə compiler neler bilir. 1059 00:57:25,000 --> 00:57:31,000 >> Nəhayət, nə Apple nəhayət, bir web görünüşü istifadə bəzi data Profilə olunur deyil 1060 00:57:31,000 --> 00:57:35,000 və belə bir web görünüşü embed biləcəyi bir obyekt 1061 00:57:35,000 --> 00:57:37,000 Sizin app daxilində bir az web browser. 1062 00:57:37,000 --> 00:57:40,000 Siz nə etmək lazımdır Bütün web browser bir URL təchiz olunur 1063 00:57:40,000 --> 00:57:43,000 Mən, mlb.mlb.com getmək istəyirəm 1064 00:57:43,000 --> 00:57:46,000 və bu, mən hər komanda üçün ana səhifəsinə daxil edə bilərsiniz necə 1065 00:57:46,000 --> 00:57:49,000 və bu URL keçən ilə 1066 00:57:49,000 --> 00:57:52,000 , web baxımından mənim üçün bu bilərsiniz, və ətrafında baxa bilərsiniz 1067 00:57:52,000 --> 00:58:01,000 və simulator bir tərəfindən istifadə olunur. 1068 00:58:01,000 --> 00:58:03,000 İndi bu mənim plist gəldi. 1069 00:58:03,000 --> 00:58:07,000 Mən bu basın, bu da mənim plist gəldi və bu sürüşmə ele edilib 1070 00:58:07,000 --> 00:58:09,000 o segues müəyyən. 1071 00:58:09,000 --> 00:58:12,000 Mən bu basın və daha bir 1072 00:58:12,000 --> 00:58:15,000 və indi burada belə ki, yalnız kimi, mənim UIWebView edir 1073 00:58:15,000 --> 00:58:19,000 burada yalnız əlaqədar ki, URL üçün veb var 1074 00:58:19,000 --> 00:58:21,000 və Mən dəli bir şey idarə etmək yox idi. 1075 00:58:21,000 --> 00:58:24,000 Bu web page keçirmək üçün necə. 1076 00:58:24,000 --> 00:58:27,000 Burada bu geri düyməsinə kimi şeylər mənə də verilir 1077 00:58:27,000 --> 00:58:33,000 tamamilə pulsuz I segues istifadə edərək, bu əlaqələrin müəyyən etdik çünki. 1078 00:58:33,000 --> 00:58:37,000 >> Hər hansı sual? Bəli. 1079 00:58:37,000 --> 00:58:40,000 [Tələbə] Beləliklə, siz alloc istifadə edərkən, pulsuz bir şey heç vaxt? 1080 00:58:40,000 --> 00:58:43,000 Məhz, siz alloc və init zəng zaman onu azad etmək yoxdur. 1081 00:58:43,000 --> 00:58:46,000 IOS üçün ki, bütün idarə etmək üçün gedir. 1082 00:58:46,000 --> 00:58:51,000 Bu gözəl, və siz hər hansı bir qaydalarının pozulması deyilik. Bəli. 1083 00:58:51,000 --> 00:58:54,000 Siz ekranda uyğun ola bilər ki, daha çox qrupları daxil idi [Tələbə] Əgər 1084 00:58:54,000 --> 00:58:58,000 avtomatik olaraq əlavə etmək lazımdır ki, bir şey bir diyirləyin seçimi var, ya olacaq? 1085 00:58:58,000 --> 00:59:01,000 Mən daha çox komanda olsa Məhz, məsələn, avtomatik idarə ki, 1086 00:59:01,000 --> 00:59:04,000 Mənim üçün scrolling və bütün icra narahatlıq 1087 00:59:04,000 --> 00:59:08,000 böyük masa da mənim üçün tamamilə idarə olunur. 1088 00:59:08,000 --> 00:59:11,000 >> Digər suallar? 1089 00:59:11,000 --> 00:59:13,000 Bu kodu Bütün olunub olacaq. 1090 00:59:13,000 --> 00:59:16,000 Biz növ, daha kiçik detalları bir az üzərində cilalanacaq 1091 00:59:16,000 --> 00:59:19,000 lakin kimi şeylər web keçirmək üçün bəzi xassələri qəbulu 1092 00:59:19,000 --> 00:59:22,000 yalnız Apple sənədlərin gəzən ilə əldə edə bilər ki şeyi, 1093 00:59:22,000 --> 00:59:24,000 həqiqətən ki, həqiqətən gözəl salınmışdır. 1094 00:59:24,000 --> 00:59:27,000 Onlar nümunə apps çox və misal bulges var 1095 00:59:27,000 --> 00:59:34,000 müxtəlif API, belə ki, mütləq siz həmin diqqətlə oxumaq. 1096 00:59:34,000 --> 00:59:36,000 Yalnız bir faydalı bağlantılar nəzər edə bilərsiniz. 1097 00:59:36,000 --> 00:59:38,000 Bu bir lazımlı sənədlərin təlimatlar var. 1098 00:59:38,000 --> 00:59:41,000 URL'leri kütləvi var, onlar qısaldılmış edirik. 1099 00:59:41,000 --> 00:59:44,000 Bu ilk sənədlərin bütün kitabxana edir. 1100 00:59:44,000 --> 00:59:46,000 Az axtarış bar siz yazaraq düyməsini başlamaq əgər, var 1101 00:59:46,000 --> 00:59:50,000 siz bir düyməsinə ilə edə bilərsiniz bütün şeylər haqqında bütün məlumat verilməsi başlayacaq. 1102 00:59:50,000 --> 00:59:53,000 Mən də Cədvəl View program Guide daxil etdik. 1103 00:59:53,000 --> 00:59:56,000 Bu, daha çox ətraflı masa views emal 1104 00:59:56,000 --> 01:00:00,000 dinamik hüceyrələri və ya edit hüceyrələri əlavə və ya aradan qaldırılması kimi şeylər necə. 1105 01:00:00,000 --> 01:00:02,000 >> Necə ki, bunu sizə göstərir ki, Apple nümunə apps çox var 1106 01:00:02,000 --> 01:00:05,000 və nəhayət, bu son bir, İnsan Interface Təlimatları edir 1107 01:00:05,000 --> 01:00:09,000 və bu, əsasən UI komponentləri bəzi müzakirə edir 1108 01:00:09,000 --> 01:00:12,000 kimi şeylər 4 piksel 4 piksel ki, bir düyməsinə yoxdur. 1109 01:00:12,000 --> 01:00:15,000 Bu pis bir fikir var, və Apple nə istəyir ki, başqa şeylər 1110 01:00:15,000 --> 01:00:18,000 yaxşı dizayn təşviq etmək. 1111 01:00:18,000 --> 01:00:23,000 >> Hər keçən sualları biz başa əvvəl? 1112 01:00:23,000 --> 01:00:27,000 Bütün sağ, mütləq müzakirə xüsusi yazıları gedən-we're çekinmeyin. 1113 01:00:27,000 --> 01:00:30,000 Biz iOS bir lazımdır, belə ki, mütləq ki, istifadə çekinmeyin. 1114 01:00:30,000 --> 01:00:34,000 Siz layihələr sizin sinif yoldaşları ilə işləmək istəyirsinizsə 1115 01:00:34,000 --> 01:00:37,000 və ya bir təsadüfi iOS məhsulları anlamağa kömək 1116 01:00:37,000 --> 01:00:40,000 mənə e-poçt çekinmeyin, və mütləq bütün kodu online çünki diqqətlə oxumaq 1117 01:00:40,000 --> 01:00:43,000 yalnız vaxt maraq biz növ daha çox cilalanacaq 1118 01:00:43,000 --> 01:00:45,000 şeyi finer dənəvər ətraflı. 1119 01:00:45,000 --> 01:00:47,000 Lakin əgər, sonra yaxşı sizin iOS layihələr üzrə uğurlar, mən biz ümid 1120 01:00:47,000 --> 01:00:53,000 App Store apps böyük axını. 1121 01:00:53,000 --> 01:00:56,000 [CS50.TV]