我在我的应用程序中使用Random()函数。当我点击按钮时,我必须显示0-8范围内的随机数作为我的按钮文本。但是当它运行时,如果我单击此按钮程序将在下面崩溃。我的代码片段。
Random scorenumber=new Random();
OnClickListener clickball=new OnClickListener() {
@Override
public void onClick(View v) {
score=scorenumber.nextInt(8);
id=v.getId();
if(id==R.id.ball2)
{
ball2.setText(score);
}
else if(id==R.id.ball3)
{
ball3.setText(score);
}
}
答案 0 :(得分:0)
首先,我倾向于在XML文档中使用onClick属性。这并不意味着你必须,但我发现它使我的代码更整洁。
android:onClick="button"
所以我的Java看起来像这样开始我的方法。
public void button(View v){
//Stuff goes here.
}
我这样说只是因为我觉得你的按钮坏了。尝试让它做其他事情。喜欢从1开始计数。如果失败那么你的按钮就不好了。如果它工作,那么你的随机数代码有问题。我似乎无法弄清楚你想要做什么。
关于那个。你在哪里得到ball3和ball2?什么时候得分打他们?
答案 1 :(得分:0)
您在此处致电void setText (int resid)
。当Android找不到与score
变量的内容具有相同ID的字符串资源时,这将崩溃。使用setText(Integer.toString(score));
。