Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 按下按钮时显示数组中的随机文本_Java_Android_Xml - Fatal编程技术网

Java 按下按钮时显示数组中的随机文本

Java 按下按钮时显示数组中的随机文本,java,android,xml,Java,Android,Xml,从字符串数组(下面的代码)中,当按下按钮(下面的代码)时,我想在文本视图中随机显示其中一个字符串(下面的代码)。我是否必须使用onClick“sendMessage”然后使用随机字符串生成器?在Java中如何实现这一点?非常感谢 <resources> <string-array name="colorArray"> <item>Green</item> <item>Red</item>

从字符串数组(下面的代码)中,当按下按钮(下面的代码)时,我想在文本视图中随机显示其中一个字符串(下面的代码)。我是否必须使用onClick“sendMessage”然后使用随机字符串生成器?在Java中如何实现这一点?非常感谢

<resources>
    <string-array name="colorArray">
        <item>Green</item>
        <item>Red</item>
        <item>Purple</item>
        <item>Blue</item>
        <item>Orange</item>
        <item>Brown</item>
        <item>Yellow</item>
        <item>White</item>
        <item>Pink</item>
</resources>

<TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="NOT SURE WHAT TO PUT HERE"
        android:textSize="76sp"
        android:gravity="center"
        android:textAllCaps="true"/>

<Button
        android:id="@+id/green_button"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:background="@drawable/green_button"/>

绿色
红色
紫色
蓝色
橙色
棕色的
黄色的
白色
粉红色

使用函数
random
生成随机数,该函数的值不应超过(数组长度-1),使用该值从字符串数组中获取值,并将其显示在文本视图中

String[] colors = getResources().getStringArray(R.array.colorArray);

Random random = new Random();

textView.setText(colors[random.nextInt(colors.length()-1)]);
希望这会有所帮助


注意:此代码段只是一个示例。请在其中传递变量。

您需要一个用于数组索引的随机数生成器(请参阅)

按钮上单击Listener
。然后,使用
Random
,生成一个随机整数,我们称之为
randomNumber

从那里开始,过程很简单

  • 检查用户是否通过
    onClickListener
  • 如果单击按钮,则通过
    random
    类生成一个随机数,
    randomNumber
  • 通过将
    EditText
    的文本设置为
    colorArray[randomNumber]

  • 检查此链接我尝试了此代码,但出现了无法解析符号的错误
    random
    textview
    nextInt
    。这只是代码片段示例,现在您必须将textview变量传递给它。random和nextint应该可以工作,为什么它会给出无法解决的错误?我导入了import java.util.random;但我仍然不清楚我必须在哪里导入textview变量。谢谢