1

我对Android有点陌生,现在我正在开发一个非常简单的游戏,逻辑描述如下:用户在按下“Ready”后看到一个10位数的值Button。5 秒后,该值变为 ,
* * * * * * *用户必须在下面的文本字段(键入“数字”)中输入它。在该文本字段下有 2 个Button:“检查”和“给出提示”。检查Button将用户值与原始值进行比较,并TextView根据结果(“正确”/“不正确”)更改 a。提示Button应在原始值中显示 3 个随机数字。

我对那个小应用程序有一些疑问:

  1. 我不确定我必须使用哪种类型向用户显示原始值: a TextView、文本字段或其他内容?
  2. 在用户按下提示的情况下,如何强制应用显示原始值的 3 个随机数字Button

任何帮助表示赞赏。

4

1 回答 1

0

1)。我不确定必须使用哪种类型来向用户显示原始值:TextView、文本字段还是其他?

对于这个 TextView 就可以了。

2)。在用户按下提示按钮的情况下,如何强制应用显示原始值的 3 个随机数字?

希望您使用int存储 10 位值(原始值)

制作一个大小为 10 的 int 数组

int[] digits = new int[10];

使用 for 循环将所有 10 位数字与 10 位数字分开。

int number = 1234567891
for(int i = 0; i < 10; i++){
  digits[i] = number % 2;
  number = number / 10;
}

这将为您提供 10 个 int 值的数组

创建 java.util.Random 类的对象并从 0-9 中获取随机值

Random r = new Random();
int pos1 = r.nextInt(9);

nextInt(int n)返回半开范围 [0, n) 中均匀分布的伪随机 int。

这些值是您将从数组中检索数字的位置所以这将为您提供 0 到 9 之间的随机位置

只需确保每次从 Random 生成随机值时,它不应等于先前生成的值,例如,如果您为第二个数字生成随机位置,则应检查它是否应等于第一个

您可以在 TextView 中显示所有 3 位数字(从 3 个随机生成的位置获取)作为提示 希望这能解决您的问题

编辑了 Textview 的 Part Set 可见性到 View.GONE 类似于这个私有 TextView tv 的东西;

tv = (TextView)findViewById(R.id.textView01);
tv.setVisibility(View.GONE);

Button btn = (Button)findViewById(R.id.button01);
btn.setOnClickListener(new OnClickListener(){
   public void onClick(View view){
      tv.setVisibility(View.VISIBLE);
   }
});
于 2012-05-17T14:13:52.317 回答