Moai SDK で作るタップゲー (画面内の表示を切り替えるタブメニューの配置

アイテム閲覧の画面構成をノートに書きだしたので、実装を開始した。

  • どの種類のアイテムを閲覧するのかを選ぶタブメニュー
  • アイテムがリスト表示されたスワイプできる領域
  • アイテムをタップしたときの詳細表示

から構成される予定。
これらの動作は、状態遷移で表現せずにボタンが押された時のコールバックで処理してしまおうと思っている。

とりあえず、タブメニューまでが実装できた。
↓ソースコード
https://bitbucket.org/satofumi/dwarf_weapon_shop/src/e1c0225cad59e28bfa8f87fb6399bbf6a2e308db/src/items.lua?at=default

dwarf_items_2014_1008

タブメニューの個々の要素はボタンで構成されているので、下記コードをボタンが押された時のコールバックとして登録することで、メニューの排他まわりを実現している。

-- 押下時のコールバックを登録する
local function decided_callback(button_self)
   -- 押下を排他にする
   for _, button in pairs(button_) do
      if button_self ~= button then
         button:set_normal()
      end
   end

   -- スクロールエリアを切り替える
   -- !!!
end

実装に思っていたよりも時間がかかってしまうのは、ぶっちゃけ辛いけど頑張ろうと思う。