1 00:00:00,000 --> 00:00:07,880 2 00:00:07,880 --> 00:00:09,800 >> RHED SHI :에 오신 것을 환영합니다 CS50 세미나를 참조 - 3 00:00:09,800 --> 00:00:11,630 아이폰 OS 소개. 4 00:00:11,630 --> 00:00:13,290 모두들와 주셔서 감사합니다. 5 00:00:13,290 --> 00:00:16,610 난 당신이 그냥 흥분 희망 내가 아이폰 OS에 대해 나처럼. 6 00:00:16,610 --> 00:00:22,300 작년에, 나는 2 학년 CS50했다, 나는 기본적으로 용 iOS를 배운 내 7 00:00:22,300 --> 00:00:23,490 최종 프로젝트. 8 00:00:23,490 --> 00:00:26,350 그리고 그것은 꽤 있었다 - 9 00:00:26,350 --> 00:00:30,530 물론, 그것은 쉬운 일이 아니었다, 그러나 거기 온라인 지원 자습서 많이. 10 00:00:30,530 --> 00:00:33,760 그리고 정말 희망이 이것 세미나, 나는 머리에게 너희들을 줄 것이다 11 00:00:33,760 --> 00:00:36,750 아이폰 OS 개발 시작 12 00:00:36,750 --> 00:00:40,490 >> 따라서,의 iOS 개발의 측면에서, 두 가지 상황이 우리가 있습니다 13 00:00:40,490 --> 00:00:42,090 오늘 커버하고 싶은. 14 00:00:42,090 --> 00:00:43,290 첫째, 언어 - 15 00:00:43,290 --> 00:00:46,650 언어가 될 것입니다 목표-C. 우리는 실제로들을 수 있습니다 16 00:00:46,650 --> 00:00:47,750 정말 흥미로운 일. 17 00:00:47,750 --> 00:00:51,500 그래서, 당신은 전체 애플에 가입하실 수 있습니다 개발자 커뮤니티와 일부 구축 18 00:00:51,500 --> 00:00:52,940 정말 멋진 애플 리케이션. 19 00:00:52,940 --> 00:00:58,670 >> 또한, 아이폰 OS 7, 희망, 아름다운 당신의 일부. 20 00:00:58,670 --> 00:01:01,130 그러나 내가 아는 논란이다. 21 00:01:01,130 --> 00:01:05,349 주로, 내가 원하는 것은 가이드입니다 당신 오브젝티브-C,도를 통해 22 00:01:05,349 --> 00:01:10,650 통합 엑스 코드, 당신이있을거야 개발 환경 23 00:01:10,650 --> 00:01:13,460 아이폰 OS에있는 작업. 24 00:01:13,460 --> 00:01:19,140 >> 그리고, 오브젝티브-C에 그냥 단어. 기본적으로, 그것은, C와 동일한의 25 00:01:19,140 --> 00:01:22,790 그러나 다른 많은 것들과 함께. 26 00:01:22,790 --> 00:01:27,710 그리고, 더 엄격하게, 사실의 슈퍼 세트 C. 그렇게 아무것도 당신 27 00:01:27,710 --> 00:01:32,280 입니다, 지금은 C에서 할 수있는 기본적으로는, 6을 통해 PSET 0 좋아 28 00:01:32,280 --> 00:01:34,170 목표 - C에서 할 수 있습니다. 29 00:01:34,170 --> 00:01:38,620 >> 그래서,이 새로운 약을 두려워 느끼지 않는다 당신이 배울거야 언어. 30 00:01:38,620 --> 00:01:42,120 당신은 이미 많이 다루었 모든 C에게 지난 일을했기 때문에 31 00:01:42,120 --> 00:01:45,880 학기는 이제 제외하고는거야 함께 일을 더 많이해야합니다. 32 00:01:45,880 --> 00:01:49,270 그리고 난 그냥 통해 당신을 이끌거야 을 강조하는 사례 몇 33 00:01:49,270 --> 00:01:53,920 I는 것을 알았다 주요 차이점 정말 중요한 때 배운 34 00:01:53,920 --> 00:01:57,180 오브젝티브-C 작년에. 35 00:01:57,180 --> 00:02:00,910 >> 그럼 실제로, 그래서, 다른 점 , 오브젝티브-C, 분명히된다 36 00:02:00,910 --> 00:02:02,200 객체 지향. 37 00:02:02,200 --> 00:02:06,340 그리고 우리는 조금 더 논의 할 것이다 그 이후 무엇을 의미하는지에 대해. 38 00:02:06,340 --> 00:02:11,340 기본적으로, 그것은 당신이 어떻게 작동하는지처럼 지난 PSET의 구조체와 39 00:02:11,340 --> 00:02:13,360 노드와 유사한 다른 그런 것. 40 00:02:13,360 --> 00:02:17,110 오브젝티브-C에서, 모든 것이, 제외 객체, 그리고 당신이 될 것입니다 41 00:02:17,110 --> 00:02:20,720 객체에 대한 포인터를 주위에 전달 오히려 값 자체보다. 42 00:02:20,720 --> 00:02:25,050 그래서, 그냥 중요한 일이다 염두에 두어야합니다. 43 00:02:25,050 --> 00:02:29,140 >> 그럼, 왜 우리는 몇 가지로 시작하지 않습니다 C 사이 구문의 차이 44 00:02:29,140 --> 00:02:30,540 목표-C? 45 00:02:30,540 --> 00:02:38,310 당신이 포함 #를 강조 표시 할 C와 C + +에서 알고, 표준 io.h에는와 46 00:02:38,310 --> 00:02:44,030 그 목표-C 버전, 어떤 # 수입하고 어떤 종류의 것입니다 47 00:02:44,030 --> 00:02:44,790 헤더 파일. 48 00:02:44,790 --> 00:02:48,165 이 경우에는, UIKit 것 당신도 알다시피, UIKit.h을 슬래시. 49 00:02:48,165 --> 00:02:53,560 또한, 당신도 알다시피, MKMapview 될 수 당신이 원하는 경우 MKMapview.h을 슬래시 50 00:02:53,560 --> 00:02:56,370 , 등, 귀하의 응용 프로그램의 내부지도를 할 수 있습니다. 51 00:02:56,370 --> 00:02:57,110 그런 비슷한 것들. 52 00:02:57,110 --> 00:03:01,250 >> 따라서, 중요한 것은 (가) 있습니다 지금 가져올 변경되었습니다. 53 00:03:01,250 --> 00:03:04,340 하지만 생각은 여전히​​ 남아있다. 54 00:03:04,340 --> 00:03:10,460 당신은 어떤 종류의 수입 될 것입니다 당신의 프로그램에 헤더 파일의. 55 00:03:10,460 --> 00:03:14,550 >> 또한 차이를 강조 표시 할 의 printf와의 NSLog 사이. 56 00:03:14,550 --> 00:03:19,760 그러나, 우리가 이전에 말했듯이, 오브젝티브-C 엄격한 슈퍼 세트입니다 57 00:03:19,760 --> 00:03:22,800 printf의 존재를 의미합니다 C, 오브젝티브-C에서,도. 58 00:03:22,800 --> 00:03:24,340 그러나, 대부분의 사람들은 사용하지 마십시오. 59 00:03:24,340 --> 00:03:28,245 대부분의 사람들은이의 NSLog를 사용하여 그것 때문에 당신에게 시간 스탬프를 제공하고, 우리는 볼 수 있습니다 60 00:03:28,245 --> 00:03:29,780 그 이후 행동. 61 00:03:29,780 --> 00:03:33,560 그러나, 일반적으로보다 유용 변수를 인쇄하는 방법. 62 00:03:33,560 --> 00:03:38,220 >> 그리고 또한 그것을 강조 표시 할 의 NSLog은 동일에 소요 63 00:03:38,220 --> 00:03:41,650 자리 값의 printf와는 달리 - 64 00:03:41,650 --> 00:03:45,900 그래서 % d이 (가) INT입니다, %의 F는 부동입니다. 65 00:03:45,900 --> 00:03:49,750 그러나, 나는 강조 싶어 이 마지막 한 - 66 00:03:49,750 --> 00:03:52,960 기호의 NSLog의 % - 67 00:03:52,960 --> 00:03:55,390 그 객체에 대한 자리 표시 자입니다. 68 00:03:55,390 --> 00:04:01,160 그리고 이전, 오브젝티브-C의 특가 말했듯 거의 대부분의 개체에, 69 00:04:01,160 --> 00:04:05,020 시 등이 사용에 올 것이다 아마도, 아마도, 인쇄 할 70 00:04:05,020 --> 00:04:08,390 있는 NSArray 또는 NSDictionary에, 또는있는 NSString. 71 00:04:08,390 --> 00:04:13,750 >> 그래서, 또한, 우리의 NSLog에서, 그 통지 문, 우리는 앞의 기호에이 72 00:04:13,750 --> 00:04:15,380 인용 - 73 00:04:15,380 --> 00:04:20,769 즉, 지금, 그 문자열을 의미하는 것입니다 오브젝티브-C의 개체입니다. 74 00:04:20,769 --> 00:04:23,310 그들은 더 이상 단순히 문자 별 없습니다. 75 00:04:23,310 --> 00:04:25,530 그들은 개체이고 있습니다 등의 처리. 76 00:04:25,530 --> 00:04:28,690 >> 그래서, 정말 중요하다고 할 때 당신의 NSLog를 사용 그것은 NS에 소요 77 00:04:28,690 --> 00:04:32,580 문자열, 이는 당신이해야합니다 것을 의미합니다 앞의시를 포함하도록 78 00:04:32,580 --> 00:04:34,270 인용 부호. 79 00:04:34,270 --> 00:04:38,290 당신이 모든에 여기를 참조 이유입니다 내 함수는 I,이의 NSLog 호출 80 00:04:38,290 --> 00:04:42,400 , 따옴표 앞의이도 % D와 % f를의의는 있지만 81 00:04:42,400 --> 00:04:45,200 C.에서 모두 같은 82 00:04:45,200 --> 00:04:47,930 >> 질문 지금까지? 83 00:04:47,930 --> 00:04:50,920 나는이 이렇게 빨리 통과하려고합니다 우리는 일에 더 많은 시간을 가질 수 84 00:04:50,920 --> 00:04:55,210 엑스 코드와 오브젝티브-C와, 너무 너희들은 더 많은 것을 얻을 수 있다는 것을 85 00:04:55,210 --> 00:04:57,630 잘 알고. 86 00:04:57,630 --> 00:05:01,900 >> 다음으로, 무언가를 강조 할 개념적으로 중요합니다. 87 00:05:01,900 --> 00:05:05,130 그래서, C, 대부분의 일들이 함수입니다. 88 00:05:05,130 --> 00:05:06,280 우리는 함수 호출을 확인합니다. 89 00:05:06,280 --> 00:05:10,190 우리는 함께 기능이 방법을 선언 반환 후, 첫 번째 유형 90 00:05:10,190 --> 00:05:13,570 함수 이름, 괄호 다음 어떤 인수 및 유형 91 00:05:13,570 --> 00:05:15,590 우리가 안으로 전달하려는 이러한 인수 92 00:05:15,590 --> 00:05:19,970 그리고 오브젝티브-C, 때문에 모든 개체 또는 클래스입니다 - 93 00:05:19,970 --> 00:05:23,970 그래서 클래스와 객체는 두 용어 것을 서로 거의 동의어 94 00:05:23,970 --> 00:05:28,270 그래서 교환을 사용할 수 있습니다 세미나를 통해. 95 00:05:28,270 --> 00:05:34,090 >> 그러나, 당신은 우리가 방법에있는이 것을 볼 수 있습니다 오브젝티브-C보다는 기능. 96 00:05:34,090 --> 00:05:36,390 그리고 방법은 개체에 속한다. 97 00:05:36,390 --> 00:05:38,950 그래서 그냥, 어쩌면 걸릴 예를 들어, 노드 - 98 00:05:38,950 --> 00:05:40,250 우리 형 [청취] 99 00:05:40,250 --> 00:05:44,390 PSET 6 또는 5에서 노드 - 100 00:05:44,390 --> 00:05:49,590 우리는 단어, 속성이 또는 다음 노드 포인터. 101 00:05:49,590 --> 00:05:53,880 방법은 간단하게 내부 함수입니다 구조의 일종. 102 00:05:53,880 --> 00:05:57,510 >> 그래서,이 경우에는 구조가 될 개체는 다음 방법은 103 00:05:57,510 --> 00:05:59,260 개체에 속해 뭔가. 104 00:05:59,260 --> 00:06:02,650 그리고 이것은 당신이 선언하는 방법입니다, 종류의, 방법에 관한 것이다. 105 00:06:02,650 --> 00:06:07,990 당신은 다시 반환과 함께 시작합니다 유형 - 그래서, 나는 색상에 노력 106 00:06:07,990 --> 00:06:12,990 여기에서 핵심 단어를 코딩하는이 남자 적어도, 서식을 볼 수 있습니다 107 00:06:12,990 --> 00:06:17,650 기능 사이의 유사성 선언 및 메서드 선언. 108 00:06:17,650 --> 00:06:21,990 그래서, 당신은 반환, 당신이 알고, 시작 분류 -이 경우는 배열, 또는 109 00:06:21,990 --> 00:06:23,910 NSArray를 포인터 - 110 00:06:23,910 --> 00:06:26,710 다음은이 방법이 있습니다. 111 00:06:26,710 --> 00:06:30,900 그리고, 무엇을 여기에서 흥미로운 것은 대신 괄호를 갖는, 우리 112 00:06:30,900 --> 00:06:32,900 이러한 콜론이 있습니다. 113 00:06:32,900 --> 00:06:38,450 그리고, 우리의 인수의 앞에, 우리 괄호 안에 다시 넣어 유형 114 00:06:38,450 --> 00:06:39,370 우리의 인수. 115 00:06:39,370 --> 00:06:43,160 >> 그래서, 지금은 수 있도록 노력하고있어 당신이 알고있는, N과,의 비교 116 00:06:43,160 --> 00:06:45,450 수, 그들은이기 때문에 같은 정수 모두. 117 00:06:45,450 --> 00:06:49,580 그리고, 다른 하나의 NSUInteger 유형입니다. 118 00:06:49,580 --> 00:06:56,390 그리고, 오브젝티브-C와, 때 당신에게 여러 인수를 갖고 싶어 119 00:06:56,390 --> 00:07:00,030 당신의 방법 절, 당신, 종류의, 종류의이 같은 그들을 분리 - 120 00:07:00,030 --> 00:07:03,790 나는 그것을 설명하는 방법을 잘 모르겠지만, 하지만이 방법을 당신의 좋은 예입니다 121 00:07:03,790 --> 00:07:06,530 거기에 여러 인수를 가질 수 있습니다. 122 00:07:06,530 --> 00:07:10,360 >> 당신은, 물론, 그냥 완전히 할 수 andArray 콜론을 무시 NSArray를 123 00:07:10,360 --> 00:07:13,240 당신은 방법을 원하는 배열하는 경우 즉, 하나의 인수에 소요됩니다. 124 00:07:13,240 --> 00:07:13,677 네, 질문입니다. 125 00:07:13,677 --> 00:07:18,701 >> 청중 : NSUInteger 모두가요 촬영 할 수있는 NSArray 인수 126 00:07:18,701 --> 00:07:21,530 NSArray를 내? 127 00:07:21,530 --> 00:07:22,060 >> RHED SHI : 예. 128 00:07:22,060 --> 00:07:23,400 그래서, 내가 설명 할 수 있습니다. 129 00:07:23,400 --> 00:07:23,790 그래서, 예. 130 00:07:23,790 --> 00:07:30,260 그래서, 질문이되었다 NSUInteger하고 인수를 NSArray * 유형 131 00:07:30,260 --> 00:07:31,570 그 맞습니다. 132 00:07:31,570 --> 00:07:35,700 그래서, 당신은 항상 무엇을 지정하려면 당신의 인수의 유형입니다. 133 00:07:35,700 --> 00:07:41,570 그리고 여기, 당신을 소개하려고 해요 의 구문과 개 단어의 일부 134 00:07:41,570 --> 00:07:45,910 오브젝티브-C, 그래서 사람들은 실제 유형입니다 당신이 처리 할 거라고. 135 00:07:45,910 --> 00:07:48,970 >> 그리고 당신은 알 수로, 배열 , 종류의, 더 이상 없습니다 136 00:07:48,970 --> 00:07:50,780 간단한 브래킷 가지. 137 00:07:50,780 --> 00:07:52,060 그들은 개체입니다. 138 00:07:52,060 --> 00:07:56,700 비록, 우리는 다음에 가면 슬라이드, 우리가 볼 수있는 우리가 할 수있는 그 139 00:07:56,700 --> 00:08:02,510 하드 코드 오브젝티브-C에서 NSArray를 앞에 단순히에서 기호 140 00:08:02,510 --> 00:08:04,190 괄호. 141 00:08:04,190 --> 00:08:08,650 나는 여부 실제로, 아주 확실하지 않다 나는 구문 배열을 하드 코딩 142 00:08:08,650 --> 00:08:16,020 올바르게 C 버전,하지만 그건 C 배열에 있어야. 143 00:08:16,020 --> 00:08:19,760 >> 그래서, 당신이, 당신이 알고하는 방법입니다, 아마도 함수를 사용하거나 144 00:08:19,760 --> 00:08:21,990 우리가 이전에 만든 방법. 145 00:08:21,990 --> 00:08:22,250 오른쪽? 146 00:08:22,250 --> 00:08:25,340 우리가 선언하는 곳 이예요 우리 기능과 우리의 방법. 147 00:08:25,340 --> 00:08:28,020 그리고 지금 우리는 그들을 사용하려면 우리의 프로그램은,이입니다 148 00:08:28,020 --> 00:08:29,450 우리는 그것을 수행하는 방법. 149 00:08:29,450 --> 00:08:32,400 그래서, C, 당신은, 당신은 알고있을 것입니다 아마도, 부울 B, 당신은으로 설정 150 00:08:32,400 --> 00:08:36,549 다음 함수와 동일하고, 당신은 인수를 전달합니다. 151 00:08:36,549 --> 00:08:39,190 >> 오브젝티브-C에서는, 예쁘다 거의 같은 것. 152 00:08:39,190 --> 00:08:43,370 당신은있는 NSArray *의 my_array 배열을 가지고 있고, 그것은이다 지금 만 - 동일하게 진행 153 00:08:43,370 --> 00:08:47,460 여기에 차이가이 개체의 것입니다, 어느 I가 노란색으로 강조하고, 한 154 00:08:47,460 --> 00:08:51,180 당신이 볼 수 있듯이, C에서, 거기에 다른 노란색 단어가 없습니다. 155 00:08:51,180 --> 00:08:54,170 방법이 속한 나죠 특정 객체. 156 00:08:54,170 --> 00:08:59,800 내가 개체가 필요 이유야 즉, 종류의,에,이 메소드를 호출 157 00:08:59,800 --> 00:09:04,360 다음은 제로, 그리고 NSArray를 A, B, C, D. 158 00:09:04,360 --> 00:09:05,350 질문 있는가? 159 00:09:05,350 --> 00:09:12,190 >> 우리는 행동에 이러한 개념을 볼 수 있습니다 곧 우리가 데모에 갈 때. 160 00:09:12,190 --> 00:09:13,400 OK. 161 00:09:13,400 --> 00:09:17,170 지금, 나는 짧게 조금 얘기하고 싶어 입니다 엑스 코드 5에 대한 162 00:09:17,170 --> 00:09:21,160 통합 개발 환경 당신과 함께 일하게 될 거라고. 163 00:09:21,160 --> 00:09:26,160 나는 당신을 많이 알고, 또는 당신의 일부 문제가 맥을 가지고 있지 않습니다 164 00:09:26,160 --> 00:09:30,490 엑스 코드는 사용할 수 없기 때문에 Windows 및 PC 용. 165 00:09:30,490 --> 00:09:32,785 왜, 그러나 아마 저를 묻지 마세요 - 166 00:09:32,785 --> 00:09:33,730 그래, 기업. 167 00:09:33,730 --> 00:09:35,290 뭐든간에. 168 00:09:35,290 --> 00:09:39,360 어쨌든, 그래서, 제가 사과를 몇 가지의 경우 당신은 어떤 종류의를 다운로드해야합니까 169 00:09:39,360 --> 00:09:43,000 맥을위한 가상 머신 엑스 코드 5를 실행하려면. 170 00:09:43,000 --> 00:09:46,460 하지만 꽤 멋진입니다 사용하는 소프트웨어. 171 00:09:46,460 --> 00:09:51,280 >> 그리고, 이전에 우리는 어떤 종류로 다이빙 데모, 나는 당신을 보여주고 싶어 172 00:09:51,280 --> 00:09:55,700 엑스 코드가있는 모습의 사진을 당신의 창하고도 이야기 173 00:09:55,700 --> 00:09:57,670 이 모든 공간은 무엇인지. 174 00:09:57,670 --> 00:10:01,600 그래서, 그것은 종류의 학습처럼 방법 당신이 원하는을 제외하고, Microsoft Word를 사용 175 00:10:01,600 --> 00:10:04,675 모두와 친숙 얻을 다른 일이 176 00:10:04,675 --> 00:10:06,250 여기에 갈 수 있습니다. 177 00:10:06,250 --> 00:10:11,160 >> 그래서 일단, 난 당신을 가리 키도록 할 맨 위에있는 도구 모음에. 178 00:10:11,160 --> 00:10:14,450 당신은 상단에, 그것을 볼 수 있습니다, 당신은 파일 이름이 있습니다 - 179 00:10:14,450 --> 00:10:18,100 또는, 실제로 프로젝트 이름 다음 파일 이름을 지정합니다. 180 00:10:18,100 --> 00:10:20,940 놀이의 메모를 가지고 정지 버튼. 181 00:10:20,940 --> 00:10:24,210 사람들은 당신이있을거야 것들 에 응용 프로그램을 실행하는 데 사용 182 00:10:24,210 --> 00:10:25,600 시뮬레이터 - 183 00:10:25,600 --> 00:10:26,550 아이폰 OS 시뮬레이터. 184 00:10:26,550 --> 00:10:29,940 이것은 자동으로 엑스 코드 5와 함께 제공 그래서 당신에 대해 걱정할 필요가 없습니다 185 00:10:29,940 --> 00:10:32,070 시뮬레이터의 어떤 종류를 다운로드. 186 00:10:32,070 --> 00:10:34,700 당신은 플레이를 눌러 다음은 응용 프로그램을 실행합니다. 187 00:10:34,700 --> 00:10:39,230 그리고 당신은 당신과 함께 놀러 및 수 당신이 나중에 어떻게 작동하는지 볼 수 있습니다. 188 00:10:39,230 --> 00:10:42,690 >> 그리고, 중앙에 물론이다 여기서 당신의 아름다운 모든 코드는 189 00:10:42,690 --> 00:10:44,240 갈. 190 00:10:44,240 --> 00:10:48,340 그리고 그 후, 왼쪽에하면 거 이것을 가지고, 일종의, 폴더 - 191 00:10:48,340 --> 00:10:50,340 탐색 - 192 00:10:50,340 --> 00:10:53,970 다음, 당신은 또한 함께, 그를 볼 수 있습니다 폴더 아이콘으로,이 있습니다 193 00:10:53,970 --> 00:10:57,680 거기에 다른 아이콘의 무리가 나중에 도움이 될 것입니다. 194 00:10:57,680 --> 00:11:04,710 >> 그리고, 우측 유틸리티입니다 당신과 함께 작업 할 수 있습니다 영역 195 00:11:04,710 --> 00:11:09,620 일부 개체, 당신을 지정 알다시피, 색상이 있어야 할 무엇, 무엇을 196 00:11:09,620 --> 00:11:12,040 텍스트 글꼴 등등이어야한다. 197 00:11:12,040 --> 00:11:15,890 당신이하는 모든 일, 비록 유틸리티 영역에서, 당신은 할 수 198 00:11:15,890 --> 00:11:17,480 뿐만 아니라 코드에서 않습니다. 199 00:11:17,480 --> 00:11:21,630 그래서, 나는 두 가지를 통해 갈 것 에서, 단순히 어떤 코드를 사용하지 않는 예 200 00:11:21,630 --> 00:11:23,730 모든 - 또는 아주 최소한의 코드 - 201 00:11:23,730 --> 00:11:28,290 모든 코드 구절, 그냥이 남자 당신이과에서 할 수있는 것과 할 수없는 것을 알고 202 00:11:28,290 --> 00:11:29,260 엑스 코드와 오브젝티브-C. 203 00:11:29,260 --> 00:11:32,770 >> 그리고, 마지막으로, 아래로 바닥에, 당신은 디버그 공간이 있습니다. 204 00:11:32,770 --> 00:11:37,270 그래서, 당신은 더 이상, GDB를 실행할 필요가 없습니다 기타 등등, 프로그램에. 205 00:11:37,270 --> 00:11:39,180 그것은 자동으로 당신을 위해 그것을 않습니다. 206 00:11:39,180 --> 00:11:42,880 그리고 당신은 또한 인쇄 할 수 있습니다 이 지역에 물건. 207 00:11:42,880 --> 00:11:46,790 그래서 실제로, 나중에, 우리는 갈 거에요 mario.c, 너희들은 아직도 기억한다면 208 00:11:46,790 --> 00:11:49,000 즉, 엑스 코드에서. 209 00:11:49,000 --> 00:11:50,360 그래서 재미 있어야한다. 210 00:11:50,360 --> 00:11:55,870 >> 그리고, 단지 그것을 돌려 보내야 오브젝티브-C, 내가 강조하고 싶은 211 00:11:55,870 --> 00:11:57,440 당신은 if 문으로 할 수 있습니다. 212 00:11:57,440 --> 00:12:03,160 오브젝티브-C이기 때문에 그래서, 당신은 알고있다 C의 수퍼 셋, 당신은 모든 일이며, 213 00:12:03,160 --> 00:12:06,890 C. 당신 같은 문자, 같은 단지 약간의 차이가있다. 214 00:12:06,890 --> 00:12:10,810 그래서, 당신은 만약에 양식을 알 수 있습니다 문은 여전히​​ 동일합니다 - 당신은이 215 00:12:10,810 --> 00:12:14,280 당신은 괄호가 다음 경우 및 내부 상태, 그 다음 216 00:12:14,280 --> 00:12:17,150 당신이 무엇을위한 중괄호 이 내부 싶다. 217 00:12:17,150 --> 00:12:21,680 >> 그러나, 나는이 슬라이드를 위로하고 싶었다 여기에, 단순히 설명하기 위해, 218 00:12:21,680 --> 00:12:25,680 우리는 이제 개체를 다루고 있기 때문에 우리는이 일을 사용해야합니다 219 00:12:25,680 --> 00:12:31,240 같은라는 문자열에 해당되는 의이다, 우연히 방법 220 00:12:31,240 --> 00:12:33,710 문자열 또는있는 NSString 객체. 221 00:12:33,710 --> 00:12:38,600 따라서, 단어가,이 경우, 수 NSString이며 개체 및 그 불리는 방법을 가지고 222 00:12:38,600 --> 00:12:44,150 문자열에 해당하고, 그 때 우리는 통과하고 볼 수있는 하드 코딩 된 문자열 223 00:12:44,150 --> 00:12:48,110 사람들이 같은지 여부를 서로. 224 00:12:48,110 --> 00:12:51,580 >> 질문 지금까지? 225 00:12:51,580 --> 00:12:52,440 OK. 226 00:12:52,440 --> 00:12:56,190 그리고, 나는에 가고 싶어 또한 문. 227 00:12:56,190 --> 00:13:01,420 >> 따라서 예를 들어, 우리가 원하는 경우 루프 C에서 문자열의 길이에,이 228 00:13:01,420 --> 00:13:03,710 당신에 대해 잘 알고 있어야합니다. 229 00:13:03,710 --> 00:13:07,840 그리고, 오브젝티브-C에, 내가 원하는거야 , 종류의,이 강조 230 00:13:07,840 --> 00:13:09,235 방법 조사했다. 231 00:13:09,235 --> 00:13:13,260 232 00:13:13,260 --> 00:13:15,550 음, 사실, 나에게하자 그냥 다시 가져 가라. 233 00:13:15,550 --> 00:13:17,200 카운트는 배열 방법이다. 234 00:13:17,200 --> 00:13:21,070 그러나,보다 구체적으로의 정보 왜이다 배열의 속성 235 00:13:21,070 --> 00:13:22,380 점 표기법을 사용할 수 있습니다. 236 00:13:22,380 --> 00:13:25,870 그러나 나는 너무 많이 들어갈 싶지 않아 이 개념의 물건, 난 그냥 원하는 237 00:13:25,870 --> 00:13:30,140 가지 모양을하는 방법을 보여 같은 C. 대 목표-C에 238 00:13:30,140 --> 00:13:35,400 >> 그리고 또한, 내가 지적하고 싶은 않는 나는 NSUInteger을 사용하고있다하더라도 239 00:13:35,400 --> 00:13:39,860 오브젝티브-C에있는 나의 내가 년대의 앞에, INT이기 때문에 당신은 또한, INT를 사용할 수 있습니다 240 00:13:39,860 --> 00:13:42,290 오브젝티브-C에서 완전히 유효한, 또한. 241 00:13:42,290 --> 00:13:42,475 예? 242 00:13:42,475 --> 00:13:44,350 >> 청중 : 그냥가요 문체, 또는이다 - 243 00:13:44,350 --> 00:13:44,760 >> RHED SHI : 네. 244 00:13:44,760 --> 00:13:46,060 그래서, 당신은 볼 수로 - 245 00:13:46,060 --> 00:13:49,390 그래서, 질문은했다 단지 문체의 문제를 해결합니다. 246 00:13:49,390 --> 00:13:54,820 앞으로 살펴 보 겠지만, 나는, 종류의, 별이 별표 아래로 아래에있는 것, 그리고 247 00:13:54,820 --> 00:13:59,870 해당 링크는 스택 오버플로 이동 누군가가 설명하는, 즉, 248 00:13:59,870 --> 00:14:03,640 의 int의 차이 NSInteger와 NSUInteger. 249 00:14:03,640 --> 00:14:05,540 그래서, 당신은 대략 나중에 읽을 수 있습니다. 250 00:14:05,540 --> 00:14:07,640 이 슬라이드는 물론이 될 것입니다, 사용 가능한. 251 00:14:07,640 --> 00:14:10,300 252 00:14:10,300 --> 00:14:11,280 >> 보자. 253 00:14:11,280 --> 00:14:12,150 OK, 끝내. 254 00:14:12,150 --> 00:14:15,410 그래서,이 또한 슬라이드에 포함되어 있습니다 나는 이것이 좋은 생각 때문에 255 00:14:15,410 --> 00:14:19,370 을 소개 웹 사이트 오브젝티브-C 구문. 256 00:14:19,370 --> 00:14:24,410 그래서, 실제로, 왜 우리는 이동하지 않는다 크롬이 웹 사이트를 체크 아웃? 257 00:14:24,410 --> 00:14:30,650 258 00:14:30,650 --> 00:14:31,300 >> 오른쪽. 259 00:14:31,300 --> 00:14:36,670 그래서, 난 당신을 보여주고 싶어 여기에 사람이 이미지입니다. 260 00:14:36,670 --> 00:14:41,630 그래서,이, 종류의, 될 것입니다 무엇 당신은 어떤의 내부를 볼거야 261 00:14:41,630 --> 00:14:42,890 엑스 코드 파일입니다. 262 00:14:42,890 --> 00:14:47,400 263 00:14:47,400 --> 00:14:51,430 사실, 왜 우리는 단지을지지 않습니다 , 종류의, 안으로이 걸리는 순간 264 00:14:51,430 --> 00:14:53,470 >> 그래서,이 책 - 265 00:14:53,470 --> 00:14:55,880 즉, 오브젝트의 그 우리가 상대하고. 266 00:14:55,880 --> 00:14:59,680 그리고, 그것은 분명있을거야 다른 개체에서 상속하지만, 267 00:14:59,680 --> 00:15:01,810 당신은 그것에 대해 걱정할 필요가 없습니다. 268 00:15:01,810 --> 00:15:04,430 그리고, 그것은 아마도 가지고 일부 멤버 변수. 269 00:15:04,430 --> 00:15:09,160 >> 내가 보여주고 싶은 중요한 것은 여기에 인스턴스 방법입니다. 270 00:15:09,160 --> 00:15:12,670 그래서, 예를 방법이 표시된다 이 마이너스로. 271 00:15:12,670 --> 00:15:15,550 당신이 알 수로 그리고, 우린 이미 패러다임을보기 시작 272 00:15:15,550 --> 00:15:17,670 메소드 선언, 오른쪽? 273 00:15:17,670 --> 00:15:22,670 반환 형식, 메서드 이름, 그리고 다음 인수의 유형 및 274 00:15:22,670 --> 00:15:24,660 다음 인수의 이름입니다. 275 00:15:24,660 --> 00:15:29,090 그리고이 마이너스 부호는 것을 의미 인스턴스 메서드하는 것을 의미한다 276 00:15:29,090 --> 00:15:32,270 이러한 방법 만 사용할 수 있습니다 인스턴스화 된 개체. 277 00:15:32,270 --> 00:15:35,050 278 00:15:35,050 --> 00:15:39,100 >> 더하기와 그 대비하려면 방법 그들 앞에서 서명 클래스입니다 279 00:15:39,100 --> 00:15:43,640 방법, 이는 호출 할 수 있음을 의미 이러한 방법도 가지고 있지 않은 경우 280 00:15:43,640 --> 00:15:45,970 객체가 아직 생성. 281 00:15:45,970 --> 00:15:51,600 따라서, 명확한 예를 들어, 있는 NSString은 클래스입니다. 282 00:15:51,600 --> 00:15:55,850 그리고 당신은 예를 들어, 호출 할 수 있습니다, 있는 NSString에 클래스 메소드 - 283 00:15:55,850 --> 00:15:58,660 실제, 같은 단어있는 NSString. 284 00:15:58,660 --> 00:16:02,050 >> 그러나, 순서대로 사용하기 방법, 당신이 실제로 285 00:16:02,050 --> 00:16:03,460 문자열을 작성해야합니다. 286 00:16:03,460 --> 00:16:08,980 예를 들어,있는 NSString 스타 문자열은 동일 따옴표에, 안녕하세요. 287 00:16:08,980 --> 00:16:10,910 그리고, 당신은이 방법을 사용할 수 있습니다 - 288 00:16:10,910 --> 00:16:11,990 인스턴스 메서드 - 289 00:16:11,990 --> 00:16:14,790 그 헬로 세계 문자열에. 290 00:16:14,790 --> 00:16:17,825 그래서, 그 차이의 인스턴스 메소드와 클래스 메소드. 291 00:16:17,825 --> 00:16:20,390 292 00:16:20,390 --> 00:16:21,930 >> 그리고, 우리는 바로이 부​​분에 덮여있다. 293 00:16:21,930 --> 00:16:25,300 294 00:16:25,300 --> 00:16:33,750 속성은 다른 것입니다 객체의 내부, 기본적으로. 295 00:16:33,750 --> 00:16:37,530 그리고 당신은 그들을 선언 property 키워드에. 296 00:16:37,530 --> 00:16:39,940 현재, 이러한 옵션이 있습니다, 때 나중에 설명 할 것이다 것을 297 00:16:39,940 --> 00:16:43,110 우리는 데모로 이동합니다. 298 00:16:43,110 --> 00:16:43,660 예? 299 00:16:43,660 --> 00:16:43,950 안녕하세요. 300 00:16:43,950 --> 00:16:45,440 >> 청중 : 당신이, 제발 확대 있을까요? 301 00:16:45,440 --> 00:16:46,130 >> RHED SHI : 아, 네. 302 00:16:46,130 --> 00:16:46,560 미안 해요. 303 00:16:46,560 --> 00:16:49,140 >> 청중 : 감사합니다. 304 00:16:49,140 --> 00:16:50,005 >> RHED SHI : 그건 더 많이해야한다. 305 00:16:50,005 --> 00:16:51,240 >> 청중 : 네. 306 00:16:51,240 --> 00:16:53,940 감사합니다. 307 00:16:53,940 --> 00:16:56,815 >> RHED SHI : 네, 저를 생각 나게하십시오 경우 나는 확대 또는 축소하는 것을 잊지. 308 00:16:56,815 --> 00:17:00,590 309 00:17:00,590 --> 00:17:03,570 그래서, 내가 원하는 모든 것입니다 당신을 보여 - 310 00:17:03,570 --> 00:17:05,970 와우, 너무 많아 - 311 00:17:05,970 --> 00:17:06,790 이 웹 사이트에 대한. 312 00:17:06,790 --> 00:17:12,210 자, 다시 우리의 슬라이드에 가자. 313 00:17:12,210 --> 00:17:17,819 >> 사실, 지금의이 순간을 봅시다 데모로 다이빙. 314 00:17:17,819 --> 00:17:25,490 그래서, 우리는 함께 시작합니다 새 Xcode 프로젝트. 315 00:17:25,490 --> 00:17:33,040 그래서, 당신은 모두에 엑스 코드가 열릴 경우 당신의 컴퓨터는, 당신에게 몇 가지를 취해야한다 316 00:17:33,040 --> 00:17:36,720 그것은 같은 오픈하거나, 해당 페이지에 위치 까지 기존 프로젝트 또는 새 317 00:17:36,720 --> 00:17:39,230 프로젝트, 당신은해야 새 프로젝트를 클릭합니다. 318 00:17:39,230 --> 00:17:41,477 그리고, 그것은해야 이 화면으로. 319 00:17:41,477 --> 00:17:41,593 예? 320 00:17:41,593 --> 00:17:44,279 >> 청중 : 우리는 맥이없는 경우, 우리는 단지 종류의 진정합니까? 321 00:17:44,279 --> 00:17:46,870 >> RHED SHI : 또는 볼 사람과, 그래. 322 00:17:46,870 --> 00:17:47,740 그래. 323 00:17:47,740 --> 00:17:50,660 여러분은 진정 할 수 있습니다. 324 00:17:50,660 --> 00:17:51,570 OK. 325 00:17:51,570 --> 00:17:55,410 >> 그래서, 우리가 먼저 할 거 야하는 것은, 실제로, 우리는 할 거 야한다 326 00:17:55,410 --> 00:17:56,600 하나의보기 응용 프로그램입니다. 327 00:17:56,600 --> 00:18:01,340 당신이 알 수 있다면, 무슨 일이 좋아요 엑스 코드와 애플의 지원에 대한 328 00:18:01,340 --> 00:18:05,690 개발자는 많이 가지고있다 이미 작업을하는 템플릿. 329 00:18:05,690 --> 00:18:09,210 당신은, 예를 들어, 만들 수 마스터 - 세부 응용 프로그램입니다. 330 00:18:09,210 --> 00:18:10,920 당신은 게임을 할 수 있습니다 - 331 00:18:10,920 --> 00:18:13,860 실제로, 나는 게임에 가지 않을 것이다, 게임은 다른 이야기이기 때문에 332 00:18:13,860 --> 00:18:15,320 아이폰 OS 개발. 333 00:18:15,320 --> 00:18:18,930 그리고 그들은 종류의, 분리하고 그래서 나는 그것으로 가지 않을 것이다. 334 00:18:18,930 --> 00:18:22,580 >> 그렇다면, 당신은 페이지 기반이 응용 프로그램. 335 00:18:22,580 --> 00:18:24,010 당신은 탭 응용 프로그램이 있습니다 - 336 00:18:24,010 --> 00:18:29,350 그래서 예를 들어, 좋아하는, 미국의 은행 아마, 같은 탭 앱이 있습니다. 337 00:18:29,350 --> 00:18:32,140 그것은 당신이 사람이야 하단의 버튼입니다. 338 00:18:32,140 --> 00:18:34,750 그리고, 당신은 스프 키트 게임이있다. 339 00:18:34,750 --> 00:18:38,670 >> 아니면, 처음부터 작업 할 수 나중에 무엇을 할 거 야입니다. 340 00:18:38,670 --> 00:18:42,470 그러나하자, 처음, 시작 단일 뷰 응용 프로그램입니다. 341 00:18:42,470 --> 00:18:48,590 그런 다음 제품 이름을 요청할 것입니다, 그리고 우리는 단지 테스트를 수행 할 수 있습니다. 342 00:18:48,590 --> 00:18:50,190 조직 이름 - 343 00:18:50,190 --> 00:18:54,140 그래서, 조직 이름, 회사 식별자 - 344 00:18:54,140 --> 00:18:58,100 당신이려고하는 경우에 사람들은 중요하다 앱 스토어에 앱을 넣어. 345 00:18:58,100 --> 00:19:01,110 346 00:19:01,110 --> 00:19:05,116 그 외에는, 귀하의 코드는 것입니다 이없이 절대적으로 잘 실행. 347 00:19:05,116 --> 00:19:09,940 >> 이 중요 할 것입니다 만약에 당신 원하는 - 그래서, 그 자체처럼, 앱을 넣어 348 00:19:09,940 --> 00:19:14,080 전화 또는 뭔가, 테스트 상 그 중, 당신이 알고, 실제 생활에서 - 349 00:19:14,080 --> 00:19:15,360 이 중요 할 것이다. 350 00:19:15,360 --> 00:19:20,110 이것은 일반적으로 연관되는 경향 개발자 계정의 일종 351 00:19:20,110 --> 00:19:20,970 애플. 352 00:19:20,970 --> 00:19:24,740 >> 그래서, 나는, 아마도 당신을 많이 알고 모든 개발자 계정이없는 것입니다. 353 00:19:24,740 --> 00:19:26,460 나는 대학이 하나가 알고있다. 354 00:19:26,460 --> 00:19:27,630 나는 CS가 하나있다 생각합니다. 355 00:19:27,630 --> 00:19:32,770 그러나, 당신은 저를 이메일을 보낼 수 있고 볼게요 당신을 위해 그것을 알아낼. 356 00:19:32,770 --> 00:19:38,210 하지만 지금은, 난 그냥 보냈던 여기에 몇 가지 틀 가지. 357 00:19:38,210 --> 00:19:41,250 >> 그리고 당신은, 물론, 여기에서 선택할 수 있습니다 당신은 전적으로 될 것인지 358 00:19:41,250 --> 00:19:44,410 아이폰, 아이 패드, 또는 둘 다 - 359 00:19:44,410 --> 00:19:46,630 범용. 360 00:19:46,630 --> 00:19:56,170 그래서, 지금은 단지의 보편적하자 플랫폼의 양면을 보려면. 361 00:19:56,170 --> 00:19:57,120 >> 보자. 362 00:19:57,120 --> 00:20:01,510 그래서 지금, 내가 저장거야 그 폴더의 어떤 종류의. 363 00:20:01,510 --> 00:20:04,500 여기서 중요하지 않습니다 - 당신을 나중에 언제든지 이동할 수 있습니다. 364 00:20:04,500 --> 00:20:09,380 그리고 지금, 우리는 이동됩니다 우리의 Xcode 프로젝트에. 365 00:20:09,380 --> 00:20:12,890 나는이 모든 걱정하지 않을 것입니다. 366 00:20:12,890 --> 00:20:17,510 나는 중 하나를 터치하지 제안 이, 당신이 알고하지 않는 한 정확히 367 00:20:17,510 --> 00:20:18,260 당신은하고 있어요. 368 00:20:18,260 --> 00:20:21,750 그래서,이 모든, 그냥 무시 대부분의 경우. 369 00:20:21,750 --> 00:20:26,940 당신은 그것을 만질 필요하고, 경우에 없습니다 여기에 몇 가지 일을 엉망을 수행, 그것은 370 00:20:26,940 --> 00:20:28,600 조금 까다로운 가져옵니다. 371 00:20:28,600 --> 00:20:32,480 >> 그럼, 왜 우리는에 보이지 않는 의 파일 372 00:20:32,480 --> 00:20:34,700 네비게이터의 왼쪽 편. 373 00:20:34,700 --> 00:20:37,060 여기, 우리는 AppDelegate.h있다. 374 00:20:37,060 --> 00:20:43,430 우리는 AppDelegate.m 그래서이 당신​​ 겠지만 통지, 우리는 파일을, 헤더이있는 375 00:20:43,430 --> 00:20:45,720 도트 시간에 종료, 그리고 우리는 구현 - 376 00:20:45,720 --> 00:20:46,970 실제로, 저를 확대하자 377 00:20:46,970 --> 00:20:56,270 378 00:20:56,270 --> 00:20:57,060 OK. 379 00:20:57,060 --> 00:20:59,940 저를 확대하자 380 00:20:59,940 --> 00:21:05,810 >> 마우스 오른쪽 단추로, 그래서 당신은 헤더 파일과 한 당신은 실행 파일이 있습니다. 381 00:21:05,810 --> 00:21:07,060 사실 - 382 00:21:07,060 --> 00:21:08,680 383 00:21:08,680 --> 00:21:09,240 OK. 384 00:21:09,240 --> 00:21:11,800 이것은 조금 이상한 하지만 나와 함께 곰. 385 00:21:11,800 --> 00:21:16,140 그런 다음, 때문에 우리는 하나의보기를 선택했습니다 응용 프로그램, 우리가 될 것입니다 386 00:21:16,140 --> 00:21:17,340 스토리 보드 작업. 387 00:21:17,340 --> 00:21:22,140 >> 그래서, 스토리 보드 뭔가입니다 애플 정말 도움이하기에 도달했습니다 388 00:21:22,140 --> 00:21:26,550 개발자는 신속하게 프로토 타입 자신의 응용 프로그램. 389 00:21:26,550 --> 00:21:29,410 만들 수있는 곳 이예요 를 작성하지 않고 응용 프로그램 390 00:21:29,410 --> 00:21:31,710 코드 한 줄. 391 00:21:31,710 --> 00:21:35,390 그러나, 우리의 하나의보기 응용 프로그램에서, 우리는 물론,해야합니까 392 00:21:35,390 --> 00:21:41,270 우리의보기에 어떤 파일 뷰 컨트롤러입니다. 393 00:21:41,270 --> 00:21:45,150 그래서, 우리는 헤더를 가지고 여기 구현 파일. 394 00:21:45,150 --> 00:21:52,350 >> 그리고, 지금은 축소거야 때문에 우리는 스토리 보드에서 작동해야합니다. 395 00:21:52,350 --> 00:21:55,190 그래서, 여기에 우리의 관점입니다. 396 00:21:55,190 --> 00:22:00,120 우리 경우, 간단하게,, 지금 응용 프로그램을 실행 가는 많은 흥미가 아니다. 397 00:22:00,120 --> 00:22:03,270 398 00:22:03,270 --> 00:22:05,040 그래서, 당신은이 흰색 화면을 볼 수 있습니다. 399 00:22:05,040 --> 00:22:06,110 OK? 400 00:22:06,110 --> 00:22:14,010 >> 그리고, 우리의 유틸리티 영역에서, 우리는 추가 할 수 있습니다 거기에 여러 가지 무리. 401 00:22:14,010 --> 00:22:19,290 그래서, 당신은 화면을 처리 할 때 이오스, 뷰 컨트롤러가 있습니다 402 00:22:19,290 --> 00:22:23,150 캡슐화 객체, 종류의, 귀하의 의견. 403 00:22:23,150 --> 00:22:26,980 그래서, 뷰 컨트롤러는 항상 보기 속성을 촉구했다. 404 00:22:26,980 --> 00:22:29,610 그리고보기는 일반적으로 포함 당신은 알고, 무엇을 405 00:22:29,610 --> 00:22:30,810 화면에 표시합니다. 406 00:22:30,810 --> 00:22:39,210 >> 그래서, 음, 그냥 넣어 시작하자, 아마, 어쩌면 레이블입니다. 407 00:22:39,210 --> 00:22:41,450 그래서, 거기에 라벨을 만들어 보자 - 408 00:22:41,450 --> 00:22:44,080 중간에 스틱. 409 00:22:44,080 --> 00:22:49,560 그래서, 지금 난, 라벨에 클릭했는지 속성 관리자에 갈 수 있습니다 410 00:22:49,560 --> 00:22:51,510 그 값을 변경 시작합니다. 411 00:22:51,510 --> 00:22:55,040 의는 CS50 색상을 부르 자. 412 00:22:55,040 --> 00:22:58,220 >> 그리고, 나 또한 글꼴을 변경할 수 있습니다. 413 00:22:58,220 --> 00:23:02,630 대신에 시스템을 수행 그래서, 어떤 기본적으로, 우리는 사용자 정의 하나를 수행 할 수 있습니다. 414 00:23:02,630 --> 00:23:03,770 우리는 변경할 수 있습니다 - 415 00:23:03,770 --> 00:23:06,453 당신도 알다시피, 초경량, 그것은 32합니다. 416 00:23:06,453 --> 00:23:09,000 417 00:23:09,000 --> 00:23:11,370 그리고, 우리는 우리의 상자가 큰 만들 수 있습니다. 418 00:23:11,370 --> 00:23:14,410 >> 청중 : 당신은 당신이 확대 할 수 있습니다 생각하십니까 조금 더에, 아마? 419 00:23:14,410 --> 00:23:14,810 >> RHED SHI : 그래? 420 00:23:14,810 --> 00:23:16,196 OK. 421 00:23:16,196 --> 00:23:17,450 >> 청중 : 그냥 가볍게? 422 00:23:17,450 --> 00:23:19,020 >> RHED 삼성 중공업 : 보자. 423 00:23:19,020 --> 00:23:20,382 이 일을합니까? 424 00:23:20,382 --> 00:23:22,270 >> 청중 : 그냥 엑스 코드를 전달? 425 00:23:22,270 --> 00:23:23,520 >> RHED SHI : 물론. 426 00:23:23,520 --> 00:23:25,620 427 00:23:25,620 --> 00:23:25,940 OK. 428 00:23:25,940 --> 00:23:26,275 신난다. 429 00:23:26,275 --> 00:23:27,072 >> 대상 : 아래의 레이블? 430 00:23:27,072 --> 00:23:28,920 레이블? 431 00:23:28,920 --> 00:23:29,480 >> RHED SHI : 저게 뭐죠? 432 00:23:29,480 --> 00:23:32,050 >> 청중 : 무엇 드롭 다운 아래의 레이블인가? 433 00:23:32,050 --> 00:23:35,170 >> RHED SHI : 그래서, 문제는 무엇인지 드롭 다운은 아래의 레이블인가? 434 00:23:35,170 --> 00:23:37,260 그것은 단순히 여기에서해야한다. 435 00:23:37,260 --> 00:23:39,330 나는 큐브 것 같아요. 436 00:23:39,330 --> 00:23:40,910 그러나 일반적으로,이 값이 기본값입니다 - 437 00:23:40,910 --> 00:23:43,250 난 그냥 여기 아래로 갈거야 나는 레이블을 찾을 때까지. 438 00:23:43,250 --> 00:23:45,800 439 00:23:45,800 --> 00:23:47,730 그래. 440 00:23:47,730 --> 00:23:48,950 >> 그래서 지금, 우리는 우리의 레이블이. 441 00:23:48,950 --> 00:23:51,040 현실을 중심 보자. 442 00:23:51,040 --> 00:23:56,410 그리고 엑스 코드는 우리에게 지침을 제공합니다 객체를 중심하십시오. 443 00:23:56,410 --> 00:23:59,510 444 00:23:59,510 --> 00:24:01,480 자, 이제 다시 우리의 코드를 실행할 수 있습니다. 445 00:24:01,480 --> 00:24:08,110 446 00:24:08,110 --> 00:24:08,800 >> 거기 우리는 간다. 447 00:24:08,800 --> 00:24:10,310 그래서, 우리는 CS50 색상이있다. 448 00:24:10,310 --> 00:24:13,720 449 00:24:13,720 --> 00:24:15,420 그리고 이제, 버튼을 만들어 보자 거기에, 오른쪽? 450 00:24:15,420 --> 00:24:17,480 우리가 만들고 싶어하기 때문에 이 대화 형. 451 00:24:17,480 --> 00:24:19,410 그래서, 여기에 버튼을 만들어 보자. 452 00:24:19,410 --> 00:24:39,020 그리고 우리는 여기에서이 버튼 "탭을 부를 것 계속. "우리는 또한, 가운데에 있습니다 453 00:24:39,020 --> 00:24:39,990 사실, 이미 중앙에있어. 454 00:24:39,990 --> 00:24:40,630 그래. 455 00:24:40,630 --> 00:24:43,130 >> 그래서, 지금 우리는 버튼이 있습니다. 456 00:24:43,130 --> 00:24:53,000 우리가 다시 실행하면, 우리는거야 여기에 좋은 작은 버튼이 있습니다. 457 00:24:53,000 --> 00:24:56,520 그리고 나는 그것을 클릭 할 수 있지만하지 않습니다 무엇이든, 우리가하지 않은 때문에 458 00:24:56,520 --> 00:24:58,500 아직 버튼으로 아무것도. 459 00:24:58,500 --> 00:25:01,740 >> 그래서, 좋아, 다른보기를 만들 수? 460 00:25:01,740 --> 00:25:04,160 그래서, 탭하려는의 말을하자 그 버튼 내가 원하는 461 00:25:04,160 --> 00:25:05,730 다른 페이지로 이동 - 462 00:25:05,730 --> 00:25:06,820 다른보기. 463 00:25:06,820 --> 00:25:14,440 내가 할거야 것은, 내가 만들 수 있습니다 보기 컨트롤러, 오른쪽? 464 00:25:14,440 --> 00:25:19,690 지금은 내 버튼을 클릭 한 다음, 수 있습니다 중요한 것은 내가에 갈거야,입니다 465 00:25:19,690 --> 00:25:20,910 클릭 - 또는 - 466 00:25:20,910 --> 00:25:23,660 예, 키보드의 키를 눌러 제어 할 수 있습니다. 467 00:25:23,660 --> 00:25:24,880 제어. 468 00:25:24,880 --> 00:25:27,005 버튼을 클릭하고 드래그합니다. 469 00:25:27,005 --> 00:25:29,960 470 00:25:29,960 --> 00:25:33,550 >> 따라서, 컨트롤 키를 누른 기억. 471 00:25:33,550 --> 00:25:35,160 의 한번 더 해요. 472 00:25:35,160 --> 00:25:40,930 따라서, 컨트롤을 클릭 한 채로 드래그 당신이 원하는 무엇을. 473 00:25:40,930 --> 00:25:41,520 OK. 474 00:25:41,520 --> 00:25:43,610 >> 그리고 지금, 여기 몇 가지 옵션이 있습니다. 475 00:25:43,610 --> 00:25:47,900 나도 할 수 넣거나, 내가 할 수 있습니다 모달, 아니면 사용자 정의 할 수 있습니다. 476 00:25:47,900 --> 00:25:50,900 푸시는 경우에만입니다 탐색 컨트롤러. 477 00:25:50,900 --> 00:25:54,270 바로 지금, 우리의 첫 번째보기 컨트롤러는 내부에없는 478 00:25:54,270 --> 00:25:55,610 탐색 컨트롤러. 479 00:25:55,610 --> 00:25:59,500 따라서, 네비게이션 컨트롤러는 하나입니다 그것은 당신에게 다시 버튼을 제공합니다 480 00:25:59,500 --> 00:26:03,910 당신이 가지고있는 아이폰 OS 응용 프로그램은, 당신은 알고있다, 그 위에, 종류의, 두꺼운 바 - 481 00:26:03,910 --> 00:26:06,480 돌아가서, 또는 수 앞으로, 등등. 482 00:26:06,480 --> 00:26:07,740 지금, 그이 없습니다. 483 00:26:07,740 --> 00:26:11,050 내가 푸시 할 수없는 이유를 그리고, 그건. 484 00:26:11,050 --> 00:26:12,480 >> 그래서, 푸시에 클릭 실수로, 여기. 485 00:26:12,480 --> 00:26:16,480 실제로,의 코드를 실행할 수 있도록, 그것은 나에 충돌한다. 486 00:26:16,480 --> 00:26:19,770 487 00:26:19,770 --> 00:26:22,960 내가 버튼을 누를 경우에만 하지만, 이렇게 - 488 00:26:22,960 --> 00:26:23,420 권리. 489 00:26:23,420 --> 00:26:26,480 그래서,이 나쁘다. 490 00:26:26,480 --> 00:26:31,330 >> 그리고, 당신은 여기에서 볼 수 있듯이 우리 오류 메시지가 있습니다. 491 00:26:31,330 --> 00:26:35,460 그래서, "푸시 segues에만 사용할 수 있습니다 때 소스 컨트롤러에 의해 관리되는 492 00:26:35,460 --> 00:26:40,700 UI 내비게이션 컨트롤러의 인스턴스. " 그래서,이 내부에 없기 때문에 493 00:26:40,700 --> 00:26:44,030 탐색 컨트롤러, 나는 그렇게 할 수 없었다. 494 00:26:44,030 --> 00:26:48,782 >> 그래서 지금, 나는 다시 갈거야 폴더, 다시 스토리로 돌아가. 495 00:26:48,782 --> 00:26:51,680 >> 청중 : 탐색이란 컨트롤러, 다시? 496 00:26:51,680 --> 00:26:55,260 >> RHED SHI : 그래서, 지금 당신을 보여줄 것이다. 497 00:26:55,260 --> 00:26:56,200 보자. 498 00:26:56,200 --> 00:27:00,510 그래서,이보기를 클릭거야 컨트롤러, 그리고 난 갈거야 499 00:27:00,510 --> 00:27:03,920 제품까지 - 500 00:27:03,920 --> 00:27:06,240 실제로, 아니, 죄송합니다 - 편집자. 501 00:27:06,240 --> 00:27:08,360 그리고 난에 갈거야 - 502 00:27:08,360 --> 00:27:09,350 실제로, 나는 그것을 클릭 했습니까? 503 00:27:09,350 --> 00:27:10,070 아니오. 504 00:27:10,070 --> 00:27:11,080 거기 우리는 간다. 505 00:27:11,080 --> 00:27:16,270 내가 편집기에 올라갈거야, 아래로 이동 에 포함하고 탐색하기 506 00:27:16,270 --> 00:27:17,520 컨트롤러. 507 00:27:17,520 --> 00:27:20,130 508 00:27:20,130 --> 00:27:20,720 >> OK. 509 00:27:20,720 --> 00:27:27,750 그리고, 내 작업 공간은 정말 더러워 보인다 그래서이 정리하자. 510 00:27:27,750 --> 00:27:29,000 그래서,이 모든 스토리 보드입니다. 511 00:27:29,000 --> 00:27:32,510 512 00:27:32,510 --> 00:27:33,760 그리고이 방법으로 - 513 00:27:33,760 --> 00:27:37,030 514 00:27:37,030 --> 00:27:38,280 OK, 중지 - 515 00:27:38,280 --> 00:27:49,320 516 00:27:49,320 --> 00:27:50,860 나는 빨리 뭔가를 구축 할 수 있습니다 이있다. 517 00:27:50,860 --> 00:27:53,020 그리고, 지금은 돌아갈 수 있습니다, 당신은 알아? 518 00:27:53,020 --> 00:27:55,730 >> 그러나, 오른쪽 종류의 지루? 519 00:27:55,730 --> 00:28:03,020 그래서 내가하고 싶은 일, 내가 원하지 않는된다 , 단지,보기를 만들려면 520 00:28:03,020 --> 00:28:03,870 컨트롤러. 521 00:28:03,870 --> 00:28:07,720 이제 실제로 확인하고 싶었 가정 해 봅시다 테이블 뷰 컨트롤러, 그래서 넣을 수 있습니다 522 00:28:07,720 --> 00:28:12,110 테이블에 멋진 색상. 523 00:28:12,110 --> 00:28:16,210 >> 그래서, 지금 내 테이블보기에 넣어했다고 컨트롤러, 다시 연결해야 524 00:28:16,210 --> 00:28:18,560 이 버튼의에 뷰 컨트롤러. 525 00:28:18,560 --> 00:28:21,780 그래서 난 내 제어를 할 필요가, 클릭, 드래그 것은 다시. 526 00:28:21,780 --> 00:28:27,318 내가 포함하기 때문에 지금은, 푸시 할 수 있습니다 그것은 탐색 컨트롤러의 내부. 527 00:28:27,318 --> 00:28:32,210 >> 청중 : 네비게이션 컨트롤러 단지 당신이 이곳 저곳으로 이동 할 수 있습니다? 528 00:28:32,210 --> 00:28:33,540 >> RHED SHI : 예. 529 00:28:33,540 --> 00:28:38,670 그래서, 기술적으로, 그것은의 객체 위치 - 530 00:28:38,670 --> 00:28:43,150 그래서, 탐색의 내부 컨트롤러 개체, 그것은 531 00:28:43,150 --> 00:28:44,780 배열을 추적합니다. 532 00:28:44,780 --> 00:28:48,300 그리고 그 배열은 이후의 모든 보유 컨트롤러를 볼 수 있습니다. 533 00:28:48,300 --> 00:28:51,560 다시 누르면 이유는,의 IT 이전 페이지로 이동합니다. 534 00:28:51,560 --> 00:28:55,260 때문에 탐색 컨트롤러 개체 또는 돌봐 코드 535 00:28:55,260 --> 00:28:58,890 이 개체는 유지 배열을 가지고 이러한 뷰 컨트롤러의 추적하고, 536 00:28:58,890 --> 00:29:01,870 다음, 당신도 알다시피,보기를 DQ 수 컨트롤러와 당신을 돌려 줄 537 00:29:01,870 --> 00:29:02,750 이전. 538 00:29:02,750 --> 00:29:05,200 >> 그래서,이 기술 물건입니다 만 - 539 00:29:05,200 --> 00:29:07,505 내가 나중에 보여 줄게 코드, 우리가 시간이 있다면. 540 00:29:07,505 --> 00:29:10,270 나는 종류의 시간에 밖으로 실행 만 해요 - 541 00:29:10,270 --> 00:29:15,610 >> 따라서, 테이블 뷰, 우리가 할 수있는 것은 - 542 00:29:15,610 --> 00:29:18,440 그것은 일반적으로 자동으로 설정되어 동적 프로토 타입 - 543 00:29:18,440 --> 00:29:20,640 우리는 정적 셀 만들 것입니다, 그렇지 않으면 우리는 갈거야 544 00:29:20,640 --> 00:29:22,920 몇 가지 문제로 실행합니다. 545 00:29:22,920 --> 00:29:28,470 >> 그리고, 이제 내가 갈거야 가정 해 봅시다 하나의 섹션이 있습니다. 546 00:29:28,470 --> 00:29:31,000 그래서, 섹션처럼 - 547 00:29:31,000 --> 00:29:35,160 혹시 음악 프로그램을 본 적이 있다면, 때 당신은 예술가, 섹션을드립니다 548 00:29:35,160 --> 00:29:37,830 의 Z's를 통해 할 수 - 549 00:29:37,830 --> 00:29:38,780 편지 - 550 00:29:38,780 --> 00:29:42,600 다음, 당신이 알고, 개별 행은 아티스트 이름 일 것입니다. 551 00:29:42,600 --> 00:29:47,460 그리고, 무엇을 여기에 멋진 것은,이다 내가 할 수있는 그 내부의 모든 개체에 액세스 552 00:29:47,460 --> 00:29:50,430 이를 통해 내 스토리 보드 드롭 다운 메뉴를,도. 553 00:29:50,430 --> 00:29:56,600 >> 그래서, 난 내 섹션을 클릭거야, 나는, 당신은 알고있다, 어쩌면 다섯 개의 행을 원한다. 554 00:29:56,600 --> 00:30:00,770 그리고, 각 행의 내부 나는 라벨을 부착 할. 555 00:30:00,770 --> 00:30:04,080 556 00:30:04,080 --> 00:30:06,340 그리고이 블루를 호출하는거야. 557 00:30:06,340 --> 00:30:09,530 558 00:30:09,530 --> 00:30:15,630 그리고, 당신은, UI 뷰를 넣을 어쩌면 작은 상자 같은,에, 알고있다. 559 00:30:15,630 --> 00:30:23,840 560 00:30:23,840 --> 00:30:28,710 >> 나는 사람들을 표시 할 수 있도록 칼라의 프리뷰. 561 00:30:28,710 --> 00:30:34,150 그리고 다시 속성에 갈 수 있습니다 오, 내가 모르는 그 색상을 변경합니다 562 00:30:34,150 --> 00:30:35,510 이 하나를 알고있다. 563 00:30:35,510 --> 00:30:38,630 564 00:30:38,630 --> 00:30:43,150 >> 그리고, 내가있을 때, 여기에서 또한 주목 액세서리, 내가 많이 할 수 있습니다 565 00:30:43,150 --> 00:30:46,160 다른 액세서리 당신은 일반적으로 볼 수있다. 566 00:30:46,160 --> 00:30:55,250 공개 표시, 세부 사항, 또는 표시를 확인, 또는 단순히 그냥 세부 사항. 567 00:30:55,250 --> 00:30:59,080 그래서, 어쩌면 우리는, 같은, 공개 할 수 표시, 예를 들어. 568 00:30:59,080 --> 00:31:03,540 >> 그리고, 왜 우리는이, 사본을하지 않습니다 을 붙여에 넣어 569 00:31:03,540 --> 00:31:06,740 다음 테이블 행. 570 00:31:06,740 --> 00:31:08,115 그래서, 우리는이 경고를 호출 할 수 있습니다. 571 00:31:08,115 --> 00:31:10,620 572 00:31:10,620 --> 00:31:12,155 그리고이를 확장해야 할 수도 있습니다. 573 00:31:12,155 --> 00:31:15,730 574 00:31:15,730 --> 00:31:17,290 의는 노란색으로 만들어 보자. 575 00:31:17,290 --> 00:31:20,610 그리고 이러한 방법으로, 우리는 복사 할 수 있습니다 우리의 방법을 아래에 붙여 넣습니다. 576 00:31:20,610 --> 00:31:24,910 577 00:31:24,910 --> 00:31:25,370 무슨 일이에요? 578 00:31:25,370 --> 00:31:26,620 보라색. 579 00:31:26,620 --> 00:31:30,020 580 00:31:30,020 --> 00:31:34,740 >> 따라서, 이러한 모든 일반적인 CS50 있습니다 당신이 수업 시간에 본 적이 색상 - 581 00:31:34,740 --> 00:31:37,160 실제로, 죄송합니다 - 582 00:31:37,160 --> 00:31:38,410 또는 웹 사이트에. 583 00:31:38,410 --> 00:31:49,700 584 00:31:49,700 --> 00:31:51,260 바라 건데 너희들을 볼 수 있습니다 난 여기서 뭘하는지. 585 00:31:51,260 --> 00:31:57,270 586 00:31:57,270 --> 00:31:57,890 OK. 587 00:31:57,890 --> 00:31:58,490 마지막 하나. 588 00:31:58,490 --> 00:32:02,040 >> 청중 : 당신은 어떻게 추가 않았다 처음에 행? 589 00:32:02,040 --> 00:32:04,740 >> RHED SHI : 그래서, 질문이었다 방법 나는 처음에 행을 추가 했습니까? 590 00:32:04,740 --> 00:32:07,500 나는이 테이블 섹션에 들어갔다 - 또는 그러나 내가 할 수있는 591 00:32:07,500 --> 00:32:09,200 테이블 섹션을 선택합니다 - 592 00:32:09,200 --> 00:32:11,250 다음, 여기, 내가 업데이트 행의 수. 593 00:32:11,250 --> 00:32:19,920 594 00:32:19,920 --> 00:32:22,505 >> 그리고, 내가이 작품 희망하자. 595 00:32:22,505 --> 00:32:30,620 596 00:32:30,620 --> 00:32:31,480 OK. 597 00:32:31,480 --> 00:32:32,870 이 작동하는지 보자. 598 00:32:32,870 --> 00:32:34,000 아, 완벽한, 굉장한. 599 00:32:34,000 --> 00:32:35,300 OK. 600 00:32:35,300 --> 00:32:40,330 나는 데모, 일부을 구축하는 동안 것들에 대한 감사를 정렬, 그렇게되지 않았다 601 00:32:40,330 --> 00:32:42,510 박수. 602 00:32:42,510 --> 00:32:42,920 >> 그래. 603 00:32:42,920 --> 00:32:44,770 자, 보자. 604 00:32:44,770 --> 00:32:47,550 우리는이 아홉 단지하게 만들거야 모든 - 또는 실제로,하자 그냥 605 00:32:47,550 --> 00:32:51,420 공시에이 모든 설정 지표. 606 00:32:51,420 --> 00:32:55,790 그리고, 나도 당신을 보여주고 싶은 것을, 내가 그 각각을 할 수있는 방법이었다 607 00:32:55,790 --> 00:32:59,230 표 행과 그 상호 작용이 - 608 00:32:59,230 --> 00:33:00,150 오. 609 00:33:00,150 --> 00:33:01,400 아니오. 610 00:33:01,400 --> 00:33:05,700 611 00:33:05,700 --> 00:33:06,030 >> 오. 612 00:33:06,030 --> 00:33:07,230 또한, 나는 당신을 보여주고 싶어 - 613 00:33:07,230 --> 00:33:13,080 여기에, 나는 제목을 넣을 수 있습니다 내 탐색 컨트롤러, 오른쪽? 614 00:33:13,080 --> 00:33:17,090 그래서 실제로, 당신은 가능한 한 빨리, 알 수 있습니다 I 안쪽이보기 컨트롤러를 내장 615 00:33:17,090 --> 00:33:22,010 탐색 컨트롤러, 우리는 참조 우리의 상단에이 네비게이션 바 616 00:33:22,010 --> 00:33:25,340 스토리 보드 표현 뷰 컨트롤러의. 617 00:33:25,340 --> 00:33:29,270 그래서,이, 같은 시각을 우리에게주는 종류의, 우리의 눈에 보이는 화면으로 안내합니다. 618 00:33:29,270 --> 00:33:34,360 이것은 분명히 예정 탐색 막대합니다. 619 00:33:34,360 --> 00:33:40,950 >> 그리고 내가 빨리하고 싶은, 지금, 또 다른에 넣어 - 620 00:33:40,950 --> 00:33:45,880 내가 한 짓 때문에이 테이블 뷰 컨트롤러 이들 중 하나를 복용하고 드래그 621 00:33:45,880 --> 00:33:49,800 여기에, 그것은 나에게 허용 된 일이지 신속하게, 정말, 테이블보기를 만들 622 00:33:49,800 --> 00:33:50,850 컨트롤러. 623 00:33:50,850 --> 00:33:54,100 우리가 비록 시간이 경우에, 당신은거야 그 참조, 프로그래밍, 그것은이다 624 00:33:54,100 --> 00:33:57,660 테이블을 만들 수있는 더 까다로운 조금 뷰 컨트롤러, 때문에이 625 00:33:57,660 --> 00:34:02,520 메소드와의 커플 당신이 종류의, 작성에 필요한 626 00:34:02,520 --> 00:34:07,130 테이블 뷰의 순서로 컨트롤러가 올바르게 표시합니다. 627 00:34:07,130 --> 00:34:15,340 >> 그러나, 나는 그냥, 지금, 당신을 보여주고 싶어 나는이 걸릴 경우, 여기서의 예를 들어, 628 00:34:15,340 --> 00:34:15,920 예를 들어 - 629 00:34:15,920 --> 00:34:18,290 나는 또 다른보기 컨트롤러에 넣었습니다. 630 00:34:18,290 --> 00:34:27,320 그리고 지금의 내가 제어 할 가정 해 봅시다 내 최초의 블루 ALT 631 00:34:27,320 --> 00:34:28,980 여기까지 테이블 행. 632 00:34:28,980 --> 00:34:31,070 그리고이 블루를 호출 할. 633 00:34:31,070 --> 00:34:32,570 그리고 - 634 00:34:32,570 --> 00:34:34,159 보자. 635 00:34:34,159 --> 00:34:41,050 지금보기에있어, 나는 변경할 수 있습니다 파란색 배경. 636 00:34:41,050 --> 00:34:45,945 >> 그리고, 통지, 여기,이 드롭 다운 메뉴는 또한 당신에게 모든 계층 구조를 제공합니다 637 00:34:45,945 --> 00:34:47,040 이러한 개체의. 638 00:34:47,040 --> 00:34:50,530 그래서 중요한 것은, 여기에주의해야 입니다 여기에이 모든 - 639 00:34:50,530 --> 00:34:54,330 이 테이블 뷰 컨트롤러, 테이블 보기, 테이블보기 섹션 테이블보기 640 00:34:54,330 --> 00:34:57,169 셀 - 이들 모두는 코드에서 개체. 641 00:34:57,169 --> 00:35:03,752 그래서, 당신이 알고있는, 레이블 지금 아래에 콘텐츠 뷰, 등등. 642 00:35:03,752 --> 00:35:05,020 등등 등등. 643 00:35:05,020 --> 00:35:08,765 >> 그래서, 우리는이 코드를 실행하면, 우리 뭔가를 볼 수 - 644 00:35:08,765 --> 00:35:15,816 645 00:35:15,816 --> 00:35:17,870 이 경우 보자 - 그래. 646 00:35:17,870 --> 00:35:18,670 따라서, 거기에 우리가 간다. 647 00:35:18,670 --> 00:35:22,120 그러나, 우리가 그렇게하지 ​​않으면 없음 이러한 다른 것들 작동합니다. 648 00:35:22,120 --> 00:35:22,500 오른쪽? 649 00:35:22,500 --> 00:35:23,800 이렇게 단지이 하나의 작품. 650 00:35:23,800 --> 00:35:29,100 그리고, 시간을 위해, I 안 할게 퍼팅, 당신이 알고,로 이동 651 00:35:29,100 --> 00:35:29,770 다른 사람 다운. 652 00:35:29,770 --> 00:35:32,020 그리고 이것은의 끝, 종류의, 스토리 보드 - 653 00:35:32,020 --> 00:35:33,400 내가 보여주고 싶었다 무엇 스토리 보드에 대한. 654 00:35:33,400 --> 00:35:36,330 655 00:35:36,330 --> 00:35:43,490 >> 그리고, 나는 밖으로 일 예를 수행 사실, 바로 여기. 656 00:35:43,490 --> 00:35:48,090 그래서,이 스토리 보드이며 나는 이전에 만든. 657 00:35:48,090 --> 00:35:52,740 당신이 볼 수 그래서,이이었다 내 탐색 컨트롤러. 658 00:35:52,740 --> 00:35:57,040 그럼 난 내 첫 번째보기 컨트롤러를했다, 나는 내 테이블 뷰 컨트롤러를했다, 659 00:35:57,040 --> 00:35:58,980 그리고, 나는이 모든 것을 가지고 - 660 00:35:58,980 --> 00:36:01,180 그래서 이전에, 내가 일을했다 매우 다른 뭔가. 661 00:36:01,180 --> 00:36:04,450 그래서, 그 일을 변명. 662 00:36:04,450 --> 00:36:07,930 아마 나중에 그것을 전에 정리합니다 내가 생산에 배웅. 663 00:36:07,930 --> 00:36:12,800 >> 우리가 이것을 실행한다면, 우리는 볼 수 있습니다 모든 옵션이 있다는 것을 664 00:36:12,800 --> 00:36:14,050 우리에게 사용할 수 있습니다. 665 00:36:14,050 --> 00:36:18,540 666 00:36:18,540 --> 00:36:21,320 나는 배경을하지 않았다 제외 그 색. 667 00:36:21,320 --> 00:36:26,510 그래서, 좋은 간단한 응용 프로그램입니다. 668 00:36:26,510 --> 00:36:28,340 >> 이제 해결 해보자 이 프로그램. 669 00:36:28,340 --> 00:36:31,270 670 00:36:31,270 --> 00:36:32,130 OK. 671 00:36:32,130 --> 00:36:37,570 그래서, 그렇게, 우리는 단지거야 새 Xcode 프로젝트를 시작합니다. 672 00:36:37,570 --> 00:36:41,920 우리는 지금 빈 응용 프로그램을 만들 수 있습니다 우리가 갖고 싶어하지 않기 때문에 673 00:36:41,920 --> 00:36:42,380 스토리 보드. 674 00:36:42,380 --> 00:36:46,590 그래서, 단순히 자신을 제한하지 해요 스토리 보드 중 어느 한을 사용 675 00:36:46,590 --> 00:36:49,170 빈 응용 프로그램은하지 않습니다 나에게 스토리 보드를 제공합니다. 676 00:36:49,170 --> 00:36:52,256 이것은 단지 방지하는 것입니다 부정 행위로부터 자신. 677 00:36:52,256 --> 00:36:54,428 보자. 678 00:36:54,428 --> 00:36:55,360 기다립니다. 679 00:36:55,360 --> 00:36:55,960 네 - 680 00:36:55,960 --> 00:36:56,448 예. 681 00:36:56,448 --> 00:36:57,698 OK. 682 00:36:57,698 --> 00:37:08,650 683 00:37:08,650 --> 00:37:09,180 >> 오른쪽. 684 00:37:09,180 --> 00:37:16,790 그래서, 여기, 우리는 남아 있습니다 하지만 다른 코드 아무것도 없다. 685 00:37:16,790 --> 00:37:19,460 그럼,이 창을 이동할 수 약간 이상. 686 00:37:19,460 --> 00:37:22,020 687 00:37:22,020 --> 00:37:22,260 오른쪽. 688 00:37:22,260 --> 00:37:28,160 여기에서 볼 수 있듯이, 파일 만 우리가 제공하고 있습니다 AppDelegate.h 및 점 689 00:37:28,160 --> 00:37:30,500 m, 우리는 필요가 없습니다 더 이상 스토리 보드. 690 00:37:30,500 --> 00:37:39,580 >> 우리는이 작업을 실행하는 경우에, 우리는 여전히 갈거야 흰색 화면에 도착, 하나님 께 감사를드립니다. 691 00:37:39,580 --> 00:37:42,280 OK - 흰색 화면,하지만 아무것도. 692 00:37:42,280 --> 00:37:45,260 그리고, 여기에 중요한 부분입니다. 693 00:37:45,260 --> 00:37:47,810 액션이 일어나는 곳이다. 694 00:37:47,810 --> 00:37:51,410 이전 버전에서는, 거기에 보통 더 여기에 코드 없지만, 695 00:37:51,410 --> 00:37:55,600 스토리 보드는 기본적으로 제공 이 부분에 대한 코드. 696 00:37:55,600 --> 00:37:57,470 나는 방법에 관한 세부 사항에 가지 않을 것이다. 697 00:37:57,470 --> 00:38:02,890 >> 그리고 지금 우리가 원하는 것은 우리가 원하는입니다 이 작은 공간이 여기에 이​​동하고 698 00:38:02,890 --> 00:38:05,050 다시 우리의 응용 프로그램을 만들기 시작합니다. 699 00:38:05,050 --> 00:38:06,092 그래서 - 700 00:38:06,092 --> 00:38:06,318 예? 701 00:38:06,318 --> 00:38:07,450 >> 청중 : 줌? 702 00:38:07,450 --> 00:38:07,770 >> RHED SHI : 줌. 703 00:38:07,770 --> 00:38:09,020 물론, 그래. 704 00:38:09,020 --> 00:38:13,940 705 00:38:13,940 --> 00:38:14,520 OK. 706 00:38:14,520 --> 00:38:17,380 나는 그래서 이것은해야하지, 입력 할 수 있습니다 문제가 너무 많은. 707 00:38:17,380 --> 00:38:17,940 OK. 708 00:38:17,940 --> 00:38:22,720 >> 그래서, 먼저, 우리가 만들고 싶었 기억 탐색 컨트롤러, 오른쪽? 709 00:38:22,720 --> 00:38:27,090 또한, 당신이 볼 수 있듯이, 엑스 코드 의 정말 좋은 일을한다 710 00:38:27,090 --> 00:38:28,070 자기 충전. 711 00:38:28,070 --> 00:38:31,650 그래서, 당신은 알 수로, 이름의 모든 많이 이상하다 712 00:38:31,650 --> 00:38:33,910 평소하지만, 엑스 코드는 당신을 위해 그것을 채 웁니다. 713 00:38:33,910 --> 00:38:35,710 그래서 난 그냥 Enter 키를 누릅니다 수 있습니다. 714 00:38:35,710 --> 00:38:40,180 >> 그래서, UI 탐색을 만들려면 컨트롤러 포인터, 나는 그것을 호출 할 수 있습니다 715 00:38:40,180 --> 00:38:41,430 navigationController. 716 00:38:41,430 --> 00:38:43,040 717 00:38:43,040 --> 00:38:44,470 자, 이제 무엇을해야합니까? 718 00:38:44,470 --> 00:38:49,510 이 등호 후, 먼저, 필요 메모리 내부를 만들 수 있습니다. 719 00:38:49,510 --> 00:38:53,790 그래서, NavigationController을 할거야 할당 - 720 00:38:53,790 --> 00:38:56,640 그래서, 이것은 malloc에​​ 유사하다, 당신 C에 사용되는 사람 - 721 00:38:56,640 --> 00:38:58,400 다음, 나는 그것을 초기화거야. 722 00:38:58,400 --> 00:39:03,670 >> 그래서, 정말 중요합니다 그 어떤 작성 목적은, 당신이 원하는 723 00:39:03,670 --> 00:39:04,940 할당하고 초기화. 724 00:39:04,940 --> 00:39:08,600 그게 만들려고하고 있어요 메모리의 안쪽에 instantialize하고, 725 00:39:08,600 --> 00:39:10,480 지금 당신은 그것을 사용할 수 있습니다. 726 00:39:10,480 --> 00:39:10,780 좋아? 727 00:39:10,780 --> 00:39:14,360 당신이하지 않으면, 당신의 목적은 않습니다 존재, 당신은 무리로 실행됩니다하지 728 00:39:14,360 --> 00:39:17,290 문제. 729 00:39:17,290 --> 00:39:20,250 >> 그리고, 내가 만들 보기 컨트롤러, 오른쪽? 730 00:39:20,250 --> 00:39:25,580 그래서 나는있는 UIViewController를 만들 스타 - 731 00:39:25,580 --> 00:39:29,620 그래서, 모두의 포인터 오브젝티브-C, 내가 할거야 732 00:39:29,620 --> 00:39:31,600 비슷한 여기 - 733 00:39:31,600 --> 00:39:32,850 할당, 초기화. 734 00:39:32,850 --> 00:39:38,680 735 00:39:38,680 --> 00:39:40,150 OK. 736 00:39:40,150 --> 00:39:43,450 >> 그리고 내가 할거야 것은 난입니다 가는 - 우리가 한 때, 기억 737 00:39:43,450 --> 00:39:45,360 탐색 컨트롤러에 임베드? 738 00:39:45,360 --> 00:39:46,920 이 코드에서 그것을 할 방법입니다. 739 00:39:46,920 --> 00:39:54,550 당신은 navigationController을 할거야 740 00:39:54,550 --> 00:39:55,780 pushViewController - 741 00:39:55,780 --> 00:39:57,636 >> 청중 : [청취]. 742 00:39:57,636 --> 00:39:59,030 이것은 우리를 위해 발생, 또는 것인가 -? 743 00:39:59,030 --> 00:40:00,080 >> RHED SHI : 오, 그래. 744 00:40:00,080 --> 00:40:00,550 아니오. 745 00:40:00,550 --> 00:40:02,740 그것은 나를 더 좋아한다. 746 00:40:02,740 --> 00:40:04,670 아니, 너무, 당신을 위해 작동합니다. 747 00:40:04,670 --> 00:40:06,700 그래서,이 모든 방법이 있습니다. 748 00:40:06,700 --> 00:40:10,400 그래서 pushViewController는 방법이며, 또한,보다 구체적으로는, 그것의 정보 749 00:40:10,400 --> 00:40:13,590 UI의 인스턴스 메서드 탐색 컨트롤러. 750 00:40:13,590 --> 00:40:20,030 내 UI 탐색을 만들 수 있었기 때문에 컨트롤러 스타, 다음 I 751 00:40:20,030 --> 00:40:24,510 에이 pushViewController를 호출 할 수 있습니다 내 UI 네비게이션의 특정 인스턴스 752 00:40:24,510 --> 00:40:25,010 컨트롤러. 753 00:40:25,010 --> 00:40:29,490 >> 청중 : 우리는 정확한 작업을 수행해야합니까 단어, 또는 이미 존재합니까? 754 00:40:29,490 --> 00:40:31,380 >> RHED SHI : 네, 방법이기 때문에. 755 00:40:31,380 --> 00:40:32,200 이 기능 같아요. 756 00:40:32,200 --> 00:40:33,330 그것은 printf와 같다. 757 00:40:33,330 --> 00:40:34,390 그것은 scanf와 같다. 758 00:40:34,390 --> 00:40:36,250 그것은 strcompare 같다. 759 00:40:36,250 --> 00:40:40,310 그것은 당신이 할 수 있습니다 알고 제외 입력 한 알이 항상 거 760 00:40:40,310 --> 00:40:42,740 것들에 도달 법적으로 당신을 허용했다. 761 00:40:42,740 --> 00:40:47,620 그래서, 아무것도 여기에 표시하지 않는 경우, 다음 뭔가 잘못이다. 762 00:40:47,620 --> 00:40:50,550 >> 그래서, pushViewController. 763 00:40:50,550 --> 00:40:52,580 그래서, 지금은 밀어 원하는 내 새로 만든 764 00:40:52,580 --> 00:40:56,850 UIViewController에, 다음, 애니메이션 - 765 00:40:56,850 --> 00:40:57,470 아마도 없습니다. 766 00:40:57,470 --> 00:41:00,110 이 될 것입니다 때문에 첫 번째보기 컨트롤러. 767 00:41:00,110 --> 00:41:03,210 내가 애니메이션 만들기 않았더라도, 의미 아마, 표시되지 않습니다 때문에 768 00:41:03,210 --> 00:41:05,050 그것은 첫 번째 화면입니다. 769 00:41:05,050 --> 00:41:06,540 >> 그리고 브래킷을 기억한다. 770 00:41:06,540 --> 00:41:08,850 그래서, 우리는 괄호를 사용하는 방법을 기억 하는가? 771 00:41:08,850 --> 00:41:11,870 그리고 괄호 안에, 객체는 메소드에 호출 - 772 00:41:11,870 --> 00:41:15,910 그래서 우리의 목적은 탐색이다 컨트롤러 및 방법은 밀고 773 00:41:15,910 --> 00:41:17,210 뷰 컨트롤러는 애니메이션. 774 00:41:17,210 --> 00:41:21,920 그리고 그것은 두 개의 인수에 소요되는 참조 그들은,, 종류의로 구분하고 775 00:41:21,920 --> 00:41:24,390 말과 콜론. 776 00:41:24,390 --> 00:41:28,300 그래서, 오브젝티브-C는 좋은을 시도합니다 쉽게 당신이 큰 소리로 읽을 수있는 - 777 00:41:28,300 --> 00:41:33,020 코드 - 반을 가지고, 종류의, 이해. 778 00:41:33,020 --> 00:41:37,150 >> 그러나, 바로이 일을 충분하지 않습니다. 779 00:41:37,150 --> 00:41:39,780 내가 지금 축소 할 수 있습니다. 780 00:41:39,780 --> 00:41:44,210 단지 이렇게하면 충분하지 않습니다 우리가 이전에 도착하세요. 781 00:41:44,210 --> 00:41:48,580 그래서 여기, 당신이 있다는 것을 알 수 있습니다 실제로 모든 종류의 될 수 없습니다 782 00:41:48,580 --> 00:41:50,190 여기, 바, 맞죠? 783 00:41:50,190 --> 00:41:54,680 내비게이션 바, 수단이 없다 우리는 여전히 그것을 못 했어있다. 784 00:41:54,680 --> 00:41:58,850 >> 그리고 우리는 그것을 테스트 할 수 있습니다, 또한, 별, 아마의 배경을 변경 785 00:41:58,850 --> 00:42:00,460 를 ViewController, 오른쪽? 786 00:42:00,460 --> 00:42:01,710 ViewController.background-- 787 00:42:01,710 --> 00:42:03,155 788 00:42:03,155 --> 00:42:03,640 아. 789 00:42:03,640 --> 00:42:07,690 그래서, ViewController에서 가지고 있지 않은 방법을 참조하십시오 배경 색상, 비록 I 790 00:42:07,690 --> 00:42:08,780 액세스하고 싶어? 791 00:42:08,780 --> 00:42:14,080 그리고 그것은 왜냐하면를 ViewController 뷰의 컨테이너입니다. 792 00:42:14,080 --> 00:42:19,490 그래서,,보기 속성을 가지고있는 다음 배경색을 가지고 있습니다. 793 00:42:19,490 --> 00:42:25,510 >> 그리고, 나는 종류의 지루하고, 설정할 수 있습니다, 색상을 호출하여 794 00:42:25,510 --> 00:42:28,130 UIColor 개체. 795 00:42:28,130 --> 00:42:33,210 그래서, 여기에주의 사항, redColor는 방법입니다. 796 00:42:33,210 --> 00:42:36,750 그것은 UIcolor의 클래스 메소드입니다. 797 00:42:36,750 --> 00:42:40,820 나는를 만들 필요가 없습니다 않았기 때문에 순서 UIColor의 실제 예 798 00:42:40,820 --> 00:42:42,020 거기에 메서드를 호출합니다. 799 00:42:42,020 --> 00:42:45,050 난 그냥 단순히 그것을 호출 유형과 같은 이름에. 800 00:42:45,050 --> 00:42:49,620 INT가 있던 경우에 나는, 등,,, INT에 호출 주제, 예를 들어 그것에 방법. 801 00:42:49,620 --> 00:42:52,380 >> 우리가이 코드를 실행하면 그래서, 우리는거야 배경이 있음을 알 802 00:42:52,380 --> 00:42:53,540 실제로 레드 없습니다. 803 00:42:53,540 --> 00:42:54,790 그것은 여전히​​ 흰색입니다. 804 00:42:54,790 --> 00:42:57,720 805 00:42:57,720 --> 00:43:04,550 그리고 어떻게 우리가, 즉 주위에 얻을 수 있습니다 self.window 거기에 방법을 알 수 있습니다. 806 00:43:04,550 --> 00:43:08,260 즉, 같은 궁극적 인 컨테이너입니다 응용 프로그램에 대한. 807 00:43:08,260 --> 00:43:11,630 그것은 포함하는 궁극적 인 것입니다 의 화면에 모든 것을, 808 00:43:11,630 --> 00:43:13,650 아이폰이나 아이 패드 응용 프로그램. 809 00:43:13,650 --> 00:43:20,970 >> 그리고, 편리 self.window 이라는 속성이 있습니다 810 00:43:20,970 --> 00:43:22,650 rootViewController. 811 00:43:22,650 --> 00:43:26,480 그리고 그 포인터가 될 것입니다 내부의 첫 번째보기 컨트롤러 812 00:43:26,480 --> 00:43:27,270 앱의. 813 00:43:27,270 --> 00:43:32,000 그래서, 우리가 여기에서 무엇을하고 싶은지, 지금이다 우리의 탐색에 그 같은 설정하기 814 00:43:32,000 --> 00:43:32,710 컨트롤러. 815 00:43:32,710 --> 00:43:33,760 오른쪽? 816 00:43:33,760 --> 00:43:37,490 기술적으로, 네비게이션, 때문에 컨트롤러는 우리의 첫 번째이다 817 00:43:37,490 --> 00:43:38,770 컨트롤러. 818 00:43:38,770 --> 00:43:46,160 그것은 다른보기의 배열을 추적 컨트롤러, 우리는이를 밀어 819 00:43:46,160 --> 00:43:49,810 그 배열에 뷰 컨트롤러 네비게이션 컨트롤러. 820 00:43:49,810 --> 00:43:52,640 >> 그래서, 당신은이 작업을 수행 할 수 없습니다. 821 00:43:52,640 --> 00:43:54,225 정말 당신을 도울 것입니다. 822 00:43:54,225 --> 00:43:58,040 당신이 원한다면 당신은이 작업을 수행 할 수 탐색 컨트롤러,하는 대부분의 823 00:43:58,040 --> 00:44:01,100 당신은 아마 당신이 원하는 것 때문에의 , 종류의, 어떤 종류의를 가질 824 00:44:01,100 --> 00:44:04,840 같은, 다시 가서 메뉴 또는 일부 오히려보다 뒤로 갈 홈페이지 825 00:44:04,840 --> 00:44:05,470 빈 화면. 826 00:44:05,470 --> 00:44:05,920 예? 827 00:44:05,920 --> 00:44:11,460 >> 청중 : 그것은 불편인가 - 당신은에 확대하기 위해 828 00:44:11,460 --> 00:44:12,710 >> RHED SHI : 네. 829 00:44:12,710 --> 00:44:15,310 830 00:44:15,310 --> 00:44:15,720 그래, 좋아. 831 00:44:15,720 --> 00:44:22,370 이제이 코드이며, 의 그것을 테스트 할 수 있습니다. 832 00:44:22,370 --> 00:44:27,920 >> 따라서, 거기에 우리가 간다. 833 00:44:27,920 --> 00:44:29,170 매직. 834 00:44:29,170 --> 00:44:30,960 835 00:44:30,960 --> 00:44:32,690 그래서 OK. 836 00:44:32,690 --> 00:44:34,420 감사합니다. 837 00:44:34,420 --> 00:44:35,000 OK. 838 00:44:35,000 --> 00:44:38,690 그래서 - 그래서 지금, 우리가 원하는 것은 우리는 종류의 권리, 여기에 제한있어? 839 00:44:38,690 --> 00:44:45,130 우리는 잠재적으로 모든 것을 쓸 수있다 이 하나의 함수의 내부. 840 00:44:45,130 --> 00:44:48,470 하지만, 그 방법을 아이폰 OS 개발이 아니다 일반적으로 작동합니다. 841 00:44:48,470 --> 00:44:53,030 >> 그래서, 우리가 무엇을 할 거 야 우리가있어입니다 새로운 파일을 만들 것. 842 00:44:53,030 --> 00:44:57,110 그러나,보다 구체적으로는, 우리는거야 다른 오브젝티브-C 클래스를 만들거나, 843 00:44:57,110 --> 00:44:58,010 다른 개체 - 844 00:44:58,010 --> 00:45:00,700 클래스와 개체를 교환 할 수있다 여기에. 845 00:45:00,700 --> 00:45:06,460 그리고, 여기에 잠재적으로, 어떻게 내가 할 수있는의, U 컨트롤러의 또 다른 클래스를 만듭니다. 846 00:45:06,460 --> 00:45:12,030 >> 당신이 알 수 있습니다 그래서, 그것은, 서브 클래스의 여기서,은의 서브 클래스의 847 00:45:12,030 --> 00:45:15,910 UI 뷰 컨트롤러,하지만 난 할 수있다 여기에 다른 이름을 부른다. 848 00:45:15,910 --> 00:45:19,400 나는이 CS50를 호출 할 수 있습니다, 내가 부를 수 이 뷰 컨트롤러, 내가 부를 수 849 00:45:19,400 --> 00:45:21,640 이 ㅋ ㅋ보기 컨트롤러 - 850 00:45:21,640 --> 00:45:22,400 내가 원하는 무엇이든. 851 00:45:22,400 --> 00:45:24,140 이 클래스의 이름 만입니다. 852 00:45:24,140 --> 00:45:27,020 그러나, 그것은 중요 할 것 본질적으로, 내가 무엇을하고 있어요, 때문에 853 00:45:27,020 --> 00:45:29,720 여기, 내가 만드는거야 다른 클래스의 이름입니다. 854 00:45:29,720 --> 00:45:34,140 그래서, 일부처럼 될 것 유형 또는 객체의 종류. 855 00:45:34,140 --> 00:45:35,910 그래서, 조금 일반적인해야한다. 856 00:45:35,910 --> 00:45:37,225 그것은 매우 구체적인 않을거야. 857 00:45:37,225 --> 00:45:40,410 858 00:45:40,410 --> 00:45:44,480 >> 또한, I 포인트할까요 이러한 두 가지 옵션 중. 859 00:45:44,480 --> 00:45:48,430 우리는 내부에 최선을 다하고 있기 때문에 코드는, 경우에 따라서는 훨씬 쉽게합니다 860 00:45:48,430 --> 00:45:53,540 있도록, 인터페이스 파일에 가져다 말 그대로 끌어으로 제거 할 수 있습니다 861 00:45:53,540 --> 00:45:54,960 우리는 스토리 보드로 이전 한 - 862 00:45:54,960 --> 00:45:57,810 당신이 알고있는, 라벨 또는 버튼, 또는 그 밖의 무엇이든. 863 00:45:57,810 --> 00:46:01,950 그리고, xibs는 당신을 허용 파일은 당신은 그것을 연결하는이 그렇게하고, 864 00:46:01,950 --> 00:46:04,310 이 뷰 컨트롤러 파일. 865 00:46:04,310 --> 00:46:06,540 >> 그래서, 일부러에 갈거야 이를 확인하지. 866 00:46:06,540 --> 00:46:12,510 보통 나는이를 확인하고, 만약 것 I 단지 나는, 아이폰이나 아이 패드에 이런 짓을 867 00:46:12,510 --> 00:46:16,340 이를 확인하고 간단하게 하나를해야합니다 에 대한, 당신은 아이폰이나 아이 패드를 알고있다. 868 00:46:16,340 --> 00:46:19,750 나는 보편적 인 일을 해요 이후, 나는 갈거야 나중에 그 중 두 가지를 만들 수 있습니다. 869 00:46:19,750 --> 00:46:22,220 그래서, 일부러에 갈거야 이 선택을 취소합니다. 870 00:46:22,220 --> 00:46:23,940 >> 이것은 또한 정말 중요합니다. 871 00:46:23,940 --> 00:46:27,490 많은 시간, 나는 버그를 했어 이것은 확인되지 않은 곳. 872 00:46:27,490 --> 00:46:31,930 그리고, 분명히,이 파일이 아닌, 종류의, 같은, 포함 또는 수입 873 00:46:31,930 --> 00:46:33,740 이 테스트 폴더의 내부. 874 00:46:33,740 --> 00:46:38,180 그래서, 내 코드는 전혀 모르고있다 이 파일의 존재, 그리고 875 00:46:38,180 --> 00:46:41,080 즉, 통증을 많이 일으키는 및 디버깅 시간. 876 00:46:41,080 --> 00:46:44,360 하지만, 그냥 확인이가 그렇게 선택되어 있는지 확인 즉, 당신이 알고, 이것의 목표 877 00:46:44,360 --> 00:46:47,510 파일이 응용 프로그램을위한 것입니다. 878 00:46:47,510 --> 00:46:48,310 >> OK. 879 00:46:48,310 --> 00:46:51,680 그래서, 지금 우리는 두 개의 새 파일을 만들었습니다. 880 00:46:51,680 --> 00:46:54,050 이 파일은 꽤 빈 본다. 881 00:46:54,050 --> 00:46:59,550 그리고, 사실의도 계속하자 XIB 파일을 만들어에. 882 00:46:59,550 --> 00:47:03,690 따라서, 이전에, 내가했다 코코아 터치 드롭 다운. 883 00:47:03,690 --> 00:47:06,880 자, 사용자에 갈거야 인터페이스 터치, 당신은 볼 수, I 884 00:47:06,880 --> 00:47:08,120 스토리 보드를 만들 수 있습니다. 885 00:47:08,120 --> 00:47:11,710 >> 그래서, 심지어는 빈 시작 응용 프로그램을 여전히 사용할 수 있습니다 886 00:47:11,710 --> 00:47:12,340 스토리 보드. 887 00:47:12,340 --> 00:47:15,480 그것은 측면에서 까다로운 얻고 있지만, 연결하려는 방법 888 00:47:15,480 --> 00:47:16,820 당신의 코드. 889 00:47:16,820 --> 00:47:18,230 그래서 나는 거기에 갈 수 없습니다. 890 00:47:18,230 --> 00:47:22,160 >> 그러나, 우리가 무엇을 할 지금보기를 만들 수 있습니다. 891 00:47:22,160 --> 00:47:25,720 그리고 당신을 위해 선택할 수 있습니다 아이폰이나 아이 패드. 892 00:47:25,720 --> 00:47:30,180 그리고 일반적으로 나타 내기 위해 차이 - 만약 당신이 일을하는 경우 893 00:47:30,180 --> 00:47:31,950 범용 - 894 00:47:31,950 --> 00:47:35,980 당신이 밑줄 아이폰을 넣어 하나, 또는 당신은 Twiddly을 수행 할 수 있습니다. 895 00:47:35,980 --> 00:47:36,980 정말 문제가되지 않습니다. 896 00:47:36,980 --> 00:47:40,890 만약 차별화하는 것은 단순히의 정보 보기는하는 장치이다. 897 00:47:40,890 --> 00:47:43,470 898 00:47:43,470 --> 00:47:44,430 >> 그리고, 지금보십시오. 899 00:47:44,430 --> 00:47:47,550 나는 작업을 할 수있는 화면이 있습니다. 900 00:47:47,550 --> 00:47:53,530 그래서, 예를 들어, 내가 라벨을 부착 할 수 있습니다 여기에, 당신은 알고있다, 그리고 나는 또한 넣을 수 있습니다 901 00:47:53,530 --> 00:47:54,820 여기에 또 다른 버튼을 누릅니다. 902 00:47:54,820 --> 00:47:58,730 내가 변화 귀찮게하지 않습니다 여기에 값을 표시합니다. 903 00:47:58,730 --> 00:48:09,050 >> 하지만, 무슨 일이 중요하다의 그 파일의 소유자 - 904 00:48:09,050 --> 00:48:13,660 그래서, 아이폰의 내부 해요 뷰, 아이폰 XIB 파일. 905 00:48:13,660 --> 00:48:18,050 그리고 다운이 탐색 영역 또는 드롭 다운 메뉴를, 나는에 가고 싶어 906 00:48:18,050 --> 00:48:19,090 파일의 소유자. 907 00:48:19,090 --> 00:48:22,630 그리고 이것은 정말 여기에서 중요한 단계. 908 00:48:22,630 --> 00:48:27,780 I 클래스 뷰를 만들려면 컨트롤러,이 XIB 파일이되도록 909 00:48:27,780 --> 00:48:30,030 와 연관 될 예정 내보기 컨트롤러. 910 00:48:30,030 --> 00:48:33,590 911 00:48:33,590 --> 00:48:39,360 그리고 내가보기 안에 할 아무것도 컨트롤러는 프로그램입니다 912 00:48:39,360 --> 00:48:42,800 여기에 반영 될 것. 913 00:48:42,800 --> 00:48:46,270 >> 그래서, 그러나, 알 - 914 00:48:46,270 --> 00:48:55,995 실제로, 이제이 뷰를 만들어 보자 예를 들어 배경 블루,. 915 00:48:55,995 --> 00:49:00,280 916 00:49:00,280 --> 00:49:01,530 또는 녹색. 917 00:49:01,530 --> 00:49:03,870 918 00:49:03,870 --> 00:49:07,950 그리고, 그래서 당신은 뒤쪽에, 알 수있는 경우 우리가 가지고 곳이 코드는, 이것은 우리의 919 00:49:07,950 --> 00:49:09,200 탐색 컨트롤러. 920 00:49:09,200 --> 00:49:12,650 921 00:49:12,650 --> 00:49:18,310 >> 우리는 그 단계를했다하더라도, 그것은의 여전히 녹색, 빨강하지 될 것. 922 00:49:18,310 --> 00:49:20,350 그리고 이유가있다. 923 00:49:20,350 --> 00:49:28,090 우리가 inited는 경우 때문이다 우리의보기 컨트롤러, 여기에 - 924 00:49:28,090 --> 00:49:30,010 죄송합니다, 좀 미친 짓이야 - 925 00:49:30,010 --> 00:49:34,520 우리는 여기에서 우리의보기 컨트롤러를 inited는 경우 우리는 일반적으로 유형을 inited는 926 00:49:34,520 --> 00:49:35,990 UIViewController에. 927 00:49:35,990 --> 00:49:36,560 OK? 928 00:49:36,560 --> 00:49:40,560 그래서 우리는 심지어하지 않았다 이 클래스와 함께. 929 00:49:40,560 --> 00:49:42,030 >> 그래서 이곳은 클래스처럼, 기억하십시오. 930 00:49:42,030 --> 00:49:47,160 다만, 유형으로 간주 될 수있다 있는 UIViewController는 타입으로. 931 00:49:47,160 --> 00:49:51,080 그리고 그것을 사용하기 위해, 무엇을 우리가해야 할 것은 가져올 것입니다 - 932 00:49:51,080 --> 00:49:52,520 가져 오기를 ViewController - 933 00:49:52,520 --> 00:49:55,750 그리고, 당신이 볼 수 있듯이, 나를 위해 그것을 autofills. 934 00:49:55,750 --> 00:49:56,570 그래서, ViewController에서 - 935 00:49:56,570 --> 00:50:02,070 지금, 여기,이를 변경할 수 있습니다 를 ViewController에있는 UIViewController. 936 00:50:02,070 --> 00:50:05,050 그리고 지금, 여기, 내가 바꿀 수 있습니다 이를 ViewController에. 937 00:50:05,050 --> 00:50:07,790 938 00:50:07,790 --> 00:50:09,250 >> 다시 한 번이를 실행하자. 939 00:50:09,250 --> 00:50:16,970 940 00:50:16,970 --> 00:50:19,690 그것은 여전히​​ 빨강이야. 941 00:50:19,690 --> 00:50:23,370 그리고 그것의 이유 여전히 붉은 있기 때문입니다 - 942 00:50:23,370 --> 00:50:26,230 와우, 무슨 일이 일어 났는가? 943 00:50:26,230 --> 00:50:31,500 우리는이 XIB를 연결하는 원 뷰 컨트롤러와 파일. 944 00:50:31,500 --> 00:50:37,540 그러나 실제로 수행하기 위해 즉, 우리는이에 갈 필요가있다. 945 00:50:37,540 --> 00:50:42,980 우리가 초기화 작업을 수행 할 때, 우리는하고 싶은 initWithNibName, 그리고 우리가 원하는 946 00:50:42,980 --> 00:50:48,910 에서 문자열 View_iPhone을, 예를 들어. 947 00:50:48,910 --> 00:50:51,700 현재 번들을 무시할 수 있습니다. 948 00:50:51,700 --> 00:50:54,965 >> 그리고 이것은 허용 할 것입니다 우리 사실에 - 949 00:50:54,965 --> 00:51:00,620 950 00:51:00,620 --> 00:51:02,160 어, 오, 문제가있다. 951 00:51:02,160 --> 00:51:09,300 952 00:51:09,300 --> 00:51:09,980 오른쪽. 953 00:51:09,980 --> 00:51:17,670 >> 그래서, 문제는 거기에있는, 때문에 우리의보기 XIB 파일, 우리는 레이블을 가지고 954 00:51:17,670 --> 00:51:18,720 우리는 버튼이 있습니다. 955 00:51:18,720 --> 00:51:23,660 그러나, 우리는 연결 했는데도 그 두 사람은 내부에 아무것도 없어 956 00:51:23,660 --> 00:51:27,440 ViewController.h 또는 ViewController.m 사람들을 반영하는 957 00:51:27,440 --> 00:51:29,160 버튼이나 그 레이블. 958 00:51:29,160 --> 00:51:32,425 그래서, 우리는 사람들을 작성해야 뷰 컨트롤러의 속성. 959 00:51:32,425 --> 00:51:35,290 960 00:51:35,290 --> 00:51:39,490 >> 그래서,이 선언하는 방법입니다 속성. 961 00:51:39,490 --> 00:51:43,422 그것은 보통의 소요 이 두 가지 옵션을 제공합니다. 962 00:51:43,422 --> 00:51:48,690 우리와이 세미나의 목적을 위해, 나는 일반적으로, 그런 말을 963 00:51:48,690 --> 00:51:52,250 대부분의 속성은 세분화되어 및 유지. 964 00:51:52,250 --> 00:51:55,420 귀하는 Google이 검색하여 읽을 수 있습니다, 당신도 알다시피, 차이 965 00:51:55,420 --> 00:51:58,620 세분화하고, 당신을에 유지 , 구글이나 뭔가를 알고. 966 00:51:58,620 --> 00:52:01,090 그리고 스택처럼,로 여러분을 데려 갈 게요 사람들이있을 것이다 오버플로, 967 00:52:01,090 --> 00:52:03,605 차이에 대한 답변 그 사이에. 968 00:52:03,605 --> 00:52:07,000 하지만 지금은, 그건 우리 관심 싶어요. 969 00:52:07,000 --> 00:52:12,790 >> 그리고 우리는, UI 레이블 별을 만들고 싶어 그리고 우리는 우리가 원하는 그것을 호출 할 수 있습니다. 970 00:52:12,790 --> 00:52:15,710 우리는 당신이 알고, 라벨이를 호출 할 수 있습니다. 971 00:52:15,710 --> 00:52:18,270 972 00:52:18,270 --> 00:52:20,110 그리고, 우리는 서로를 만듭니다 버튼 하나. 973 00:52:20,110 --> 00:52:24,380 974 00:52:24,380 --> 00:52:29,910 별표를 포함하는 것을 기억, 우리는 포인터를 다루고 있기 때문에 975 00:52:29,910 --> 00:52:36,740 거의 모든 곳에서 내부 의 오브젝티브-C. 976 00:52:36,740 --> 00:52:42,110 >> 그러나, 여전히 해결되지 않습니다 여기에서 볼 수있는 문제. 977 00:52:42,110 --> 00:52:50,540 그리고 이유는이기 때문마다 우리 XIB 파일 레이블이나를 연결하려면 978 00:52:50,540 --> 00:52:55,690 프로그램 버튼, 또는 헤더 및 구현 파일, 우리가 원하는 979 00:52:55,690 --> 00:52:58,255 이 코드 조각을 추가 - 980 00:52:58,255 --> 00:53:00,610 콘센트. 981 00:53:00,610 --> 00:53:03,600 이 키워드의 것을 알 수 있습니다. 982 00:53:03,600 --> 00:53:07,970 >> 그리고, 최대한 빨리 입력을 완료로 그 중, 이러한이 있어야합니다 983 00:53:07,970 --> 00:53:09,100 두 개의 원, 여기. 984 00:53:09,100 --> 00:53:11,200 보통, 그들은 채워하지 않을 985 00:53:11,200 --> 00:53:12,920 나는 그들이 왜 확실하지 않다. 986 00:53:12,920 --> 00:53:21,370 그러나 일반적으로, 당신은 수동으로해야합니다 이 측면으로 이동하여 그들을 연결 987 00:53:21,370 --> 00:53:23,530 유틸리티 영역입니다. 988 00:53:23,530 --> 00:53:28,430 >> 그리고 지금, 나는 나의 레이블을 가지고있어 선택, 나는이 새로운 끕니다 989 00:53:28,430 --> 00:53:33,910 내 파일의 소유자에 콘센트를 참조 다음 레이블을 클릭합니다. 990 00:53:33,910 --> 00:53:40,230 그래서 지금, 마지막으로,이 라벨은 이 라벨에 연결. 991 00:53:40,230 --> 00:53:44,950 이 레이블은 우리가 이거 야 변경 프로그램 사용의 992 00:53:44,950 --> 00:53:49,250 텍스트의 글꼴, 그 배경 색상, 등등. 993 00:53:49,250 --> 00:53:52,430 >> 그럼, 왜 우리는하지 않는다 버튼 같은? 994 00:53:52,430 --> 00:53:54,770 그리고 당신은 알 수로, 버튼, 조금 더 복잡합니다. 995 00:53:54,770 --> 00:53:59,060 내 말은, 때문에, 당신은 거 야 버튼을 눌러, 그래서이 많이 있어요 996 00:53:59,060 --> 00:54:02,950 어떻게 사용자를위한 옵션 버튼을 누를 수 있습니다. 997 00:54:02,950 --> 00:54:06,570 그리고, 우리는 나중에 볼 수 있습니다 우리는이를 연결 할 수있는 우리의 998 00:54:06,570 --> 00:54:09,140 그것이 작동되도록하는 코드. 999 00:54:09,140 --> 00:54:12,770 >> 그래서, 지금 비록, 우리는 연결하려는 그것은 실제 버튼 1000 00:54:12,770 --> 00:54:13,570 우리의 코드의 내부. 1001 00:54:13,570 --> 00:54:19,640 그래서 우리는 새로운 참조 출구로 이동 다음 버튼을. 1002 00:54:19,640 --> 00:54:22,068 이제 다시 실행하자. 1003 00:54:22,068 --> 00:54:23,040 어 오. 1004 00:54:23,040 --> 00:54:23,890 OK. 1005 00:54:23,890 --> 00:54:25,140 지금 무슨 일이 일어나고 있는지 알 수 없습니다. 1006 00:54:25,140 --> 00:54:48,450 1007 00:54:48,450 --> 00:54:49,700 우와. 1008 00:54:49,700 --> 00:54:57,380 1009 00:54:57,380 --> 00:54:58,960 여기에 한 순간. 1010 00:54:58,960 --> 00:55:02,490 >> 사실, 우리는 왜을지지 않습니다 또 다른 예를 살펴 1011 00:55:02,490 --> 00:55:05,800 시간의 관심. 1012 00:55:05,800 --> 00:55:06,200 OK. 1013 00:55:06,200 --> 00:55:10,610 그래서, 여기에 더 쉽게 준비의 를 ViewController 예. 1014 00:55:10,610 --> 00:55:13,230 1015 00:55:13,230 --> 00:55:17,110 여기에서 볼 수 있듯이, 나는 포함했다 의 등록 1016 00:55:17,110 --> 00:55:18,460 레이블과 버튼을 누릅니다. 1017 00:55:18,460 --> 00:55:20,370 그리고,이 코드 조각은 여기 - 1018 00:55:20,370 --> 00:55:21,830 이 IBAction를 - 1019 00:55:21,830 --> 00:55:27,740 여기에이 버튼에 연결했다. 1020 00:55:27,740 --> 00:55:33,940 당신은 여기에 터치 최대 내부를 볼 수 있도록 선택기에 연결된다 1021 00:55:33,940 --> 00:55:37,390 호출 버튼을 눌렀습니다. 1022 00:55:37,390 --> 00:55:41,700 >> 그래서, 우리는 실제로 통해 갈 수 있습니다 모션 다시, 여기, 터치 업을 복용하여 1023 00:55:41,700 --> 00:55:48,750 내부와 드래그로 다음 파일의 소유자 및 1024 00:55:48,750 --> 00:55:51,570 누름 버튼을 클릭하십시오. 1025 00:55:51,570 --> 00:55:52,820 이제 우리의 코드를 실행할 수 있습니다. 1026 00:55:52,820 --> 00:55:55,710 1027 00:55:55,710 --> 00:56:02,020 그래서 지금,이 버튼은 현재 작동하고 다음 페이지에 데려 갈 것입니다. 1028 00:56:02,020 --> 00:56:08,430 >> 그리고, 우리의 뷰 컨트롤러의 측면에서, 이했다 코드의 조각입니다 1029 00:56:08,430 --> 00:56:10,000 누른 버튼의 관심. 1030 00:56:10,000 --> 00:56:14,260 그리고, 여기에주의하는 것이 중요하다고 내가보기의 또 다른 유형을 만들었습니다 1031 00:56:14,260 --> 00:56:16,330 제어기는 테이블을 호출 뷰 컨트롤러. 1032 00:56:16,330 --> 00:56:19,900 그래서,이에 백업하는 유사했다 스토리 보드, I 중 하나를 드래그 1033 00:56:19,900 --> 00:56:23,450 이러한 테이블 뷰 컨트롤러 스토리 보드에. 1034 00:56:23,450 --> 00:56:24,470 나는 또 다른를 만드는거야 1035 00:56:24,470 --> 00:56:30,000 >> 테이블 뷰 컨트롤러에 대한 포인터 할당하고 초기화 - 보내고, 다음 일을 1036 00:56:30,000 --> 00:56:34,490 자기 도트 탐색 컨트롤러, 를 ViewController을 누르면,이 새로운 1037 00:56:34,490 --> 00:56:35,350 를 ViewController. 1038 00:56:35,350 --> 00:56:39,750 그리고, 예에 애니메이션을 설정 한 때문에 지금 내 애플 리케이션, 그리고 내부 1039 00:56:39,750 --> 00:56:45,670 실제로 애니메이션이가는보고 싶어 홈 페이지에서 테이블에 1040 00:56:45,670 --> 00:56:46,920 뷰 컨트롤러. 1041 00:56:46,920 --> 00:56:48,830 1042 00:56:48,830 --> 00:56:51,110 >> 청중 : 당신은 여전히​​ 걱정 마세요 가비지 수집에 대한? 1043 00:56:51,110 --> 00:56:51,840 >> RHED SHI : 저게 뭐죠? 1044 00:56:51,840 --> 00:56:54,740 아니오. 1045 00:56:54,740 --> 00:56:58,970 그래서, 문제는 당신이해야합니까이었다 가비지 수집 작업을하려면? 1046 00:56:58,970 --> 00:57:03,470 그래서, 엑스 코드 4 인, ARC 같이했다 자동 참조 횟수. 1047 00:57:03,470 --> 00:57:06,120 그리고, 일반적으로 새를 시작할 때 프로젝트, 당신은 그것을 검사 할 것입니다 때문에 1048 00:57:06,120 --> 00:57:09,440 아무도 실제로 거래하고 싶어 메모리와 물건을 확보. 1049 00:57:09,440 --> 00:57:13,720 하지만 엑스 코드 5도없는 생각 새 프로젝트에서 해당 옵션을 선택합니다. 1050 00:57:13,720 --> 00:57:16,750 그래서, 자동으로 당신을 위해 않습니다. 1051 00:57:16,750 --> 00:57:16,920 예? 1052 00:57:16,920 --> 00:57:20,970 >> 청중 : 당신은 내보낼 수 스토리 보드에있는 PDF? 1053 00:57:20,970 --> 00:57:22,020 >> RHED SHI : 그래, 확실히. 1054 00:57:22,020 --> 00:57:28,180 그래서,이 모든에 포함됩니다 소스 코드는, 그래서 너희들은 확인하실 수 있습니다 1055 00:57:28,180 --> 00:57:30,730 그것의 실제 Xcode 프로젝트. 1056 00:57:30,730 --> 00:57:31,105 그래? 1057 00:57:31,105 --> 00:57:35,944 >> 청중 :하지만, 난, 같은 수 있음을 의미 내 스토리 보드와 PDF를 인쇄? 1058 00:57:35,944 --> 00:57:38,920 난 그냥 내보내려면 사람을 보여주는 이미지. 1059 00:57:38,920 --> 00:57:39,160 >> RHED SHI : 오, 그래. 1060 00:57:39,160 --> 00:57:41,980 나는 당신이 할 수있는, 어쩌면 생각 스크린 샷을. 1061 00:57:41,980 --> 00:57:44,350 그래, 그들에게 화면을 보내 샷 또는 뭔가. 1062 00:57:44,350 --> 00:57:45,600 그래. 1063 00:57:45,600 --> 00:57:49,170 1064 00:57:49,170 --> 00:57:50,570 >> 자, 보자. 1065 00:57:50,570 --> 00:57:56,470 시간의 관심에서, 나는 생각한다 그게 내가 오늘 커버 할 수 있습니다. 1066 00:57:56,470 --> 00:57:59,600 하지만, 난 그냥, 사실, 그건 알고 거의 아이폰 OS의 표면을 만져 1067 00:57:59,600 --> 00:58:00,370 개발. 1068 00:58:00,370 --> 00:58:05,630 그래서, 저에게 연락 주시기 바랍니다 당신은 아이폰 OS에 대한 질문이 1069 00:58:05,630 --> 00:58:07,000 개발. 1070 00:58:07,000 --> 00:58:12,840 그리고, 바라건대, 나는 청소 할 수 있습니다 소스 코드의 일부까지 1071 00:58:12,840 --> 00:58:16,830 코드 파일, 당신은 몇 가지를해야합니다 있도록 작업 할 정말 좋은 예입니다. 1072 00:58:16,830 --> 00:58:21,020 >> 그 외에는, 너희들이가는 경우 CS50 해킹 마라톤, 나는 수도 있고 수도 1073 00:58:21,020 --> 00:58:25,730 거기, 내가 도울 수 없습니다 일부 아이폰 OS 개발도. 1074 00:58:25,730 --> 00:58:26,980 그럼, 감사합니다, 여러분. 1075 00:58:26,980 --> 00:58:31,168