2012-03-21 74 views
0

我正在创建一个翻译用户文本的应用程序。不可避免的崩溃

首先,我的代码是:

textToReadEdittext.setText(TranslateManager.translate(text, from, to)); 

现在我需要使用翻译后的文本为其他的事情。所以我使用一个字符串变量:

String translatedText = TranslateManager.translate(text, from, to); 
textToReadEdittext.setText(translatedText); 

但现在我的应用程序崩溃了!有来自Eclipse的日志:

03-21 20:24:58.437: E/AndroidRuntime(14867): FATAL EXCEPTION: main 
03-21 20:24:58.437: E/AndroidRuntime(14867): java.lang.IllegalStateException: Could not execute method of the activity 
03-21 20:24:58.437: E/AndroidRuntime(14867): at android.view.View$1.onClick(View.java:2072) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at android.view.View.performClick(View.java:2408) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at android.view.View$PerformClick.run(View.java:8817) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at android.os.Handler.handleCallback(Handler.java:587) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at android.os.Handler.dispatchMessage(Handler.java:92) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at android.os.Looper.loop(Looper.java:144) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at android.app.ActivityThread.main(ActivityThread.java:4937) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at java.lang.reflect.Method.invokeNative(Native Method) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at java.lang.reflect.Method.invoke(Method.java:521) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at dalvik.system.NativeStart.main(Native Method) 
03-21 20:24:58.437: E/AndroidRuntime(14867): Caused by: java.lang.reflect.InvocationTargetException 
03-21 20:24:58.437: E/AndroidRuntime(14867): at fr.robinkaminski.devAndroid.projetthalie.activities.KeyboardActivity.keyboardTranslateListener(KeyboardActivity.java:44) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at java.lang.reflect.Method.invokeNative(Native Method) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at java.lang.reflect.Method.invoke(Method.java:521) 
03-21 20:24:58.437: E/AndroidRuntime(14867): at android.view.View$1.onClick(View.java:2067) 
03-21 20:24:58.437: E/AndroidRuntime(14867): ... 11 more 
03-21 20:24:58.437: E/AndroidRuntime(14867): Caused by: java.lang.NullPointerException 
03-21 20:24:58.437: E/AndroidRuntime(14867): at fr.robinkaminski.devAndroid.projetthalie.translate.TranslateManager.translate(TranslateMana ger.java:74) 
03-21 20:24:58.437: E/AndroidRuntime(14867): ... 15 more 

我不明白为什么我的活动崩溃了。你可以帮我吗?

Thx,korax。

+0

您从Translatemanager.translate(...)方法中获得NullPointer。所以也许一个参数(text,from,to)为null,这会导致NullPointer或者你的方法有问题 – 207 2012-03-21 19:42:47

回答

0

您的文字或from或to为null。在传递给TranslateManager之前检查它们,如果其中任何一个为null,则将其打印出来。

+0

我会尝试你的想法。但我不明白,这两个代码是一样的吗? – korax 2012-03-21 19:53:50

+0

输入是否也一样? – Sid 2012-03-21 19:57:31

+0

问题来自Bing API。即使通过我的网络浏览器,它也不起作用。 – korax 2012-03-21 20:03:18

相关问题