UIViewとviewControllerの関係など
こんばんは。
先日書いた「復習 〜 UI (ユーザーインターフェイス ) 〜 その1 -構造-」で
なぜ、UIViewControllerはUIviewのサブクラスといわれているのだ?
NSObject
↑ 継承
UIResponder
↑ 継承
UIView
↑ 継承
UIViewController
ってことなんでしょうか?
この部分、全然わかっていなかった。まちがっていた。
下の図をもとに先生にきいてみた。

いままでは
UIViewを継承したサブクラス 図でいうと○○○Viewという名前をつけたクラスにメソッドなどを追加してdrawなどで描画したり、touchBeganなどのメソッドで作っていた。
しかし、
現在はviewControllerにソースを書いている
なぜ?ということになりました。

まず 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親クラスを継承してた?でいいのか?

@interface 自分でつけたクラスの名 : 親クラス(この場合NSObject母さん)
今回からは自分で作ったクラスではなく、用意されているUIViewControllerクラスに実装していく。?であっているのか?
UIViewControllerクラスはUIResponder を継承しているらしい。

UIViewController、お前の親はUIResponderなのか?
でもUIViewクラスの親もUIResponderだと。
なぜ、UIViewControllerはUIviewのサブクラスといわれているのだ?
NSObject
↑ 継承
UIResponder
↑ 継承
UIView
↑ 継承
UIViewController
ってことなんでしょうか?
君たちはどんな関係なのか?複雑な関係なのか?人にいえない事がたくさんあるのか?
あとわたしが書いた汚いメモ書きをアウトプット。
UIViewController…システムが用意したクラス

UIViewControllerクラスのサブクラスViewController(好きな名前に変更可能)クラスに画面部品を置いていく?ってことでしょうか。
あああ… 今夜の雷のように頭がピカピカしてきた。
明日この事を先生に聞いてみようと思います。
今まで何してきたんだ!と雷が落ちそうです。
怖い
怖すぎる。
ノミの心臓がはち切れる。
読んでくださった方。本当にすみません。
やる気はあるんですが。
脳みそが胡桃のように固くなってしまい
頭の中のリスがそれを食べてしまっているようです。
どうにか残ったミソ部分で覚えていきますんで、
しばらくの間ご勘弁を。ありがとうございました。
はじめに
ブログをはじめます、ヤマブシタケ夫です!
職業訓練校でobjective-Cを学びはじめて
3ヶ月が経過。
人生初のプログラミングに挑戦中。
学校で習ったことなどを書き込んでいこうとおもいます。
自己解釈によっての間違えが多いと思うので、
これから書くコードや解釈は
くれぐれも参考にしないでね。
それと。
言葉の間違えも多いです。すみません。
先に謝罪させてもらいます
では