03-02 キャラクターを動かす

無謀にも、HelloWorld 後に、いきなりキャラクターを動かしてみる!と、意気込んでみます。
自分はショートケーキはいちごから食べるタイプなのでー 😀
いきなりキャラクタが動いたら、モチベーションアップ間違い無し!

それか、ここで挫折・・・ 🙁

て、感じですねー 🙂

ぐぐってみたところ Androidでゲーム作成(1) (やさしいデスマーチ) さんのところが hit したので、それを参考にさせてもらいました。

まず やさしいデスマーチ さんが公開してくださっている ソース をとりいれようと思います。
この時点でかなり悩みました 🙁

java の基礎すらわかっていないので、ソースをどこに書いたらいいのかすらわからないのです。
いろいろ試していくうちに、公開してくださっているソースは “Class” ファイルなのだとわかりました!
ので、それを作るところからです。

Class を作る
Eclipse の画面左ウィンドウから
[HelloWorld] → [src] → [jp.pxy.helloworld] と展開し、[helloworld] を右クリック → [New] → [Class] をクリック。

 

“Name” 欄は “GameBoadView” です。
これは公開してくださっているソースに書かれている内容です。これが Class 名になるみたいです。

/**
 * Game盤.
 * 
 * @author shuji
 */
public class GameBoadView extends SurfaceView {

        private Component youmu;

 

ソースファイルをコピーし、↑で作成した GameBoadView.java に貼り付けます。

 

たくさんエラーが出ているのですが、とりあえず先頭行だけ直します。
先頭行はどうやら Packeage 名なので、これは自分の環境用に合わせる必要があるみたいです。
今回は HelloWorld の続きで進めているので、そのように直します。
途中まで入力すると、ポップアップが表示されるので、それをクリックすればいいようです。
スペルミスもなくなって使いやすいですね!

 

こんな感じにエラーが少し消えました。

 

同じ要領で “Component” Class も作成します

 

最後の Class ファイルは少しやり方が違いました。
まず “MainActivity.java” の名前を “Yukkuri.java” に変更します。

“MainActivity.java” をクリック → [F2] キーを押します。
下の画面が表示されるので Yukkuri と入力 → [Next] → [Finish]

 

そのあとに、ソースをコピペしパッケージ名を修正したら・・・

なんとっ!すべてのエラーが解消されています!
 ※まだエラーがでている場合は、全部を保存すればエラーが消えると思います。

 

キャラクター画像のインポート
次は、動かくキャラクターの画像を Import します。
[jp.pcy.helloworld] を右クリック → [Import]

 

[File System] をクリック → [Next]

 

[Browse] ボタンをクリック → フォルダを選択 → 画像ファイルにチェック → [Finish]
画像ファイルは jpg, png がいいようです。gif は使えないようです。

 

画像ファイルへの path を修正します。
“GameBoardView.java” の 31 行目付近の “youmu.png” をインポートした画像ファイル名に変更します。

public void setup() {
//  youmu = new Component(getClass().getResourceAsStream("youmu.png"));
    youmu = new Component(getClass().getResourceAsStream("Browser.png"));
}

 

AndroidManifest.xml の修正
Eclipese の画面左側の “AndroidManifest.xml” をダブルクリック
→ 表示された右画面の下にタブがいくつかありますので、そこの “AndroidManifest.xml” をクリック

 

15 行目付近の “android:name” を “.Yukkuri” に修正します。
どうやら、ここで設定した Class ファイルがはじめに読み込まれるようですね

<activity
  android:name=".Yukkuri"
  android:label="@string/title_activity_main" >
  <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
  </intent-filter>
</activity>

 

動作確認
以上がすべて終わったら Eclipse の左ウィンドウの “HelloWorld” をクリック → ”RUN” ボタン
エミュレーターの起動後、キャラクターが動くようになりましたーーー!

俄然モチベーションアップです! 🙂

黒い画面のままの場合は、エミュレーターのカーソルキーを押してみてください。
キャラクターが登場すると思います。キャラクターが登場しない場合は、画像ファイルの PATH を確認してみてください。
黒い画面で、画面上部に MainActivity と表示されている時点でプログラムは正常に動いていると思います。

 
 

 

以下は失敗体験なので見る必要はないです 😛

さっそく起動!!

 

なんかエラーです 🙁
まあそうそううまくいかないですよね ><

 

ログを見る (Eclipse の右の方の一番したのアイコン)と・・・
まったくわかりません 🙁

でも、とりあえず見てみると
“jp.pxy.helloworld.MainActivity}: java.lang.ClassNotFoundException” てので、
MainActivity が見つかりません。と言ってそうだというのはわかりました・・・

07-28 07:49:50.675: E/AndroidRuntime(264): 
java.lang.RuntimeException: Unable to instantiate activity 
ComponentInfo{jp.pxy.helloworld/jp.pxy.helloworld.MainActivity}: 
java.lang.ClassNotFoundException: 
jp.pxy.helloworld.MainActivity in loader dalvik.system.
PathClassLoader[/data/app/jp.pxy.helloworld-1.apk]

“Search” を使っても見つからず・・・(使い方が悪いのでしょうが英語なのでそのまま検索しました
使ってないし、名前を変えたのに見つからないってことは・・・

恐らくどこかに設定ファイルがあって、それが修正されていないんだと思いしらみつぶしに探したところ!

ありましたーー!

コメントを残す

メールアドレスが公開されることはありません。


*