渲染过程中的 android studio sdk 版本 22 异常:action_bar

2022-08-31 20:23:52

当我在Android Studio上创建一个新项目时,它不会带来任何问题。但是,从设计来看,它向我展示了这一点:activity_main.xml

呈现问题 渲染过程中引发的异常:action_bar。

当我将sdk级别22更改为21从设计页面Android工作室显示任何内容时

我该如何解决这个问题?这不是重要的问题,但我想知道如何解决这个问题。


答案 1

是的,只需要在下拉列表中调整Android级别。API 级别 22 中的设计选项卡预览现已断开。我查看了错误的堆栈跟踪,它与需要 alpha 通道有关。我相信谷歌会在周一修复它。:)enter image description here


答案 2

ActionBar 已被弃用,取而代之的是在 API 21 中添加的 Toolbar。但是,Android Studio模板的基本主题似乎仍然使用基于ActionBar的主题。

解决方案不是降级构建工具版本,而是更改应用的基本主题。如果您降级构建工具,您将错过对 Android 5.1 及更高版本中添加的最新功能的支持。

您的基本主题列在 AndroidManifest 中.xml application/android:theme 下。

转到 res/values/styles.xml并将父属性更改为不依赖于已弃用的 ActionBar 的其他基本主题。万一你的应用是 API 21+,你可以使用 Theme.Material。否则,您将需要使用 Theme.AppCompat.NoActionBar 或定义自己的基本主题。

下面是一个样式.xml示例:

<style name="AppTheme.Base" parent="Theme.AppCompat">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="android:windowNoTitle">true</item>
    <item name="windowActionBar">false</item>
</style>

如果使用此选项,请确保在 XML 布局中放置一个工具栏元素,该元素位于您希望操作栏出现的位置。您需要使用子 XML 标记自定义工具栏。我建议使用标签。正如它在工具栏文档中所说,Google的新设计原则要求改变视觉风格:<include>

在现代 Android UI 中,开发人员应该更多地依靠工具栏在视觉上截然不同的配色方案,而不是他们的应用程序图标。不鼓励在 API 21 及更高版本上使用应用程序图标加标题作为标准布局。

android.support.v7.widget.Toolbar 位于 API 21 之前的设备支持库中。

编辑:正如第一条评论所指出的那样,谷歌有一个博客,解释如何使用新的工具栏。http://android-developers.blogspot.kr/2014/10/appcompat-v21-material-design-for-pre.html


推荐