在Android Studio 3.0中使用Coordinator layout时,布局预览显示空白屏幕。

13

当我打开布局预览页面时,只显示了一个灰色的Android屏幕(android...CoordinatorLayout),屏幕上没有任何东西显示。我该如何解决这个问题,我想在布局预览屏幕上展示布局设计。

<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context=".activity.AddDietActivity">

<android.support.design.widget.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:gravity="center"
        app:popupTheme="@style/AppTheme.PopupOverlay"
        android:background="@drawable/menubar">

        <TextView
            android:id="@+id/tv_title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:textStyle="bold"
            android:textSize="18dp"/>

        <TextView
            android:id="@+id/submitBtn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_gravity="end"
            android:layout_margin="10dp"
            android:onClick="clickToAddDiet"
            android:text="Save"
            android:textSize="18sp"
            android:textColor="#fff"/>
    </android.support.v7.widget.Toolbar>

</android.support.design.widget.AppBarLayout>

<include layout="@layout/content_add_diet" />

</android.support.design.widget.CoordinatorLayout>
12个回答

19

我遇到了同样的问题,在布局编辑器中点击信息图标后,我找到了原因:

在此输入图片描述

将编辑器中的主题改为 AppCompat 或者其他继承它的主题。这对我有用。


以前从未点击过信息图标,感觉像是一个全新的世界。 - JamTheMan

1

在我的情况下,这是在更新某些依赖版本后发生的。我需要做的唯一事情就是重新编译我的项目。在Android Studio的文件菜单中,选择“构建”>>“构建项目”或按Ctrl+F9。之后,预览就恢复正常了。


1

我原本在使用 Android SDK 28,使用了 implementation 'com.android.support:design:28.+',但是遇到了同样的问题。然后我尝试了很多帖子上的解决方案,但都没有起作用。我甚至手动添加了样式项,但这很繁琐,所以我降级到了 implementation 'com.android.support:design:27.+',然后问题得到了解决。


0
请确保在您的应用程序的build.gradle文件中,您有正确的实现声明。它已经从旧的"compile"语句更改为:

Android Studio 3之前

 compile 'com.android.support:design:25.3.1'

在Android Studio 3中

implementation 'com.android.support:design:26.1.0'

0
您可以尝试更改Styles.xml的内容 - "Theme.AppCompat.Light.DarkActionBar""Base.Theme.AppCompat.Light.DarkActionBar" 并重新构建应用程序。

如果这不起作用,请尝试更改主题

更改主题图像 将主题更改为浅色版本。 浅色主题选择图像


0

将Android Studio 3.1.1升级到3.2.1可以解决与Coordinate Layout预览页面相关的所有问题。在旧版本中,页面会显示灰色的Android屏幕并且除了CoordinatorLayout外没有任何显示内容。

Android 3.2.1 下载链接


0

在设计视图中将应用程序主题更改为“App compat:dialog”。这对我有用。


0
@MateusGondim在他的回答中提到的信息窗口还建议您清理并重新构建项目。我这样做了,错误消失了,布局预览又开始工作了。

0

你可以做的事情

  1. 刷新布局
  2. 同步项目
  3. 清理项目
  4. 重建项目
  5. 添加依赖实现'com.google.android.material:material:1.4.0'
  6. 构建项目(推荐,大多数布局问题都可以通过这样做来解决)
  7. 重构 -> 迁移到Androidx。

这并没有回答问题。一旦您拥有足够的声望,您将能够评论任何帖子;相反,提供不需要询问者澄清的答案。- 来自审核 - cse

0

你没有用</android.support.design.widget.CoordinatorLayout>来关闭你的CoordinatorLayout。此外,你需要使用一个ConstraintLayout来使你包含的布局出现在你的AppBarLayout下面。


我认为他发布了布局演示。 - A.s.ALI

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