0

我在这里有主要的 java 文件:http: //pastebin.com/S76bgi7a

这里的 XML 文件:http: //pastebin.com/8CJj0S54

还有一个我的字符串的pastebin ID:2sk1emgB

简短版本:我运行我的程序,它崩溃了,我不知道为什么。我查看 logcat,它给了我

04-27 02:58:47.927: E/AndroidRuntime(394): java.lang.RuntimeException: 无法启动活动 ComponentInfo{walmart.namespace/walmart.namespace.WalmartActivity}: java.lang.NumberFormatException: 无法解析'请以整数形式输入部门名称。

除了 case/ifthen 语句之外,我不知道它在我的文本中试图将字符串转换为数字的位置。如果我的代码很笨,我很抱歉,我是新手。

编辑:同样的问题,只是现在我得到了

04-27 03:19:08.858: E/AndroidRuntime(448): java.lang.RuntimeException: 无法启动活动 ComponentInfo{walmart.namespace/walmart.namespace.WalmartActivity}: java.lang.NumberFormatException: 无法解析''作为整数。

我猜这来自我的 OnClickListener,它应该在单击时删除字符串。

4

2 回答 2

0

这是因为您在中设置了文本:

<EditText
        android:id="@+id/etName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="text"
            android:text="@string/dptname"  />

如果您想提示用户执行“在此处输入 ab yxz”之类的操作,您可能需要"android:hint"改用。

其次,对于这些情况,请使用“try .... catch(NumberFormatException)”,相信我,它会在调试时为您节省大量精力。

于 2012-04-27T03:18:56.643 回答
0

错误似乎很明显:

无法将“请输入部门名称”解析为整数。

该字符串在您的资源中为dptnum. 您可以在 XML 中使用它,如下所示:

<EditText
    android:id="@+id/etNum"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:inputType="int"
    android:text="@string/dptnum" />

正如错误所说,它需要一个整数(你设置inputTypeas int)并且你给它一个字符串。也许你想要这个:

<EditText
    android:id="@+id/etNum"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:inputType="int"
    android:hint="@string/dptnum" />
于 2012-04-27T03:14:18.080 回答