开发一个简单的记忆游戏

时间:2012-05-17 13:32:25

标签: android logic

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

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

  1. 我不确定我必须使用哪种类型向用户显示原始值:a TextView,文字字段或其他内容?
  2. 如何强制应用在案例中显示原始值的3个随机数字 当用户按下提示Button
  3. 感谢任何帮助。

1 个答案:

答案 0 :(得分: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的可见性设置为View.GONE 这样的事情      私人TextView电视;

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);
   }
});