我使用的是 Ubuntu 14.04,我开始深入研究应用程序开发,并按照一些在线教程操作,但遇到了这个渲染问题。每当我选择除 AppTheme.NoActionBar 之外的任何主题时,都会出现以下错误。
无法实例化以下类: - android.support.design.widget.CoordinatorLayout(开放类、显示异常、清除缓存) - android.support.design.widget.AppBarLayout(开放类、显示异常、清除缓存) 提示:在自定义视图中使用 View.isInEditMode() 跳过代码或在 IDE 异常详细信息中显示示例数据
java.lang.IllegalArgumentException:您需要将 Theme.AppCompat 主题(或后代)与设计库一起使用。在 android.support.design.widget.ThemeUtils.checkAppCompatTheme(ThemeUtils.java:34) 在 android.support.design.widget.CoordinatorLayout。(CoordinatorLayout.java:178) 在 android.support.design.widget.CoordinatorLayout。(CoordinatorLayout.java:172) 在 java.lang.reflect.Constructor.newInstance(Constructor.java:422)
在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:492) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:394) 将堆栈复制到剪贴板
我的理解是我需要使用 Theme.AppCompat。我不确定它是什么或如何做到这一点。正如我所说,我是 Android Studio 的新手,界面对我来说非常陌生。
一位用户提到
您需要做的就是将 android:theme="@style/Theme.AppCompat.Light" 添加到 AndroidManifest.xml 文件中的应用程序标签中。
但我似乎只有一个 MainActivity.java、content_main.xml 和一个 activity_main.xml,这是我需要添加的不同文件吗?
如果有人有任何意见或帮助,我将不胜感激,谢谢,我对 Android Studio 和应用程序开发还很陌生!
答案1
如果您遵循了第一个“入门”教程,您应该会得到一个项目树,它看起来像我所附的“已修改主题”屏幕截图。AndroidManifest.xml 文件位于“manifests”文件夹下,而不是“java”或“res”文件夹下。
我已经做了你提到的更改。
值得同情的是,我现在正在 Windows 上学习同样的知识,在尝试渲染 Google 官方“入门”教程中第一个“Hello World”应用的布局预览时,我立即遇到了这个问题。我不得不说,这么早就遇到如此神秘的事情确实令人沮丧,但据我了解 Android 的朋友说,这很好地介绍了为该平台开发时的挫败感。所以,即使令人难过,这也许是一次合适的入门体验。