【问题标题】:When I try to increment score value to set it in a TextView my app crashes当我尝试增加得分值以在 TextView 中设置它时,我的应用程序崩溃了
【发布时间】:2025-11-24 02:40:01
【问题描述】:

我想设置score.setText(points)scoreTextView

在我的游戏中,if用户猜对了单词,我想得到word.length,然后取.length,添加到int points,发布score然后生成另一个单词。

我怎样才能以一种非常简单的方式做到这一点?

这是崩溃的代码

if (word.length() > 10) {
    points + 10;
    score.setText(points);
}

如果这是重复的,请将我链接到帖子。

【问题讨论】:

  • 什么情况下会崩溃?能发一下logcat吗?
  • 你在做什么的琐事与你的问题完全无关。没关系,但至少标题应该是描述性的。
  • @Mike Milla 我已经回答并更改了您的问题的标题,因为与您的问题不符。

标签: java android int


【解决方案1】:

setText 接收一个字符序列, 试试这个

if (word.length() > 10) {
    points +=10;
    score.setText(points+"");
}

【讨论】:

  • Integer.toString(points),没有..?这就是你通常的做法
  • "" + points 更简洁明了。关键是如果它是int,那么Android 认为它是一个资源ID。
  • @Droidman 这也可以,但是有多种方法可以将int 转换为String。答案和你所说的只是两个例子。
  • @Droidman 没有必要写 'Integer.toString(points)',就像 Zhuinden 和 Jashaszun 所说的那样,是一种更简洁、更简单的形式
  • 谢谢你,这正是我所需要的!
【解决方案2】:

您实际上并没有增加积分 - 您需要按照 Silverstorm 所说的进行 points += 10

【讨论】:

    最近更新 更多