トレーディングカードアプリを作る~デッキ構成機能(実装その1)~
昨日の続き。
UICollectionViewを使って、カード一覧表示部分を作ってみた。
まだ、完全にできあがっていないができた部分まで。
カード一覧表示部分については、以下の通り
カード一覧表示
-所有しているカードを一覧(絵、所有枚数)で表示する。カードをタップすると詳細を確認することができる。
plistでカード情報を管理(今のところ)
-カードNO (Dictionary)
-カード名 (String)
-image画像名 (String)
-カードクラス (String)
-HP (Number)
-技 (Array)
-技NO (Dictinary)
-技名 (String)
-攻撃力 (Number)
-コスト (Number)
・・・
-表示フラグ (String)
-カードNo
・・・
-カードNo
コードはgit準備でき次第あげます。
簡単にどんな感じかというと、
■下準備
- StoryBoradからUICollectionViewControllerを追加
- クラスファイルの追加(CollecionViewと命名)
- 1で追加したUICollectionViewControllerと2で追加したクラスファイルを紐付け
- 表示用画像の追加(大英博物館様の史料)
- plist作成
<key>1</key> ➡ カードNO
<dict>
<key>image</key> ➡ image画像名
<string>c1.gif</string>
<key>class</key> ➡ カードクラス
<string>servant</string>
<key>name</key> ➡ カード名
<string>兵士</string>
<key>life</key> ➡ HP
<integer>10</integer>
<key>special</key> ➡ 技
<array>
<dict> ➡ 技1
<key>attackname</key> ➡ 技名
<string>special1</string>
<key>cost</key> ➡ コスト
<integer>1</integer>
<key>attack</key> ➡ 攻撃力
<integer>2</integer>
</dict>
<dict> ➡ 技2
<key>attackname</key> ➡ 技名
<string>special2</string>
<key>cost</key> ➡ コスト
<integer>3</integer>
<key>attack</key> ➡ 攻撃力
<integer>5</integer>
</dict>
</array>
</dict>
■実装
- viewDidLoad内でplist読み込み及び、CollectionViewへCellの登録
- numberOfSectionsInCollectionView:(UICollectionView *)collectionViewでアイテム数(列)の指定
- collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)sectionでセッション数(行)の指定
- collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPathでセルの生成
という感じで、できあがった様子は、

です。
要は、読み込んだ画像を単純に並べているだけです。
もっとちゃんと作り直しますが、ここから画像をタップされた際に詳細(カード名など)を表示する機能や、デッキへ入れるかの選択機能などを追加していく予定です。
参考にしたページですが、色々見ましたが、こちらのページを見ながら大体やりました。
[iOS6] Collection View 基本的な使い方 - iOS 開発ブログ Natsu's note
ありがとうございました。