簡體   English   中英

如何使按鈕從edittext中獲取文本並將其與隨機數進行比較?

[英]How do i make a button take text from an edittext and compare it to a random number?

我試圖讓我的按鈕將編輯文本中的數字與我生成的隨機數進行比較,如果它們相同,則進行敬酒。 該代碼可以運行,但是無論我在編輯文本中將數字設置為什么,都永遠不會等於隨機數。 這是我的代碼

    Button submit;
    EditText etcode;
    Random random = new Random();
    String generatedPassword = String.format(String.valueOf(random.nextInt(1)));
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_detail);


        mFlower = findViewById(R.id.ivImage);
        mDescription = findViewById(R.id.tvDescription);
        submit = (Button) findViewById(R.id.btn_submit);
        etcode = findViewById(R.id.et_code);
        Bundle mBundle = getIntent().getExtras();

        submit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (etcode.getText().toString().equals(generatedPassword)){

                    Toast.makeText(getApplicationContext(), "CONGRATS", Toast.LENGTH_SHORT).show();

                }
                else {
                    Toast.makeText(getApplicationContext(), "TRY AGAIN", Toast.LENGTH_SHORT).show();
                }
            }
        });

更改此行

String generatedPassword = String.format(String.valueOf(random.nextInt(1)));

因為generatePassword始終為0。 這就是為什么它可以為零的原因。

random.nextInt(1);

上面的代碼將始終生成小於1的數字。您應該將其更改為任何其他數字。 假設您編寫random.nextInt(5); 然后上面的行將生成介於0到5之間的數字,表示它可以是0、1、2、3、4。

檢查此鏈接https://www.geeksforgeeks.org/java-util-random-nextint-java/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM