С момента обновления моего 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$3.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, у которого уже есть текст. Я предполагаю, что это авто-правильное всплывающее окно или что-то подобное.
В моем приложении используются библиотеки поддержки 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>
Но это не нужно, поскольку я наследую ThemeAppCompat.
Я сделал небольшое приложение, которое демонстрирует проблему: