java - Android Studio - 按钮重复辅助

标签 java android

我对下一步需要做什么感到有点困惑。我正在尝试创建一个应用程序,当按下按钮时,它会生成报价。最初,当我点击按钮时,会出现一个单词,但是当我尝试再次点击该按钮时,它不会打印出另一个单词。

package com.example.under.funfacts;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
import java.util.Scanner;
import java.util.*;

import static com.example.under.funfacts.R.id.PressMe;
import static com.example.under.funfacts.R.id.quote;
import static com.example.under.funfacts.R.id.text2;

public class MainActivity extends AppCompatActivity {
TextView txt;
Button btn;

String[] quotes = new String[] {"texas", "jersey", "Pennsylvania", "Tennessee", "Mississippi"};
String randomQuote = quotes[(int) (Math.random()*quotes.length)];


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    txt = (TextView) findViewById(R.id.quote);
    Button btn = (Button) findViewById(R.id.PressMe);
    btn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            txt.setText(randomQuote);


        }
    });
}
}

我知道我可以列出报价单,但不幸的是我不知道如何实现。 希望我错过了一个小细节,因为我想多次按下按钮,这样我就可以看到多个单词或引号。

最佳答案

您的randomQuote变量仅设置一次。您应该将其声明移至 onClick() 方法内部。这样,每次单击按钮时都会进行设置:

btn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        String randomQuote = quotes[(int) (Math.random()*quotes.length)];
        txt.setText(randomQuote);
    }
});

关于java - Android Studio - 按钮重复辅助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46458661/

相关文章:

java - wiquery-plugins 与 wicket 1.3.6 和 Maven 存储库集成

android - Edittext 输入类型常量值不匹配

java - 基于 Java 8 中的属性从对象列表中删除重复项

java - 如何在一个 Activity 中切换两个 fragment ?

java - 如何知道 Android Java 中网页的最后修改日期和时间

android - 我怎样才能制作一个带有十进制和签名的文本编辑字段?

android - 重新连接互联网后向服务器发送 http post 请求

java - 调用 Bitmap.compress 不返回 - 并且没有异常

java - 为什么这个 hashCode() 方法被认为很差?

java - 如何在spring中使用HandlerInterceptor读取请求参数值?