900iシリーズの大容量メモリを活かすアプリ作りといえば、やはり、大量のリソースを使用してリッチでド派手な物を作るのが醍醐味。今度は画像の表示方法を紹介しよう。
ゲームのメイン処理をコンストラクタで行うのはよくないので、mainメソッドを作成し、そこですべての処理を行うことにする。
メインクラスのstartメソッドでクラスCのmainメソッドを呼ぶ。Image型の配列を用意する。
|
次に、上で用意したImageに画像を格納して使用できる状態にする。
|
リソースフォルダ(res)に連番で名前を付けたgifファイル(0.gif〜8.gif)を入れておく。
|
MediaManagerクラスのgetImageメソッドの引数にロケーション(リソースの場所)を指定すると、MediaImageが返って来る。resフォルダを指定する場合には、文字列"resource:///(ファイル名)"を指定する。
スラッシュは3つ付ける。上記例のように、ファイル名を数字で付け、forループで繰り返して取得するといい。
MediaImage.use()でそのメディアイメージの使用開始を宣言し、実際に使用できる形式に変換されロードされる。MediaImage.getImage()でImageオブジェクトを取得する。
後は、paintメソッド内で第1引数をImageオブジェクトとしてdrawImageを実行すれば画像が表示される。
|
画像の取得に失敗すると、IOExceptionが発生し、catch節の中の処理が実行される。試しに画像をリソースフォルダに入れずにビルド、実行すると、エミュレータのコンソール画面に「画像の取得に失敗!」と表示されることを確認しよう。
Copyright © ITmedia, Inc. All Rights Reserved.