Android N在TextAppearanceSpan中崩溃

Android N在TextAppearanceSpan中崩溃,第1张

概述自从将Nexus5X升级到AndroidN后,使用EditText时出现以下崩溃:java.lang.UnsupportedOperationException:Failedtoresolveattributeatindex6:TypedValue{t=0x2/d=0x101009ba=1}atandroid.content.res.TypedArray.getColorStateList(TypedArray.java:528)

自从将Nexus 5X升级到Android N后,使用EditText时出现以下崩溃:

   java.lang.UnsupportedOperationException: Failed to resolve attribute at index 6: TypedValue{t=0x2/d=0x101009b a=1}       at androID.content.res.TypedArray.getcolorStateList(TypedArray.java:528)       at androID.text.style.TextAppearanceSpan.<init>(TextAppearanceSpan.java:65)       at androID.text.style.TextAppearanceSpan.<init>(TextAppearanceSpan.java:45)       at androID.Widget.Editor$SuggestionsPopupWindow.setUp(Editor.java:3316)       at androID.Widget.Editor$PinnedPopupWindow.<init>(Editor.java:3016)       at androID.Widget.Editor$SuggestionsPopupWindow.<init>(Editor.java:3309)       at androID.Widget.Editor.replace(Editor.java:356)       at androID.Widget.Editor.run(Editor.java:2129)       at androID.os.Handler.handleCallback(Handler.java:751)       at androID.os.Handler.dispatchMessage(Handler.java:95)       at androID.os.Looper.loop(Looper.java:154)       at androID.app.ActivityThread.main(ActivityThread.java:6077)       at java.lang.reflect.Method.invoke(Native Method)       at com.androID.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)       at com.androID.internal.os.ZygoteInit.main(ZygoteInit.java:755)

单击已包含某些文本的EditText时会发生这种情况.我假设它是自动正确的d出窗口或类似的东西.

我的应用程序使用支持库24.2.0和theme.AppCompat.light.NoActionbar

编辑:如果我添加androID:colorAccent除了我的主题中的colorAccent之外它工作正常:

<style name="Mytheme" parent="theme.AppCompat.light.NoActionbar">    <item name="colorPrimary">@color/mainBrandcolor</item>    <item name="colorPrimaryDark">@color/mainBrandDarkercolor</item>    <item name="colorAccent">@color/mainBrandcolor</item>    <item name="androID:colorAccent">@color/mainBrandcolor</item></style>

但是,当我从theme.AppCompat继承时,不应该这样做.

我做了一个小应用程序,展示了这个问题:

https://github.com/martinbonnin/TextAppearanceSpanCrash/blob/master/app/src/main/java/mbonnin/com/textappearancescancrash/MainActivity.java

解决方法:

在堆栈跟踪中有一个对SuggestionsPopupWindow的引用,这让我想到了禁用EditText的建议.

我使用以下代码作为解决方法:

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {        if ((editText.getinputType() & inputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS) != inputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS) {            editText.setinputType(editText.getinputType() | inputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);        }    }

我们也可以在XML中设置inputType,但上面的代码允许我们将TYPE_TEXT_FLAG_NO_SUGGESTIONS添加到现有的输入类型.

总结

以上是内存溢出为你收集整理的Android N在TextAppearanceSpan中崩溃全部内容,希望文章能够帮你解决Android N在TextAppearanceSpan中崩溃所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1098240.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存