UIViewとviewControllerの関係など

こんばんは。

先日書いた「復習 〜 UI (ユーザーインターフェイス ) 〜 その1 -構造-」で

なぜ、UIViewControllerはUIviewのサブクラスといわれているのだ?

 NSObject

  ↑ 継承

 UIResponder

  ↑ 継承

 UIView

  ↑ 継承

 UIViewController

ってことなんでしょうか?

 

この部分、全然わかっていなかった。まちがっていた。

下の図をもとに先生にきいてみた。

f:id:yamabushitakeo:20130910234608j:plain

 

いままでは

UIViewを継承したサブクラス 図でいうと○○○Viewという名前をつけたクラスにメソッドなどを追加してdrawなどで描画したり、touchBeganなどのメソッドで作っていた。

しかし、

現在はviewControllerにソースを書いている

なぜ?ということになりました。

f:id:yamabushitakeo:20130910234615j:plain

まず UIViewとUIViewControllerの関係ですが

  ・UIView…見ためのものの表示

  ・UIViewController…画面を部品や画面遷移などを制御するもの

で、UIViewContorllerを継承しているviewControllerは何をしているかというと

一番下の土台となり常にみんなを支えている。

そしてUIViewはいつもViewControllerの上にのっているらしい。

  ・ViewController…UIViewController母さんが持っている部品やUIViewのもっている部品を使用して制作し、Viewに表示してもらったりしている。

※ UIがつくものや上記の図で☆印がついているものは、既につくられているものなので、触る事ができない。鉛筆印のものにソースを書いていく。

※○○○ViewがあるときにはViewControllerの上に乗っているものはViewではなくて○○○Viewがのっている。Viewのかわり?になってる。

 

最初の質問に戻るが、「なぜ書くところが違うか」ということだが、

UIViewを継承している○○○View→プロパティやメソッドを自由に作ったり、好きな図形を作ったり、デリゲードの中でカスタマイズしていく事ができる。

簡単にいうと

  ・○○○View…カスタマイズ専用(一からソース作り)

 

UIViewControllerを継承しているviewController→もともと持っている部品を使ってつくっていく。

  ・viewController…あるものを使って調理する(レトルト)

 

ViewControllerだけの部品でアプリを作れないわけではないが

物足りない…、もっと自分の味をだしたい…

そういう時に

○○○View との併用でオリジナルの味を出す事ができる。

だって○○○ViewはDraw系に強いんだもん。

図形だってかけちゃうんだから!

 

ってな感じで

大まかに理解できているが、文章にするのは難しい。

また間違った言い回しをしているかもしれないが、修正はまたしっかりわかってからする事にします。

 

今日はこれでおしまい

おつかれさまでした!

復習 〜 UI (ユーザーインターフェイス ) 〜 その1 -構造-

UIの事好きなのに、好きなのに…

趣味とか特技とか覚えられないんです。

使用したらゴミのように捨てる事なんてできないんです。

あなたのことがすきだから…。なんつってな。

 

ちゃんと理解したい。あのこのこと。

といってしまったが、何から理解したらよいのか…。考えると疲れる。

今頭の中の事があっているのかもわからない。

とりあえず、しばらくの間、頭の中のよくわからないものを

アウトプットしてみよう。そうだ。そうしよう!

 

今までの授業では、サブクラスを自分で作ってNSObject親クラスを継承してた?でいいのか?

f:id:yamabushitakeo:20130904211217p:plain

@interface 自分でつけたクラスの名 : 親クラス(この場合NSObject母さん)

 

今回からは自分で作ったクラスではなく、用意されているUIViewControllerクラスに実装していく。?であっているのか?

UIViewControllerクラスはUIResponder を継承しているらしい。

f:id:yamabushitakeo:20130904212318p:plain

UIViewController、お前の親はUIResponderなのか?

でもUIViewクラスの親もUIResponderだと。

なぜ、UIViewControllerはUIviewのサブクラスといわれているのだ?

 NSObject

  ↑ 継承

 UIResponder

  ↑ 継承

 UIView

  ↑ 継承

 UIViewController

ってことなんでしょうか?

君たちはどんな関係なのか?複雑な関係なのか?人にいえない事がたくさんあるのか?

 

あとわたしが書いた汚いメモ書きをアウトプット。

UIViewController…システムが用意したクラス

f:id:yamabushitakeo:20130904214252p:plain

UIViewControllerクラスのサブクラスViewController(好きな名前に変更可能)クラスに画面部品を置いていく?ってことでしょうか。

あああ… 今夜の雷のように頭がピカピカしてきた。

明日この事を先生に聞いてみようと思います。

今まで何してきたんだ!と雷が落ちそうです。

怖い

怖すぎる。

ノミの心臓がはち切れる。

 

読んでくださった方。本当にすみません。

やる気はあるんですが。

脳みそが胡桃のように固くなってしまい

頭の中のリスがそれを食べてしまっているようです。

どうにか残ったミソ部分で覚えていきますんで、

しばらくの間ご勘弁を。ありがとうございました。

 

 

 

 

はじめに

ブログをはじめます、ヤマブシタケ夫です!

職業訓練校でobjective-Cを学びはじめて

3ヶ月が経過。

人生初のプログラミングに挑戦中。

学校で習ったことなどを書き込んでいこうとおもいます。

自己解釈によっての間違えが多いと思うので、

これから書くコードや解釈は

くれぐれも参考にしないでね。

それと。

言葉の間違えも多いです。すみません。

先に謝罪させてもらいます

では