0

クリックすると乱数が得られる小さな乱数スピナーがあります。私は2つの問題を抱えています。1 つ目は、メイン アクティビティが読み込まれるときに、乱数スピナーをクリックせずに画面に乱数を表示することです。メインアクティビティで開かないようにするには、何を false に設定すればよいかわかりません。2 つ目の問題は、スピナーからオプションを選択しても、それがクリアされないことです。つまり、オプション D6 または D20 をクリックすると、最初に他のオプションを選択するまで、同じオプションを再度クリックすることはできません。基本的に、乱数が選択された後、選択はメモリから消去されません。乱数コードはこちら

public void onItemSelected(AdapterView<?> parent, View view, int pos,
        long id) {
    Random rand = new Random();
    int roll = 0;
    boolean firstRun = false;
    // An item was selected.
    if (!firstRun)
    {
    if (spinner1.getSelectedItemPosition()==0)
    {
        roll = rand.nextInt(6)+1;
    }
    else
    {
        roll = rand.nextInt(20)+1;
    }
    }
      else
       { firstRun = false;  }

    // Put the result into a string.
    String text = "You rolled a " + roll;
    // Build a dialog box and with the result string and a single button
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setMessage(text).setCancelable(false)
            .setPositiveButton("OK", new 
  DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id)  
  {
                    // do things when the user clicks ok.
                }
            });
    AlertDialog alert = builder.create();

    // Show the dialog box.
    alert.show();
}
4

1 に答える 1