読者です 読者をやめる 読者になる 読者になる

ひっきぃのメモ帳

趣味で作るプラモデル製作の過程と作品、日々の資格取得へ向けての活動、Apple中心のIT関連ネタを書いています。

[]第18回 パラメータの共有 その2

 前回はパラメータを共有する準備として、値を保存しておくところまでできました。第18回では、その値を利用する方法について説明します。

前回出てきたオブジェクトをまとめておきます。

  • Title   IApplication から継承して作成したオブジェクト。基本的なiアプリの最初の一歩です。
  •  MainCanvas  Canvasを継承して作成したオブジェクト。最初のタイトル画面の描画に使っています。
  •  FirstCanvas  Canvasを継承して作成したオブジェクト。タイトル画面からメニュー操作後に切り替える画面です。

どこにでも値は保存できますが、今回は全ての根っこにあたる Title に保存しておきました。
ここまでは、前回実装した部分です。なんとなく図にしてみました。

オブジェクト

最初にMainCanvasを作った場所 Titleというオブジェクトは



(Title)(IApplication.getCurrentApp())

で取り出せます。そこのmcという変数にMainCanvasのオブジェクトへの情報が入っています。



MainCanvas mc = *1.mc;


として取り出せます。( ) の位置に注意ですね。
このCanvasに移動するのであれば、



 Display.setCurrent(mc);


で移動完了します。

 FirstCanvasのprocessEvent()内部で以下のようにします

 if (param == Display.KEY_SOFT1) {
MainCanvas mc = ((Title)IApplication.getCurrentApp()).mc;
Display.setCurrent(mc);

}

これで、めでたくタイトルを描画していたCanvasへ元の状態のまま復帰できます。

 

*1:Title)IApplication.getCurrentApp(