如何解决AppCompatSpinner 仅在少数设备上抛出 InflateException
两天我在单击自定义 AppCompatSpinner 时遇到了 IllegalArgument 异常(鉴于下面的崩溃日志)。 此问题并非在所有设备中都会发生,只有少数设备(三星、一加)受到影响。 下面列出了所有 api 版本的应用主题
parent="Theme.AppCompat.NoActionBar"
v23 主题:
parent="Theme.AppCompat.Light.NoActionBar"
v21 主题:
parent="Theme.MaterialComponents.DayNight.NoActionBar"
我的崩溃日志:
E/AndroidRuntime: FATAL EXCEPTION: main
android.view.InflateException: Binary XML file line #95: Binary XML file line #37: Error inflating class Button
Caused by: android.view.InflateException: Binary XML file line #37: Error inflating class Button
Caused by: java.lang.IllegalArgumentException: The style on this component requires your app theme to be Theme.MaterialComponents (or a descendant).
请提供一些见解以解决此问题。在 stackoverflow 和其他站点中找到了一些解决方案,但没有任何帮助我解决问题
解决方法
如果你想使用 Material UI 元素,那么
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
应更改为 <style name="AppTheme" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
。
正如错误本身所说,您的应用主题必须是 MaterialTheme
的子项或相同的任何子项。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。