iPhoneアプリ開発学校に通う生徒のおおまかな学習日報

Objective-C初心者。iPhoneアプリ開発学校に通う落ちこぼれです。授業の内容を記録しているのですが時間の都合でおおまかに書いてます。投稿内容は参考にしちゃだめです。

【火曜日】Mapビューの続き

午前の授業。
昨日のMapビューの続き。

生徒から先生への質問で画面上部に空白ができてしまったのこと。
あ、ほんとだ。

▼こんなかんじ(画像に直接書いちゃった)
f:id:jaam:20130910104714p:plain

_mapView.Frame=self.view.frame;
と書くと縦20ポイントの隙間ができるの。
_mapView.Frame=self.view.bounds;
と書くと隙間が無くなるのね。

次に、今、授業をしている教室の位置をCLLocationCoordinate2D構造体で表示してみたり。

次に、現在の位置情報を取得してマーカーを出す勉強。
あれ、出ない…あとで復習しよう。

次に、位置情報をシュミレートする。

▼こうやって
f:id:jaam:20130910104722p:plain

▼こうやると、地図にその位置が出てくる
f:id:jaam:20130910104947p:plain


次にマーカーが移動する様子を確認する勉強。

▼FreeWay Driveを選択
f:id:jaam:20130910104742p:plain

サンノゼ周辺でドライブしている様に現在位置が動くらしい
主に地図のデバックに使うようです(キャプチャーは静止画だけど実際は動いてます)
f:id:jaam:20130910104753p:plain

なんか授業進むの早い!!
キャプチャーとってらんない!

次に、gpxデータを表示してみる。

デバッグエリアに表示される位置情報アイコンをクリックしてデータと同じ名前をクリックすると画面にデータの地図と移動するマーカーが出る
f:id:jaam:20130910104759p:plain

次に、MapViewを使って航空写真で世界文化遺産富士山を表示する勉強。
ジオコーディングサービスサイトで経度と緯度を調べたり、mapTypeプロパティを航空写真に変更したり。

▼できた
f:id:jaam:20130910104805p:plain

次に、ボタンを押す毎に、地図表示切り替わる機能を作成する勉強。
「通常地図(Standard)」→「航空写真(Satellite)」→「ハイブリッド(Hybrid)」という順番で切り替わる。

午後の授業開始。
さっきの続き。

ボタンは配置できたけどMapViewを下に下げるやり方がわからなかったのでお昼休み中に友達に聞いて、なんとかできた。
そして、ボタンを押した時の動きをif文で制御することはわかるんだけど、構文の書き方に悩んだ。
そしたらミス発見。

× _mapView.MapType=MKMapTypeStandard;

○ _mapView.mapType=MKMapTypeStandard;

あやまってmapTypeプロパティ名の先頭の文字を大文字にしてました。というオチ。
ちなみにMKMaptypeは型らしい。

▼最初の画面 通常地図(Standard)
f:id:jaam:20130910132042p:plain

▼ボタンを押すと航空写真(Satellite)になる
f:id:jaam:20130910132050p:plain

▼さらにボタンを押すとハイブリッド(Hybrid)になる
f:id:jaam:20130910132057p:plain


次に、MapViewで表示している地図の今の緯度と経度が表示される勉強。
できなかったので要復習。

授業終了。

下記のふた通りの書き方の違いについて先生に質問した。
(.viewがある時とない時の違いについて)

self.view.backgroundColor=[UIColor blackColor];
self.backgroundColor=[UIColor blackColor];

答えは、
上記ふたつとも、やってることは同じなんだけど
viewController.hに
self.view.backgroundColor=[UIColor blackColor];
と書くと背景が黒くなるわけだが
self.backgroundColor=[UIColor blackColor];
と書くとエラーになるので必ず.viewを書かなければいけない。

で、TimerExView.m(自分で作ったクラス)に
self.backgroundColor=[UIColor blackColor];
と書くと背景が黒くなるわけだが
self.view.backgroundColor=[UIColor blackColor];
と書くとエラーになるので.viewは書いちゃだめ。

つまり、クラスによって書き方が違う。ってこと。だと思う。たぶん。


以下、要復習。
・現在の位置情報を取得してマーカーを出す
・プロパティとセッターとゲッターについて
・MapViewで表示している地図の今の緯度と経度が表示