FC2ブログ

modelを使った画面遷移iphone アプリ開発開始 in Philippines〜10日目〜 Navigation Controller

title:ブルーマウンテン  ←0番目のtitle
description:説明
image:IMG.jpg
↑arrayの中に辞書を入れた。連想配列を使った。
0910.png
エラーの際、xcodeの右側の欄のヘルプ(時計マーク)を選択するとより詳細なエラーの情報を確認することができる。
↑あとで見ておく、Cellを再利用することについて詳しく書いてある。

0911.png0912.png
0913.png
この表示方法を使うと、普段選択しにくいものでも簡単に選択できるようになる。
0914.png
+Ctrlでドラッグしてshowを選択。
0915.png
↑ここのセルはプログラムで指定したものと同じものにする。
     ※このセルはプログラムで書いたセルと同じものですよ〜と認識させるための処理。
0916.png
- (IBAction)tapBtn:(id)sender {
    [self dismissViewControllerAnimated:YES completion:nil];

0917.png
0918.png
indexPathFOrSelectedRow.row ←正解


0919.png
0920.png
labelやtextに「title」や「description」などの名前は使えない※上記の画像は間違い。
[titleLabel]や[descriptionText]などの名前に変更する必要がある。※Xcodeで既に準備されている名前なの気をつける必要がある。
オブジェクトなどに名前をつける際は、オリジナルの名前をつけるように気をつける。

TabelViewを使うときは、基本的にmodalは使わない。→ナビゲーションコントローラーを使用する。]


配列の中にDictionary型のものを入れるときは(連想配列)いちいちDictionary型を宣言する必要はない。


 
スポンサーサイト



iphone アプリ開発開始 in Philippines〜10日目〜 Navigation Controller

iphoneの左上にでる「戻る」がある画面のことを[navigation view controllerという]
Comand+control+↑↓でxcode上のファイルを切り替えることができる(ショートカットキー)
<Navigation Controller>の追加の方法 (戻るボタンを左上に表示させたい場合)
9891.png
9892.png

9893.png
↑自身で追加する。
9894.png
↑ViewController.mに追加する。
DetailVIewController * インスタンスを使いたいためにこのimportが必要。
9895.png9896.png
↑storyboardで認識できるVIEWの名前をつけている。
9898.png
9897.png9899.png
98991.png
98992.png
98993.png

Table VIew iphone アプリ開発開始 in Philippines〜9日目〜

<UITableView>
981.png

まずDatasourceとDelegateをheaderに指定する。
dataSource ← どこに書いてあるデータを表示するか。
Delegate  ← TableViewをクリックされた時(などの)にどこの場所で処理をするのかを指定する。
上記の2つのことを「プロトコル」という

982.png
↑その処理をする場所を指定する。
983.png
cellForRowAtIndexPath は20回(指定した値)呼ばれる
static =定数 ←一度決めたらあとから代入は出来ない。エラーが起きる
dequeueReusableCellWithIdentifier ←再利用可能なセルオブジェクトの生成。 (同じメモリ上で行う。)
毎回毎回メモリを生成して作る手間を省く。
UITableViewCell*cell=[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
//セルの初期化。
indexPath.row←行番号(ゼロから始まる)
cellの中に変数を入れているから、if文の中の処理は絶対実行されないのではないか?
     →cell(配列)のIDを@“cell"と名づけているだけだから、その中身になにか入っているわけではない。
 
984.png

985.png
メンバ変数を作るときは_coffeeというように 最初に _  を入れると良い。 ←区別をつけるため、
この _  は[Self.]の略という意味ではない。
array.cout ←配列の要素数を返してくれる。  

iphone アプリ開発開始 ここまでの疑問解消一覧 in Philippines

LabelにAutolayout機能が入っていると、self.myLabel.center=(x,y)など場所を指定しているプログラムが聞かない場合がある。

Static は定数、一度数値を代入したら、再度代入は不可能 ←エラーが起きる。

TabelVIewCell に @“Cell”を代入するのは、 Cellに@“Cell”という名前(ID)をつけているから。

indexpass←色々な行の情報が入っているもの,そこからrow(何番目の行か)の情報をとってくる。

URLが16進数になっている場合、URLエンコードを使えば解決する。オブジェクティブCに既に入っている。

iphone アプリ開発開始 in Philippines〜8日目〜

isEqual=特定の文字を指定するときは使用する。
               文字が入っていない場合などの時は[x.text==0]と指定するほうが良い。
・テキストフィールドの文字をキーワードとして検索するにはMicrosoftなどのAPI(ビーンズ?)などをしようして、ページ情報を全て取得する必要がある。
tabelViewなどのデリゲードをheaderに書く必要があるが、
storyboardの横のところから設定もできる。
TAB
971.png
↑TABviewcontrollerを追加する方法
972.png
上記のようになる。
新しいファイルを追加する方法。
973.png
974.png
Subclass of が UIVIewControllerになっていないかを注意.
975.png ←Viewを選択してから、これを決めるのが大切。
APPDelegate.h.m
アプリが起動した時や、終了した時などの画面全体の動き。
Viewが多くなっていくとそれぞれのファイルだけでは、処理ができない全体の動きの処理を書く。
AppDelegateにはグローバル変数を使えるようになる。
976.png
977.png

978.png
このDelegate.mで初期値を設定。
979.png
-(void)viewDidloadは 一回しか処理が動かない。
-(void)viewwillAppearは画面が表示されるたびに中の処理が実行される。
9791.png

9792.png
9793.png
9794.png
空白のViewを追加して、それにスワイプやタップ機能を追加する。
IOS Simulator でOption key を押すと Pinchの機能を使えることができる。