无效的int:“”?

时间:2012-10-07 20:24:55

标签: java android

我正在尝试保存我的应用状态,我认为这一切看起来都不错,但我一直收到此错误:

10-07 15:18:35.386: E/AndroidRuntime(1818): Caused by: java.lang.NumberFormatException: Invalid int: ""

它会不断突出显示我的代码:

textView(something) = Integer.parseInt(textView(something).getText().toString());

2 个答案:

答案 0 :(得分:5)

您的一个TextView是空白的。空字符串无法转换为int。你能把它缩小到导致问题的那一个(或其中一个)吗?

修改

这很可能是因为您正在使用Activity的{​​{1}}方法执行所有操作,并且系统没有机会使用其文本初始化onCreate() s。如此长的TextView方法向我表明了设计问题。我强烈建议将您的代码分成一个或多个类。例如,您可能想要创建一个onCreate()类来表示游戏中用户的角色。这可以存储与角色相关的所有统计数据。此外,Hero类可以代表怪物的统计数据。

答案 1 :(得分:1)

将其放在Integer.parseInt之前。然后检查LogCat以查找text="", len=0

String str = textView(something).getText().toString();
Log.i("app", "text=\"" + str + "\", len=" + str.length);
textView(something) = Integer.parseInt(textView(something).getText().toString());