1

私は以前に試しましたが、もっと混乱したので、もっと正確にしようと思います。私は7枚のカードのデッキを持っているアプリを作っています。デッキをクリックして、7枚のカードのうちの1枚を画面にポップアップさせたいです。これまでのところ私は

 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        final MediaPlayer mpClick = MediaPlayer.create(this, R.raw.click);
        randomM = (EditText) findViewById(R.id.randomM);

        //button 1 start        
        Button bMythos = (Button) findViewById(R.id.mythos);
        bMythos.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                mpClick.start();
                Random r = new Random();
                int n=r.nextInt(7) + 1;
                randomM.setText(String.valueOf(n));
            }
        });
        //button 1 end
    }

}

これまでのところ、これは私がクリックしたカードデッキを表示し、乱数が生成されます(テキストボックスは、乱数ジェネレーターが機能していることをほぼ知ることができます。表示がわかると削除されます)。

だから私の質問 乱数カードに対応する乱数を取得してカードを表示するにはどうすればよいですか?-カードにはmythos1、mythos2などのラベルが付いているので、mythos(String.valueOf(n))で何かできると思いましたが、うまくいきませんでした(何か間違ったことをしている場合を除きます)[わからない場合何をしているかが自分もわからない]

4

4 に答える 4

6

この方法を試してください

 int[] cards={R.drawable.card1,R.drawable.card2,R.drawable.card3,R.drawable.card4,R.drawable.card5,R.drawable.card6,R.drawable.card7};
 Random r = new Random();
 int n=r.nextInt(7);
 imageview.setImageResource(cards[n]);
于 2012-04-13T06:02:27.463 に答える
0

あなたの質問はちょっと曖昧ですが、私が少しでも理解していることですが、デッキが7つしかないことが確実な場合は、それらをハードコーディングしてそれぞれに値を割り当てないでください。そのため、ランダム関数を呼び出すと、結果がどの番号であるかがチェックされ、5であると想定して、setDrawableResource(R.drawable.img5)などが呼び出されます。

于 2012-04-13T05:40:19.690 に答える
0

Listカードを配列または何らかの種類で保持する必要があります。次に、それらを番号で参照できます。例えば:

ArrayList<Card> deck = new ArraList<Card>();

//Fill the ArrayList. Maybe shuffle it.

selectedCard = ArrayList.get(randomNumber);

Card代わりに、単にStringまたは何かである可能性があります。どんなオブジェクトを使っているのかわかりません。

于 2012-04-13T05:41:11.787 に答える
0

MediaPlayerの代わりにImageViewを使用する必要があります。1〜7に割り当てられた7つの画像(R.drawables.mythos1、...)を割り当てimageView.setDrawableResource(R.drawable.myths1);、乱数に応じてImageViewに設定する必要があります。ここから例を見てくださいImageViewでドローアブルのIDを取得してください

于 2012-04-13T05:42:08.097 に答える