2011-02-08 5 views
2

私は以前のJavaの経験がなく、アンドロイドの開発を学び始めたばかりのフラッシュ開発者です。私は単純な子供のフラッシュカードアプリを作ろうとしています、動物の画像の負荷と、彼らが作る音の負荷から成っています。アンドロイドでオブジェクトを操作する

現在ギャラリービューで画像を配列に格納しています。私はまた、音の配列を持っています。そのため、各イメージと対応するサウンドは配列内の同じ位置にあるため、正しいイメージを再生するのは簡単です。

ここでは、カードをシャッフルして、アプリが起動するたびに異なる順序で表示されるようにします。私はランダムな順序で配列をシャッフルすることができましたが、イメージとサウンドを各配列の同じ位置に保っていましたが、私はこれが乱雑になっていると感じることができ、これがこの問題についての最善の方法ではないと確信しています。

これはフラッシュムービーの場合は、オブジェクトを使用してイメージとサウンドをリンクし、オブジェクトを配列に貼り付けます。誰もがアンドロイドのために同じことを達成するいくつかのコードで私を助けることができますか?私はJavaの完全な初心者であり、チュートリアルと基本概念がAS3と同じであることをこれまでには理解しています。

+1

あなたは既に持っているもののいくつかの例のコードを提供できますか?例えば。あなたの配列の画像とサウンド(どのような型ですか?)などです。独自の 'Card'クラスを作成することは正しい方法ですが、おそらく配列ではなく' List'を使うべきでしょう。 –

答えて

5

私は、配列内のオブジェクトを画像や音声をリンクし、固執するオブジェクトを使用すると思います。

私もそうです。

class SomeNiceName{ 
    private final Bitmap animal; 
    // I'm guessing the sound is in the resources 
    // folder, thus you only need an integer to reference it 
    private final int sound; 

    public Animal(Bitmap animal, int sound){ 
     this.animal = animal; 
     this.sound = sound; 
    } 

    public Bitmap getAnimal(){ 
     return animal; 
    }// missing getter for sound 
} 

この場合、私はこの場合に便利な不変オブジェクトを使用しています。そして、あなたはそれらの動物の配列、Oいっそのリストを作成することができます。

// array 
SomeNiceName[] array = new SomeNiceName[blah]; 
array[0] = new SomeNiceName(someBitmap, theSound); 
// or with lists: 
List<SomeNiceName> list = new ArrayList<SomeNiceName>(); 
list.add(new SomeNiceName(someBitmap, theSound)); 

あなたはこのケースでは「障害」だろう唯一のものは、1つの配列です。

+0

ありがとう! :)私の新しいリストをランダムに乱す関数を見つけるために今オフに! :) –

1

クリスチャンはもちろん、あなたのAndroidアプリケーションでクラスを使用することができると述べたように。

しかし、モバイルデバイスは、デスクトップやラップトップ-yet-のような巨大な処理能力を持っていないことから、私はあなたのOOPの習慣を実行する前に、以下の記事を読むためにあなたをアドバイス;)

Object Creation

Getters/Setters? Not here!

For items above and more...

関連する問題