android/view/view$onUnhandledKeyEventListener(onMeasure错误)

8
我在Android Studio 3.1.3中创建新项目时遇到了问题,每次创建项目时,设计布局都会抛出错误信息:“无法加载AppCompat ActionBar,原因未知。”。以下是错误截图:
error screenshot同时还有警告截图:
warning screenshot此外,style.xml文件(当出现错误时)-->
<resources>

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

我通过添加以下代码解决了问题:

style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar"

就像其他帖子中所示。

但当我需要添加一个工具栏时,我遇到了错误:

android/view/view$onUnhandledKeyEventListener

错误截图:
error screenshot

问题是应用程序没有操作栏,即使style.xml中有合适的代码,并且即使通过更改Layout_width、Layout_height并将其约束到约束布局中也无法显示工具栏。

1个回答

16

我找到了答案,但不确定这是最佳答案。但这修复了所有问题。

可能是因为API 28.0.0-alpha3中的一个错误会影响向后兼容性(我还不完全确定)。

build.gradle(模块:app)(修复之前)-->

build.gradle(Module: app)

compileSdkVersion 28

targetSdkVersion 28

implementation 'com.android.support:appcompat-v7:28.0.0-alpha3'

我通过将API版本降至27.1.1并更改compileSdkVersion、targetSdkVersion和implementation来修复错误。

build.gradle(模块:app)(修复后)-->

build.gradle(Module: app)

要解决错误,只需更改以下内容:

compileSdkVersion 27

targetSdkVersion 27

implementation 'com.android.support:appcompat-v7:27.1.1'

然后重新构建Gradle。这将清除与ActionBar和工具栏有关的所有错误和警告。

没有错误和正常工作的工具栏


3
对于那些想要使用最新的Material组件(例如MaterialCardView)的人来说,这并不是一个选择。不幸的是,升级到稳定的Support 28.0.0版本并不能解决上述问题。 - Tomasz Dzieniak
就此而言,在Android Studio 3.3 Canary 11中,渲染问题已经消失了。不过我无法评论其稳定性。 - BenjaminButton
稳定的Android Studio 3.2已经发布,支持库版本28.0.0可以正常渲染布局。我也升级了buildToolsVersion '28.0.3',但这并不是必需的。 - BenjaminButton

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接