Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 尝试在空对象引用finishComposingText()上调用接口方法_Java_Android_Testing_Robotium - Fatal编程技术网

Java 尝试在空对象引用finishComposingText()上调用接口方法

Java 尝试在空对象引用finishComposingText()上调用接口方法,java,android,testing,robotium,Java,Android,Testing,Robotium,我在Nexus6上运行robotium,出现以下错误 java.lang.NullPointerException: Attempt to invoke interface method 'boolean android.view.inputmethod.InputConnection.finishComposingText()' on a null object reference at android.view.inputmethod.InputConnectionW

我在Nexus6上运行robotium,出现以下错误

 java.lang.NullPointerException: Attempt to invoke interface method      'boolean android.view.inputmethod.InputConnection.finishComposingText()' on      a null object reference
 at android.view.inputmethod.InputConnectionWrapper.finishComposingText(InputConnectionWrapper.java:78)
 at android.view.inputmethod.InputMethodManager.reportFinishInputConnection(InputMethodManager.java:859)
 at android.view.ViewRootImpl$ViewRootHandler.handleMessage(ViewRootImpl.java:3253)
 at android.os.Handler.dispatchMessage(Handler.java:102)
 at android.os.Looper.loop(Looper.java:135)
 at android.app.ActivityThread.main(ActivityThread.java:5221)
 at java.lang.reflect.Method.invoke(Native Method)
 at java.lang.reflect.Method.invoke(Method.java:372)
 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
这条线是:

     solo.enterText((android.widget.EditText) solo.getView("amount"), "11.11");  

我已验证该字段是否存在,但不确定是什么原因导致该问题。任何帮助都将不胜感激

因为您确认返回的实例是EditText,所以看起来您得到了错误的EditText

android.widget.EditText editText= (android.widget.EditText)solo.getView("amount");
// validate here that you got right text by any method, for example getText()
solo.enterText(editText, "11.11"); 
如果这个不起作用,您可以不使用solo直接访问:

editText.setText("11.11");

这发生在我身上是因为启用了高级分析选项。 要禁用高级分析,请执行以下步骤:

1.选择运行>编辑配置。 2.在左窗格中选择您的应用程序模块。
3.单击Profiling选项卡,然后取消选中Enable advanced Profiling。

好吧,我首先将
EditText
部分提取为局部变量,这样您就可以确保在将其传递给方法之前已经获得了它(因此它不是
null
值)…solo.getView正在返回EditTextany解决方案的实例?我遇到了同样的问题……同样的问题,有什么解决办法吗?我会接受的。我几年前就有这个问题,不记得我做了什么来解决它。谢谢你的回答不是每个英雄都穿斗篷