编辑文本显示异常Invalid Int"" [英] Edit Text shows exception Invalid Int ""

查看:116
本文介绍了编辑文本显示异常Invalid Int""的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经尝试将EditText默认值设置为零,但是当编辑和删除为时(空白区域,编辑文本字段中没有更多的字词_

I have already tried setting the EditText default value to be zero but when it comes to editing and erase as "" ( empty space , no more wordings _ in the Edit Text field

当按下提交按钮时显示异常无效的Int。你能告诉我如何解决这个例外吗?

It shows exception Invalid Int "" when pressing submitt button . Could you please tell me how to resolve this exception ?

以下是我的代码

    for (int j = 0; j < selectedChannels; j++) {

        lconper = (Spinner) findViewById (j+120);
        int monthlyFeeforChannel = 0;       
        contractPeriodSelected.add((String) lconper.getSelectedItem());

        String monthlyTest = txtMonthlyFee[j].getText().toString().trim();
        String freeMonths = txtFreePeriod[j].getText().toString().trim();

        if(monthlyTest.trim()==null || monthlyTest.trim()==""){
            new AlertDialog.Builder(this)
            .setTitle("Warning")
            .setMessage(
                    "You must fill in Monthly Fees for subscribed channels!")
                    .setNeutralButton("OK",
                            new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog,
                                int id) {
                            // if this button is clicked, close
                            // current activity
                            dialog.cancel();
                        }});
            break;
        }
        else
        {
            Log.d("Month" , monthlyTest);
            Log.d("freeMonths" , freeMonths);                               
            monthlyFeeforChannel =  Integer.parseInt(monthlyTest);                                      
            monthlyFee.add(monthlyFeeforChannel);
            FreePeriod.add(freeMonths);     
        }   
    }

Logcat

    06-20 13:52:03.711: E/AndroidRuntime(17713): FATAL EXCEPTION: main
06-20 13:52:03.711: E/AndroidRuntime(17713): java.lang.IllegalStateException: Could not execute method of the activity
06-20 13:52:03.711: E/AndroidRuntime(17713):    at android.view.View$1.onClick(View.java:3130)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at android.view.View.performClick(View.java:3652)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at android.view.View$PerformClick.run(View.java:14354)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at android.os.Handler.handleCallback(Handler.java:605)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at android.os.Handler.dispatchMessage(Handler.java:92)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at android.os.Looper.loop(Looper.java:137)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at android.app.ActivityThread.main(ActivityThread.java:4519)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at java.lang.reflect.Method.invokeNative(Native Method)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at java.lang.reflect.Method.invoke(Method.java:511)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:794)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:561)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at dalvik.system.NativeStart.main(Native Method)
06-20 13:52:03.711: E/AndroidRuntime(17713): Caused by: java.lang.reflect.InvocationTargetException
06-20 13:52:03.711: E/AndroidRuntime(17713):    at java.lang.reflect.Method.invokeNative(Native Method)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at java.lang.reflect.Method.invoke(Method.java:511)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at android.view.View$1.onClick(View.java:3125)
06-20 13:52:03.711: E/AndroidRuntime(17713):    ... 11 more
06-20 13:52:03.711: E/AndroidRuntime(17713): Caused by: java.lang.NumberFormatException: Invalid int: ""
06-20 13:52:03.711: E/AndroidRuntime(17713):    at java.lang.Integer.invalidInt(Integer.java:138)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at java.lang.Integer.parseInt(Integer.java:359)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at java.lang.Integer.parseInt(Integer.java:332)
06-20 13:52:03.711: E/AndroidRuntime(17713):    at com.test.Eystem1.Confirm.submitOrder(Confirm.java:415)
06-20 13:52:03.711: E/AndroidRuntime(17713):    ... 14 more


推荐答案

在您使用的aboue代码中,如果将String转换为Integer,则不会将(空字符串)转换为Integer

In the aboue code you have used like converting String to Integer in that case you will not convert ""(Empty String) to Integer

Integer.parseInt(monthlyTest);  // Here monthyTest value is ""

请确保字符串在转换时不为空。

Please make sure the string is not empty befor conversion.

检查字符串的长度是否应该大于0.

Check the length of the String is should be greater than 0.

if(monthlyTest.length()>0)

谢谢......

这篇关于编辑文本显示异常Invalid Int&quot;&quot;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆