リストとデータソース (6/8)
作成:2011-05-16 08:24
更新:2011-05-16 08:24
更新:2011-05-16 08:24
■データソースと接続する
StackLayoutに用意された2つのビューにそれぞれ部品を配置したら、データソースと部品類を接続しましょう。リストのラベルとデータソースのitemsのnameを接続するのは、先にやりましたね。後は、「選択したデータを、2つ目のビューに用意した3つのテキストにそれぞれ接続し表示する」ということを行いましょう。
ウインドウ左下のデータソースを見ると、dataSourceの下に、いつの間にか「list」という項目が増えているのに気づくことでしょう。データソースにURLを設定し、そのデータ構造が読み込まれると、そこに保管されているデータをリストとして扱うための「list」項目が自動的に生成されるのです。
このlistには、「selection」と「selectedObjects」という項目が用意されます。selectionとは、選択された項目のことで、ここに各データの中身(ここでは、name、subtitle、contentといった項目)が表示されます。selectedObjectsには、実際に用意されてるデータ配列がまとめられており、その場でデータの内容を表示します。
これらの項目は、それぞれデータソースの項目と同じやり方でGUIの属性などに接続することができます。すなわち、項目の右側にある◯から、接続する部品までドラッグ&ドロップし、ドロップ先に表示されるポップアップメニューから接続する属性を選ぶ、という形ですね。
では、ここでは「リストから選択した項目のデータを取り出して、もう1つのビューにあるテキストに表示する」という接続を設定してみましょう。それぞれ以下のように接続してください。
・selectionのnameを、タイトル表示用のテキスト(id = "text2")に接続。
・selectionのsubtitleを、サブタイトル用のテキスト(id = "subtitle")に接続。
・selectionのcontentを、内容表示用のテキスト(id = "contents")に接続。
これで、選択した項目の内容が2つ目のビューのテキストに表示されるようになりました。ここまでは全くのノンプライミングですね。――ただし、まだこの段階では、リストをタッチしても何も起こりません。また「クリックするとビューを切り替える」という処理が用意されていないからです。
ウインドウ左下のデータソースを見ると、dataSourceの下に、いつの間にか「list」という項目が増えているのに気づくことでしょう。データソースにURLを設定し、そのデータ構造が読み込まれると、そこに保管されているデータをリストとして扱うための「list」項目が自動的に生成されるのです。
このlistには、「selection」と「selectedObjects」という項目が用意されます。selectionとは、選択された項目のことで、ここに各データの中身(ここでは、name、subtitle、contentといった項目)が表示されます。selectedObjectsには、実際に用意されてるデータ配列がまとめられており、その場でデータの内容を表示します。
これらの項目は、それぞれデータソースの項目と同じやり方でGUIの属性などに接続することができます。すなわち、項目の右側にある◯から、接続する部品までドラッグ&ドロップし、ドロップ先に表示されるポップアップメニューから接続する属性を選ぶ、という形ですね。
では、ここでは「リストから選択した項目のデータを取り出して、もう1つのビューにあるテキストに表示する」という接続を設定してみましょう。それぞれ以下のように接続してください。
・selectionのnameを、タイトル表示用のテキスト(id = "text2")に接続。
・selectionのsubtitleを、サブタイトル用のテキスト(id = "subtitle")に接続。
・selectionのcontentを、内容表示用のテキスト(id = "contents")に接続。
これで、選択した項目の内容が2つ目のビューのテキストに表示されるようになりました。ここまでは全くのノンプライミングですね。――ただし、まだこの段階では、リストをタッチしても何も起こりません。また「クリックするとビューを切り替える」という処理が用意されていないからです。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
※関連コンテンツ
「DashcodeによるiPhone用Webアプリ作成入門」に戻る