第2回 カードゲームをつくってみよう90Xi専用ゲームiアプリ開発講座(2/3 ページ)

» 2004年10月25日 15時25分 公開
[澤橋辰典・武上将樹,ITmedia]

画像を表示してみよう

 900iシリーズの大容量メモリを活かすアプリ作りといえば、やはり、大量のリソースを使用してリッチでド派手な物を作るのが醍醐味。今度は画像の表示方法を紹介しよう。

 ゲームのメイン処理をコンストラクタで行うのはよくないので、mainメソッドを作成し、そこですべての処理を行うことにする。

 メインクラスのstartメソッドでクラスCのmainメソッドを呼ぶ。Image型の配列を用意する。

  static final Image[] img = new Image[3];

 次に、上で用意したImageに画像を格納して使用できる状態にする。

  static final void main() {
    try {
      for (int i=0;i<3;i++) {
        MediaImage mi = MediaManager.getImage("resource:///"+ i +".gif");
        mi.use();
        img[i] = mi.getImage();
      }
    } catch (IOException e) {
      System.out.println("画像の取得に失敗!");
    }
    
    Display.setCurrent(_canvas);
  }

 リソースフォルダ(res)に連番で名前を付けたgifファイル(0.gif〜8.gif)を入れておく。

  MediaImage mi = MediaManager.getImage("resource:///"+ i +".gif");

 MediaManagerクラスのgetImageメソッドの引数にロケーション(リソースの場所)を指定すると、MediaImageが返って来る。resフォルダを指定する場合には、文字列"resource:///(ファイル名)"を指定する。

 スラッシュは3つ付ける。上記例のように、ファイル名を数字で付け、forループで繰り返して取得するといい。

 MediaImage.use()でそのメディアイメージの使用開始を宣言し、実際に使用できる形式に変換されロードされる。MediaImage.getImage()でImageオブジェクトを取得する。

 後は、paintメソッド内で第1引数をImageオブジェクトとしてdrawImageを実行すれば画像が表示される。

  for (int i=0;i<3;i++) {
    g.drawImage(img[i], 20+(i%3*50), 20+(i/3*40));
  }

 画像の取得に失敗すると、IOExceptionが発生し、catch節の中の処理が実行される。試しに画像をリソースフォルダに入れずにビルド、実行すると、エミュレータのコンソール画面に「画像の取得に失敗!」と表示されることを確認しよう。

Copyright © ITmedia, Inc. All Rights Reserved.

アクセストップ10

2026年02月10日 更新
  1. 「iPhoneの調子が悪いです」の文言、なぜアイホンのFAQに? 実はAppleと深く関係 (2026年02月08日)
  2. 総務省有識者会議が「手のひら返し」な我が国への示唆――日本を国際標準から遅れさせたのは自らの愚策のせい (2026年02月08日)
  3. 「東京アプリ」で1.1万円分をゲット、お得な交換先はどこ? dポイント10%増量+楽天ペイ抽選が狙い目か (2026年02月05日)
  4. KDDI、楽天モバイルとの「ローミング重複エリア」を順次終了 松田社長が言及 (2026年02月06日)
  5. 楽天モバイル、1000万回線突破も残る「通信品質」の課題 5G SAの早期導入とKDDIローミング再延長が焦点に (2026年02月07日)
  6. 東京アプリ、PayPayがポイント交換先に追加される可能性は? 広報に確認した (2026年02月05日)
  7. Googleが台湾のPixel開発拠点を公開 「10 Pro Fold」ヒンジ開発の裏側、“7年サポート”を支える耐久テスト (2026年02月09日)
  8. 【ニトリ】1990円の「スマホに付けるカードケース」 マグネット対応でスタンドとしても使える (2026年02月07日)
  9. 「小型iPhone SEを復活させて」──手放せない理由SNSで話題 どこが“ちょうどいい”と評価されるのか (2025年11月29日)
  10. あらゆるアプリ操作を任せられる“真のAIスマホ”「M153」が中国で売れまくっている TikTok運営元ByteDanceのエージェントAI「Doubao」を搭載 (2026年02月08日)
最新トピックスPR

過去記事カレンダー

2026年