gpt4 book ai didi

java - 生成随机数停止应用程序

转载 作者:行者123 更新时间:2023-12-02 06:00:05 29 4
gpt4 key购买 nike

我试图在单击Button时生成一个随机数,并在EditText中打印该值

我用这段代码做到了

public class Board_Play1 extends Activity {

int d;
Random random = new Random();
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.board_play1);

Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
d=random.nextInt(6)+1;
EditText diceno = (EditText) findViewById(R.id.editText1);
diceno.setText(d);

}
});

}

但是在单击按钮后运行应用程序时,它会弹出一个错误,指出不幸的是,您的应用程序已停止。无法理解为什么会这样。谁能解释一下错误是什么?

最佳答案

您需要调用接受 CharSequence 作为参数的 setText 方法。

当前您正在调用 setText(int resid) ,它将尝试查找具有指定 id 的正确资源,因此我猜您的程序会抛出 ResourceNotFoundException

这样做:

diceno.setText(String.valueOf(d));

这会将您的 int 转换为 String

同时将 EditText diceno = (EditText) findViewById(R.id.editText1); 移至 onClick 方法之前。无需在每个 onClick 事件中检索它,只需一次就足够了。

最后,将来不要忘记发布带有您的问题的堆栈跟踪。

关于java - 生成随机数停止应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22749362/

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