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 iOSの概要。 4 00:00:11,630 --> 00:00:13,290 来て、すべてに感謝します。 5 00:00:13,290 --> 00:00:16,610 私はあなただけのように興奮している願っています 私はiOSの約だとして。 6 00:00:16,610 --> 00:00:22,300 昨年、私は二年生として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 iOSの開発に開始 12 00:00:36,750 --> 00:00:40,490 >> そのため、iOSの開発の面で、 2主なものは、私たちがあります 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 言語であることを行っている Objective-Cの。私たちは、実際に聞くことができます 16 00:00:46,650 --> 00:00:47,750 本当にエキサイティングなもの。 17 00:00:47,750 --> 00:00:51,500 だから、あなたは全体のAppleに参加できます 開発者のコ​​ミュニティといくつかのビルド 18 00:00:51,500 --> 00:00:52,940 本当にすごいアプリ。 19 00:00:52,940 --> 00:00:58,670 >> また、iOSの7は、うまくいけば、美しいです 皆さんの中に。 20 00:00:58,670 --> 00:01:01,130 しかし、それは私が知っている、論争の的だ。 21 00:01:01,130 --> 00:01:05,349 主に、私は何をしたいのガイドです あなたのObjective-Cを通って、また 22 00:01:05,349 --> 00:01:10,650 統合されているXcodeの、 あなたはなるだろう開発環境 23 00:01:10,650 --> 00:01:13,460 iOS用の労働。 24 00:01:13,460 --> 00:01:19,140 >> だから、Objective-Cの上の言葉だけ。 基本的には、Cとまったく同じだ 25 00:01:19,140 --> 00:01:22,790 しかし、他の多くのことに。 26 00:01:22,790 --> 00:01:27,710 そこで、より厳密には、実際の あなたは何で程度のスーパーセット 27 00:01:27,710 --> 00:01:32,280 である、今のC言語で行うことができます 基本的には、6を通じてPSE​​T 0が好き 28 00:01:32,280 --> 00:01:34,170 Objective-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 私がいた見つかった主な相違点の 本当に重要なときに私が学んだ 34 00:01:53,920 --> 00:01:57,180 Objective-Cの昨年。 35 00:01:57,180 --> 00:02:00,910 >> さて、実際に、そのように、他のポイント 、Objective-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 Objective-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 Objective-Cの? 45 00:02:30,540 --> 00:02:38,310 私はあなたには、#をハイライト表示したい 、CおよびC + +で標準IO.Hを知っている、と 46 00:02:38,310 --> 00:02:44,030 それのObjective-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 しかし、先ほど言ったように、Objective-Cの の厳密なスーパーセットである 57 00:03:19,760 --> 00:03:22,800 printf関数が存在することを意味し、C、 Objective-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 しかし、私が強調したいです この非常に最後の1 - 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 そして、私は、以前のObjective-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 それは、今、その文字列を示すためにある Objective-Cでオブジェクトです。 74 00:04:20,769 --> 00:04:23,310 彼らはもはや単純にCHAR星ません。 75 00:04:23,310 --> 00:04:25,530 彼らは、オブジェクトだとある そのように扱わ。 76 00:04:25,530 --> 00:04:28,690 >> だから、それは本当に重要なことをするとき あなたはそれが、NSにかかるのNSLogを使用 77 00:04:28,690 --> 00:04:32,580 あなたが持っているだろうことを意味し、文字列、 あなたの目の前でATを含める 78 00:04:32,580 --> 00:04:34,270 引用符。 79 00:04:34,270 --> 00:04:38,290 あなたはすべての中で、ここでは、参照の理由、それはだ My機能は、私、このの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 XcodeとObjective-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 これらの引数我25.40渡したい 92 00:05:15,590 --> 00:05:19,970 とObjective-Cは、すべて理由 オブジェクトまたはクラスがある - 93 00:05:19,970 --> 00:05:23,970 そのクラスとオブジェクトは、その2項である お互いに、ほとんど同義であり、 94 00:05:23,970 --> 00:05:28,270 私は同じ意味にそれらを使用することができます セミナーを通じて。 95 00:05:28,270 --> 00:05:34,090 >> しかし、あなたは私たちがメソッドを持っていることがわかります Objective-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 そして、他の1 NSUIntegerタイプです。 118 00:06:49,580 --> 00:06:56,390 そして、Objective-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 あなただけの方法を望んでいた場合、配列 それは1つの引数を取り込む。 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 Objective-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 ハードコードとObjective-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では、あなたは、あなたが知っている、持っているだろう おそらく、BOOL bを、あなたはそれを設定する 150 00:08:32,400 --> 00:08:36,549 その関数に等しく、かつ あなたは、引数を渡します。 151 00:08:36,549 --> 00:08:39,190 >> Objective-Cで、それはかなりです ずっと同じこと。 152 00:08:39,190 --> 00:08:43,370 あなたは、NSArrayの*のは、my_arrayを持っており、それはだ 等しくしようとして - 今、唯一の 153 00:08:43,370 --> 00:08:47,460 ここでの違いは、このオブジェクトのことですが、 その私が黄色で強調表示したし、 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 今、私は簡単に少しお話したいと思います あるXcodeの5、約 162 00:09:17,170 --> 00:09:21,160 統合開発環境 あなたはと仕事ができるだろうと。 163 00:09:21,160 --> 00:09:26,160 私は、あなた方の多くを知っているか、あなた方のうちの何人か 問題となっているMacを、持っていない 164 00:09:26,160 --> 00:09:30,490 Xcodeは利用できないため、 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 でのMac用仮想マシン Xcodeの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 Xcodeのは、あなたの中でどのように見えるかの絵 窓、次にもの話 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 のiOSシミュレータ。 184 00:10:26,550 --> 00:10:29,940 これは自動的に、Xcodeの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 だから、私は2を通過することでしょう で、単純に、コードを使用していないの例 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 XcodeとObjective-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 Xcodeで、その。 209 00:11:49,000 --> 00:11:50,360 だから、楽しみである必要があります。 210 00:11:50,360 --> 00:11:55,870 >> そして、ちょうどそれを戻すために Objective-Cの、私が強調したいものを 211 00:11:55,870 --> 00:11:57,440 あなたはif文を使ってできる。 212 00:11:57,440 --> 00:12:03,160 Objective-Cのだからそう、あなたが知っている、 Cのスーパーセットで、あなたが行うすべてがある、 213 00:12:03,160 --> 00:12:06,890 文字通り、C.あなたと同じだけの 若干の違いがある。 214 00:12:06,890 --> 00:12:10,810 だから、あなたは、IF用のフォームがわかります 声明は同じです - あなたが持っている 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 そして、私が上の行きたい for文も。 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 と、Objective-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 count配列する方法である。 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.に対するObjective-Cでは様 238 00:13:30,140 --> 00:13:35,400 >> また、私はそれを指摘しておきたい 私はNSUIntegerを使用してきたにも関わらず、 239 00:13:35,400 --> 00:13:39,860 Objective-Cの内のすべての私のiのの前に、 int型であるため、あなたはまた、int型を使用することができます 240 00:13:39,860 --> 00:13:42,290 Objective-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 を紹介しますウェブサイト Objective-Cの構文。 256 00:14:19,370 --> 00:14:24,410 だから、実際には、なぜ我々はに移動しない Chromeとこのウェブサイトをチェックしてください! 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 Xcodeのファイル。 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 だから、あなたは、すべての上でXcodeを開くいただければ あなたのマシンは、それはあなたにいくつかを取る必要があります 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 >> 観客:我々は、Macをお持ちでない場合は、 私達はちょうど種類の寒さですか? 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 あなたは気づくのであれば、何が素晴らしいことだ Xcodeとアップルのサポートについて 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 iOSの開発のため。 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 Appleと。 352 00:19:20,970 --> 00:19:24,740 >> だから、私は、おそらく、あなた方の多くを知っている すべての開発者アカウントを持っていません。 353 00:19:24,740 --> 00:19:26,460 私は大学は1を持って知っている。 354 00:19:26,460 --> 00:19:27,630 私はCSが1を持っていると思います。 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 iPhone、アプリ内、またはその両方 - 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 >> だから、ストーリーボードは、Appleのものです 本当に助けるためにを打ち出している 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 しかし、我々の単一のビュー·アプリケーションで、 我々は、もちろん、aはありますか 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 だから、あなたはスクリーンを扱っているとき IOSでは、ビューコントローラがある 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 そうではなく、システムを行うための デフォルトでは、我々は独自の1を行うことができます。 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 SHI:見てみましょう。 423 00:23:19,020 --> 00:23:20,382 この仕事をしていますか? 424 00:23:20,382 --> 00:23:22,270 >> 聴衆:ちょうどXcodeを渡す? 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 とXcodeは私たちに指針を与え オブジェクトをセンタリングする。 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 そのため、ナビゲーションコントローラが1である それはあなたの上の[戻る]ボタンを提供します 480 00:25:59,500 --> 00:26:03,910 あなたが持っているのiOSアプリは、あなたが知っている、 そのトップ、一種の、太いバー - 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 だから、「プッシュセグエは場合にのみ使用できます 光源制御部は、によって管理される 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 なぜあなたが戻って押したときには、これだけです 前のページに行く。 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 以前の1。 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 >> そして、の私は行くよと言ってみましょう 1セクションを持っている。 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を通じてAのこと - 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 >> だから、私は私のセクションをクリックするつもりだ、 そして私は、あなたが知っている、おそらく5行をしたい。 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 ラスト1。 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 我々は、この9は単に作る作ってあげる すべて - あるいは実際に、みましょうだけ 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 ですから、実際に、あなたはすぐに私のような、わかります 内部に埋め込まれ、このビューコントローラ 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 そして、時間のために、私はしません 入れて、あなたが知っている、に入る 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 それから私は私の最初のView Controllerを持っていた、 その後、私は私のテーブルビューコントローラを持っていた、 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 また、ここで見ることができるように、Xcodeの の本当に素晴らしい仕事をしていません 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 通常、しかし、Xcodeはあなたのためにそれを埋める。 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をするつもりだ のalloc - 720 00:38:53,790 --> 00:38:56,640 そう、これはmalloc関数と似ていますが、 C言語で使用される皆さん、その - 721 00:38:56,640 --> 00:38:58,400 そして、私はそれをinitにするつもりです。 722 00:38:58,400 --> 00:39:03,670 >> だから、それは本当に重要だと任意の 作成したオブジェクトを、あなたがしたい 723 00:39:03,670 --> 00:39:04,940 のalloc、それを初期値を指定 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 そう、すべてがポインタである Objective-Cの、と私は何をするつもりだ 732 00:39:29,620 --> 00:39:31,600 似たような、ここに - 733 00:39:31,600 --> 00:39:32,850 のalloc、initは。 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のナビゲーションを作成する必要がありましたので、 コントローラのスター、そして私 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 View Controllerは、アニメーション。 774 00:41:17,210 --> 00:41:21,920 そして、それは、2つの引数、方法を見て、 それらは一種の、で区切られている、 775 00:41:21,920 --> 00:41:24,390 言葉、とコロン。 776 00:41:24,390 --> 00:41:28,300 だから、Objective-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を持っていなかったかを見る 背景色、たとえ私 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 だから、それは、Viewプロパティを持っている 次いで、背景色を有する。 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 iPhoneやiPadアプリケーション。 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 我々は、潜在的にすべてのものを書くことができます この1関数の内部。 840 00:44:45,130 --> 00:44:48,470 しかし、それはどのようにiOSの開発ではありません 通常動作します。 841 00:44:48,470 --> 00:44:53,030 >> だから、私たちがやろうとしていることであり、我々はしている いくつかの新しいファイルを作成するつもり。 842 00:44:53,030 --> 00:44:57,110 しかし、具体的には、我々はするつもりだ 別のObjective-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を呼び出すことができます このView Controllerは、私が呼び出すことができます 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 >> また、私が指すようにしたいです これら二つのオプションが不足しています。 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 通常、私はこれをチェックして、私の場合だろう 唯一の私は、iPhoneやiPadのためにこれをやった 867 00:46:12,510 --> 00:46:16,340 これをチェックすると、単純に1を持っているでしょう iPhoneやiPad、あなたが知っている、のために。 868 00:46:16,340 --> 00:46:19,750 しかし、私は普遍的なやっているので、私は行くよ 後で、これらのうちの2つを作成します。 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 だから、今、私たちは、2つの新しいファイルを作成しました。 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 今、私は、ユーザーに行くつもりです インターフェイスタッチ、あなたが見ることができるように、私 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 そして、あなたがのために選択することができます iPhoneやiPad。 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 もしどちらかアンダースコアiPhoneを置く、 または、クルクル回したを行うことができます。 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 だから、私は、iPhoneの中だ ビュー、iPhone 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 私は、クラスビューを作りたい コントローラは、この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 我々はれ初期化すると、からだ ここに私たちのビューコントローラ、 - 924 00:49:28,090 --> 00:49:30,010 申し訳ありませんが、それは少しクレイジーだ - 925 00:49:30,010 --> 00:49:34,520 我々は、ここで我々のView Controllerをれ初期化するとき 我々は、一般的なタイプで、それをれ初期化 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 そして、あなたが見ることができるように、 私のためにそれを自動入力する。 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 そして、我々は、initを行うと、私たちがやってみたい 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 しかし、我々は、接続されたにも関わらず、 これらの2は、内部に何もない 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 アトミックと、あなたを上に保持 、Googleや何かを知っている。 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 そして、我々は別のものを作成します ボタンの1。 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 ほとんどどこでも内部 Objective-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 ここでは2円、。 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 OH UH。 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 そう、これは、バックと同様であった ストーリーボードは、私のいずれかをドラッグ 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 >> テーブルビューコントローラへのポインタ、 のallocとinit-ING、それをしてから行って 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 だから、Xcodeの4はある、円弧状に持っていた 自動参照カウント。 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 しかし、私はXcodeの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 時間の都合で、私は思う つまり、すべてのLは、今日カバーすることができます。 1066 00:57:56,470 --> 00:57:59,600 しかし、私はちょうど、実際に、それは知っている やっとのiOSの表面に触れ 1067 00:57:59,600 --> 00:58:00,370 開発。 1068 00:58:00,370 --> 00:58:05,630 そう、あれば私に連絡すること自由に感じなさい あなたをiOSについてご質問がある 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ハッカソンために、私は月か5月 1073 00:58:21,020 --> 00:58:25,730 がある、と私は助けることができていない いくつかのiOS開発にも。 1074 00:58:25,730 --> 00:58:26,980 だから、どうもありがとう、みんな。 1075 00:58:26,980 --> 00:58:31,168