eve*_*nro 10 android android-softkeyboard android-fragments
我有一个应用程序,可以很好地处理基于导航栏交互切换的多个片段.其中一个屏幕有多个文本字段,我决定订购这些字段,因此键盘"next"会自动将用户带到下一个可填写的文本字段nextFocusDown.最后一个导致导致RadioGroup显示"完成"按钮.
该领域是这样的(他们是内LinearLayout是内NestedScrollView内的另一个LinearLayout即根目录下FrameLayout):
<EditText
android:id="@+id/firstName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textPersonName|textCapWords"
android:nextFocusDown="@id/lastName"
android:text="" />
<EditText
android:id="@+id/lastName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textPersonName|textCapWords"
android:nextFocusDown="@id/email"
android:text="" />
<EditText
android:id="@+id/email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textEmailAddress"
android:nextFocusDown="@id/localId"
android:text="" />
Run Code Online (Sandbox Code Playgroud)
还有更多字段,其中一些包括文本提示等.
如果我运行应用程序,选择一个字段,然后点击"下一步"按钮,直到键盘自行消失 - 一切正常.当我选择一个字段时出现问题,键盘出现,然后我点击了导致键盘消失的安卓向下按钮.执行此操作后,此屏幕中的所有内容看起来都很好,一切正常,直到我切换片段,然后应用程序崩溃,我在日志中看到这些错误:
04-10 00:12:24.763 redacted E/AndroidRuntime: FATAL EXCEPTION: main
Process: redacted, PID: 24660
java.lang.NullPointerException: Attempt to invoke interface method 'void android.view.inputmethod.InputConnection.closeConnection()' on a null object reference
at android.view.inputmethod.InputConnectionWrapper.closeConnection(InputConnectionWrapper.java:270)
at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:541)
at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:85)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6494)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
04-10 00:12:24.769 redacted E/UncaughtException: java.lang.NullPointerException: Attempt to invoke interface method 'void android.view.inputmethod.InputConnection.closeConnection()' on a null object reference
at android.view.inputmethod.InputConnectionWrapper.closeConnection(InputConnectionWrapper.java:270)
at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:541)
at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:85)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6494)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
Run Code Online (Sandbox Code Playgroud)
知道发生了什么以及如何避免它?
PS
因为我很确定它与nextFocusOn和键盘有关,所以我没有发布更多(这是一个非常大的文件),如果你认为还需要任何东西,请告诉我,我会上传相关内容部分.
eve*_*nro 11
解决这个问题的方法是:
我不知道为什么它为我解决了这个问题(我主要为iOS编写应用程序,而且我从未遇到过需要重启设备的错误......).奇怪的是,我重新启动了设备,Android Studio,并多次清理项目 - 因此看起来整个过程必须按顺序排列......
小智 8
我今天也遇到了这个错误.我不确定它是否会对你的情况有所帮助,但它对我有帮助.基于本主题中的答案:Android Studio 3.1 EditText StackOverflowError.
在我的情况下,仅仅禁用高级分析就足够了
运行 - >编辑配置 - >分析选项卡
在我的情况下,在将导体控制器从具有输入的控制器更改为另一个导致控 错误完全一样.和今天更新AS到3.1.1的相关链接一样.
| 归档时间: |
|
| 查看次数: |
2094 次 |
| 最近记录: |