无法解析符号AppCompat

时间:2017-08-10 16:38:19

标签: java android xml appcompatactivity

我正在尝试使用Android Studio为现有的Android移动应用添加启动画面。从我研究的所有内容中,我需要使用AppCompat来完成这项工作,但每次我尝试将其添加到我的styles.xml文件时,Android Studio都会告诉我"无法解析符号" AppCompat" &#34 ;.是否还有其他地方我应该在样式页面之前添加它以便让代码接受它?我的代码如下。

Styles.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <style name="AppTheme" parent="AppCompat">
        <item name="android:colorPrimary"></item>
    </style>

    <style name="SplashTheme" parent="Theme.AppTheme">
        <item name="android:windowBackground">@drawable/background</item>
    </style>

</resources>

我尝试将其添加到我的AndroidManifest.xml文件中无效,我收到错误&#34;未知资源类型&#34;在那个文件中。

当我尝试将主文件更改为: &#34;公共类Snake扩展了AppCompatActivity&#34; 我收到&#34;无法解析符号&#34;再次出错。

我觉得我读过的指南遗漏了一些关键但却非常明显的步骤,大多数熟悉Android的人都会非常清楚。遗憾的是,我对Android仍然很陌生并试图学习。

2 个答案:

答案 0 :(得分:1)

所以将 AppTheme 父级更改为Theme.AppCompat.Light.NoActionBar,以便样式如下:

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:colorPrimary"></item>
</style>

<style name="SplashTheme" parent="Theme.AppTheme">
    <item name="android:windowBackground">@drawable/background</item>
</style>

您有这些错误无法解析符号AppCompat ,因为只有AppCompat类型不是主题,AppCompat是主题资源中的符号。因此,每次需要设置AppCompat主题时,您需要键入Theme.AppCompat以获取主题AppCompat。

答案 1 :(得分:0)

您的Gradle依赖项中应该有compile "com.android.support:appcompat-v7:25.3.1"

您可以使用ActionBar和不使用ActionBar创建主题。如果您在活动中使用工具栏,可能应该使用不带操作栏主题。相应地选择你的主题。

像这样创建样式文件。

使用ActionBar

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="android:colorPrimary"></item>
</style>

<style name="SplashTheme" parent="Theme.AppTheme">
    <item name="android:windowBackground">@drawable/background</item>
</style>

没有ActionBar

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:colorPrimary"></item>
</style>

<style name="SplashTheme" parent="Theme.AppTheme">
    <item name="android:windowBackground">@drawable/background</item>
</style>

现在在清单中引用主题。希望它能起作用:))