0

繰り返しなしでランダムなメッセージを生成するアプリを (学習目的で) 作成したいと考えています。

onCreate メソッド内に次のコードがあります。

imgbutton2 = (ImageButton) findViewById(R.id.imgbutton2);

int n=3;
int v1[] = new int[n];
v1[0] = 0;
v1[1] = 0;
v1[2] = 0;

int i, j;

for(i=0;i<n;i++){
    for(j=0; ;j++){
        Random rn = new Random();
        int range = 3;
        int r = rn.nextInt(range) 1;

        if(r != v1[0] & r != v1[1] & r != v1[2]) {
            v1[i] = r v1[i];

            textView1=new TextView(this); 

            switch (r) {
                case 1:
                    textView1 = (TextView) findViewById(R.id.textView1); 
                    textView1.setText("Message 1");
                break;

                case 2:
                    textView1 = (TextView) findViewById(R.id.textView1); 
                    textView1.setText("Message 2");
                break;

                case 3:
                    textView1 = (TextView) findViewById(R.id.textView1); 
                    textView1.setText("Message 3");
                break;
            }
            break;
        }
    }

    imgbutton2.setOnClickListener(new View.OnClickListener(){
        public void onClick(View v){
            Intent i = null;
        }});
    }

imgbutton2 (最初の FOR 内) に null 関数を配置し、ユーザーがクリックするのを待ってから、読み続けて i=1 で最初の FOR に再度入力します) が、機能しません。

アイデアは、ボタンがクリックされたときに新しいメッセージを生成することです。

誰でも私を助けることができますか?

4

1 に答える 1

0

Android は、乱数を取得するための API を提供します。これをボタン クリック イベントで使用して、繰り返しのない乱数を取得します。

 Random myRandom = new Random();
 int randomNumber = myRandom.nextInt();
 Log.i("RandomNumber:" + randomNumber);
于 2013-02-28T06:04:26.907 に答える