gpt4 book ai didi

android - 显示随机字符串

转载 作者:太空宇宙 更新时间:2023-11-03 11:28:36 25 4
gpt4 key购买 nike

我试图在每次按下 strings.xml 中定义的一组字符串中的按钮时显示一个随机字符串。这是字符串 ID 的示例

<string name="q0">
<string name="q1">
<string name="q2">
<string name="q3">
<string name="q4">

获取随机字符串的java代码。

private static final Random rgenerator = null;

int RandomQ = R.string.q0 (rgenerator.nextInt(5) + 1);
String q = getString(RandomQ);

如果我尝试使用此 Java 代码,我会在 R.string.q0 中的“q0”处收到错误,即 The method q0(int) is undefined for the type R.string 如果我尝试使用快速修复并创建一个方法,它有效。但它不会让我保存或运行应用程序,因为它取代了我的创建方法并显示此消息

R.java was modified manually! Reverting to generated version!

感谢阅读。

最佳答案

您可以在数组中定义字符串,这将有助于简化此任务 (res/values/array.xml):

<string-array name="myArray"> 
<item>string 1</item>
<item>string 2</item>
<item>string 3</item>
<item>string 4</item>
<item>string 5</item>
</string-array>

然后您可以创建一个数组来保存字符串并从数组中选择一个随机字符串来使用:

private String[] myString; 

myString = res.getStringArray(R.array.myArray);

String q = myString[rgenerator.nextInt(myString.length)];

示例代码:

package com.test.test200;

import java.util.Random;

import android.app.Activity;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.TextView;

public class Test extends Activity {
/** Called when the activity is first created. */

private String[] myString;
private static final Random rgenerator = new Random();

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);


Resources res = getResources();

myString = res.getStringArray(R.array.myArray);

String q = myString[rgenerator.nextInt(myString.length)];

TextView tv = (TextView) findViewById(R.id.text1);
tv.setText(q);
}
}

关于android - 显示随机字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2717614/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com