JavaのArrayListを使い、データを構造化したいです。
Android開発を初めて一月半ほどの初学者です。
仕事で、カテゴリ検索機能を作成してほしいとのことで
カテゴリをデータ構造化して、Activityで保持しといて
検索をスムーズにしてと言われました。
どのようにすれば良いのでしょうか。
今日が金曜日でどうやるのか聞こうにも聞けず...
データがないので、予想しながらしてほしいそうです。。。
画面遷移は下記のようになります。
text
1 2インドアボタン => 読書ボタン => 漫画ボタン => 漫画一覧が表示される 3 => 小説ボタン => 小説一覧が表示される 4 5 映画ボタン => アクションボタン => アクション映画一覧が表示される 6 => ホラーボタン => ホラー映画一覧が表示される 7 8 ゲームボタン => 格闘ボタン => 格闘ゲーム一覧が表示される 9 10 11 12アウトドアボタン => 球技ボタン => サッカーボタン => サッカーグッズ一覧が表示される 13 14 => バスケボタン => バスケグッズ一覧が表示される 15 16 => 登山ボタン => クライミングボタン=> クライミンググッズ一覧が表示される
他にもありますが、画面繊維は、このような感じです。
おそらく、DB設計は以下のようになると思います。
text
1インドア / アウトドア 2+----+-----------------+ 3| id | name | 4+----+-----------------+ 5| 1 | インドア | 6| 2 | アウトドア | 7+----+-----------------+ 8 9 10ジャンル 11+----+------------+-----------+ 12| id | genre_name | in_out_id | 13+----+------------+-----------+ 14| 1 | 映画 | 1 | 15| 2 | ゲーム | 1 | 16| 3 | 球技 | 2 | 17| 4 | 読書 | 1 | 18| 5 | 登山 | 2 | 19+----+------------+-----------+ 20 21 22スモールジャンル 23+----+--------------------+----------+ 24| id | small_genre_name | genre_id | 25+----+--------------------+----------+ 26| 1 | 漫画 | 4 | 27| 2 | アクション | 1 | 28| 3 | サッカー | 3 | 29| 4 | 格闘 | 2 | 30| 5 | 小説 | 4 | 31| 6 | バスケ | 3 | 32| 7 | クライミング | 5 | 33| 8 | ホラー | 1 | 34+----+--------------------+----------+ 35 36 37グッズ 38+----+--------------------------------+----------------+ 39| id | goods_name | small_genre_id | 40+----+--------------------------------+----------------+ 41| 1 | サッカーボール | 3 | 42| 2 | サッカーボール | 3 | 43| 3 | サッカーボール | 3 | 44| 4 | 漫画 1 | 1 | 45| 5 | クライミングシューズ | 7 | 46| 6 | 貞子 | 8 | 47| 7 | スーパーヒーロー | 2 | 48| 8 | 小説1 | 5 | 49| 9 | 格闘ゲーム1 | 4 | 50| 10 | バスケシューズ | 6 | 51| ・ | ・ | ・ | 52| ・ | ・ | ・ | 53| ・ | ・ | ・ | 54| ・ | ・ | ・ | 55+----+--------------------------------+----------------+ 56 57
このような感じで、idがインドア/アウトドアテーブル〜グッズまで繋がっていると思います。
Activityの繊維は、
①インドア/アウトドアActivity
②ジャンルActivity
③スモールジャンルActivity
④グッズ一覧Activity
です。
それぞれのActivityからボタンを選ぶ際に
数字を持たせて、インテントputExtraで渡していき、
最終的にArrayListでまとまった値をJSONで渡して
サーバー側(PHP)で、パースして検索していくのかなとも思いましたが
何か、違うような気がします。
まだまだ素人なので、どのようにしたら良いか
イメージがわかず・・・
調べても参考になりそうなものがなかなか出てきません。
どのようにしたら良いかご教示をお願いできましたら幸いです。
丸投げになっているようなので
ヒントだけでも、教えていただきたいです。。。
よろしくお願いいたします。