Objective-C 基本講座

UITableViewを使った成績表の表示

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
UITableViewを使って画面に一覧表を表示する方法を紹介します。
講師:
07:57

字幕

このレッスンでは UIテーブルビューの 簡単な利用法を学習します UIテーブルビューは 一覧表を表示するために用意された UIビュー派生のオブジェクトです IOSアプリで表示される ほとんどの一覧表画面には このUIテーブルビューが 使われています UIテーブルビューが 管理する画面は セルと呼ばれる子画面が 縦に並ぶ形で構成されていて それぞれのセルは UIテーブルビューセルによって 管理されています UIテーブルビューは もし一覧項目の総数が 画面内に収まりきらない場合 画面をスクロールできるようにします そしてユーザーが 指で画面をスクロールさせると 見えなくなったセルは 画面から取り外し 隙間ができた部分に 表示するべき項目を持つ 新しいセルを挿入します 項目の総数がいくつなのか どんなセルを表示するのかは デリゲートデザインパターンによって 別のオブジェクトに任せるようになっています 派生を使わずに デリゲートデザインパターンを 使うことで 項目情報を管理しているオブジェクトが 別々のUIテーブルビューに それぞれのデザインで表示させることも 可能になります このデリゲートデザインパターンのために 定義されたプロトコルは UIテーブルビュー というものです ちなみに画面表示だけでなく セルごとのタッチなどに反応するには もう一つ別のデリゲートを 採用する必要があります UIテーブルビューと 言います 興味がある人はアップルのドキュメント IOSテーブルプログラミングガイドを 読んでみてください 話を戻します UIテーブルビューには いくつかのメソッドが宣言されていて それらに対応することで 項目を削除したり移動させたりと きめ細やかな動作制御を 可能にしますが ここでは プロトコルを採用した側が 必ず用意しなければならない 2つのメソッドについて説明します 1つ目がセクションごとの 項目数を戻すメソッドで 2つ目が 指定された項目用の UIテーブルビューセル を戻すメソッドです セクションとは 項目をまとめたグループを意味し UIテーブルビューが 望むならセクションごとに ヘッダーやフッターを 表示できるようにもなっています セクションごとに含める項目数を 変えることもできるので 項目数を戻すメソッドは セクション分呼び出されることになり 仮引数セクションに どのセクションの項目ソースが ほしいのか 指定されることになります この番号は0から始まります あえて指定しない限りは セクション数は1となるので その場合は仮引数セクションの 値を見ることなく 項目総数を戻せばいいことになります 第1引数で UIテーブルビューを 受け取っているので複数の UIテーブルビュー のデリゲート役を 1つのオブジェクトが担当できます UIテーブルビューは セクションとその中の項目番号という形で 項目を特定する関係で 項目を指定するには 整数型ではなく NSindexpassという オブジェクトが使われます NSindexpassは セクションとその中の項目番号を 表現するオブジェクトで それぞれセクションプロパティ ロープロパティから 調べることができるよういになっています 指定しない限りセクションは1つなので その場合セクションプロパティは いつでも0です UIテーブルビューセルを 作り 項目の内容を設定する際は NSindexpassを 調べてどの項目かを 特定することになります UIテーブルビューの 作成には イニシャライザー、 initwithスタイル ユーザーアイデンティファイやーを 使います このイニシャライザーは 第1引数で どのようなデザインのセルを 表示するかを指定します 何種類かありますが UIテーブルビュー セルスタイルサブタイトルだと 2つのUIラベルを持つデザインとなります それぞれのUIラベルには テキストラベル リテールテキストラベル プロパティでアクセスできます またデリゲートとして UIテーブルビューセルを 要求された時に戻すオブジェクトは UIテーブルビューセルまたは UIテーブルビューセルの 派生オブジェクトであれば 何でも構わず 項目ごとに デザインを変えても構いません そのため必要なら別のUIビューを追加して カスタマイズをしたりもします リユーズアイデンティファイやーでは このデザインが 異なるUIテーブルビューセルを 識別するための 任意の文字列を指定します またこのUIテーブルビューセル の作成では 作る前に仮引数 テーブルビューとして渡される UIテーブルビュー リサイクルキューの中に リユーズアイデンティファイヤー で指定した識別子を持つ UIテーブルビューセルが ないかを調べ もし存在するなら そちらを取り出して 使うように決められています dequeReusablecell WithIdentifierは 自分が持つリサイクルキューの中に 引数で指定された識別子を持つ UIテーブルビューが ないかを調べ もし存在するなら そのUIテーブルビューを キューから取り出してもどし なければnirを戻すメソッドです ここでnirが戻った時に初めて UIテーブルビューを 作ります これはUIテーブルビューが スクロールで画面外になった UIテーブルビューセルを すぐに解放せずに リサイクルキューに保存しているからです デリゲート側は このリサイクルキューの UIテーブルビューセルを 優先的に使うことで 毎回UIテーブルビューセルを 作るロスを防ぎます このとき同じデザインの UIテーブルビューセルを 取り出すために 識別子が利用されます 見つかったらその UIテーブルビューセルを 見つからなければ新しく UIテーブルビューセルを作り 内容を indexpassで 指定された項目の内容に 変更して戻します 実際に作ったものをお見せしましょう Xコードの画面に切り替えます UIテーブルビューを作り デリゲートに 自分を設定しています そのため UIテーブルビューデータソースを 採用し 必要なメソッドを実装しています セクション内の項目がいくつあるのかを 答えるメソッドと indexpassで指定される セルを戻すメソッドです 項目数を戻す方は 100を戻しているので テーブルには100個の項目が 表示されることになります セルを戻す方では セルを識別子として指定しました 1種類しかないので 特に指定しなくても構いませんが まずはセルを指定します スタイルは デフォルトとして テキストプロパティに セクションと 項目数を 設定しています ランすると 画面に一覧表が現れます このレッスンでは UIテーブルビューの 簡単な利用法を学習しました

Objective-C 基本講座

このコースはプログラミング初心者でもObjective-CによるiOSアプリ開発の体系的な理解が得られるように構成されています。プログラムの動作の原理、Objective-C言語の役割、そこで利用されるCocoa touchオブジェクトの役割、基本的なiOSアプリの作成方法などを学習します。ぜひこのコースをアプリ開発に踏み出すさいの第一歩としてください!

6時間39分 (69 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 3,990
発売日:2015年11月18日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。