简体   繁体   English

Eclipse中的appcompat_v7错误

[英]appcompat_v7 error in eclipse

I am a newbie at android development.I created a new project but along with it appcompat_v7 also got created.Now my project does not run since appcompat_v7 has errors. 我是android开发的新手。我创建了一个新项目,但与此同时也创建了appcompat_v7。由于appcompat_v7有错误,现在我的项目无法运行。 The error is only in the appcompat_v7-> res-> values-v21-> style_base.xml on the following line 错误仅在以下行的appcompat_v7-> res-> values-v21-> style_base.xml中

<style name="Base.Widget.AppCompat.ActionButton"
           parent="android:Widget.Material.ActionButton">
  </style>

with the description 与描述

Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ActionButton'

I have tried cleaning and rebuilding the project but the error persists.How do I fix this? 我曾尝试清理和重建项目,但错误仍然存​​在。如何解决此问题?

Here is the appcompat_v7 -> res -> values-v21 -> styles.xml This file is the one with the error on line 75: Error: 这是appcompat_v7-> res-> values-v21-> styles.xml此文件是第75行出现错误的文件:错误:

<style name="Base.Widget.AppCompat.ActionButton"
           parent="android:Widget.Material.ActionButton">
    </style>

This is the file 这是文件

<?xml version="1.0" encoding="utf-8"?>
<!--
     Copyright (C) 2014 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->

<resources>

    <!-- Like in themes_base.xml, the namespace "*.AppCompat.Base" is used to
     define base styles for the platform version. The "*.AppCompat"
     variants are for direct use or use as parent styles by the app. -->
    <eat-comment/>

    <style name="Base.Widget.AppCompat.ActionBar.TabView"
           parent="android:Widget.Material.ActionBar.TabView">
    </style>

    <style name="Base.Widget.AppCompat.Light.ActionBar.TabView"
           parent="android:Widget.Material.Light.ActionBar.TabView">
    </style>

    <style name="Base.Widget.AppCompat.ActionBar.TabText"
           parent="android:Widget.Material.ActionBar.TabText">
    </style>

    <style name="Base.Widget.AppCompat.Light.ActionBar.TabText"
           parent="android:Widget.Material.Light.ActionBar.TabText">
    </style>

    <style name="Base.Widget.AppCompat.Light.ActionBar.TabText.Inverse"
           parent="android:Widget.Material.Light.ActionBar.TabText">
    </style>

    <style name="Base.TextAppearance.AppCompat.Widget.ActionBar.Menu"
           parent="android:TextAppearance.Material.Widget.ActionBar.Menu">
    </style>

    <style name="Base.TextAppearance.AppCompat.Widget.ActionBar.Title"
           parent="android:TextAppearance.Material.Widget.ActionBar.Title">
    </style>

    <style name="Base.TextAppearance.AppCompat.Widget.ActionBar.Subtitle"
           parent="android:TextAppearance.Material.Widget.ActionBar.Subtitle">
    </style>

    <style name="Base.TextAppearance.AppCompat.Widget.ActionBar.Title.Inverse"
           parent="android:TextAppearance.Material.Widget.ActionBar.Title.Inverse">
    </style>

    <style name="Base.TextAppearance.AppCompat.Widget.ActionBar.Subtitle.Inverse"
           parent="android:TextAppearance.Material.Widget.ActionBar.Subtitle.Inverse">
    </style>

    <style name="Base.TextAppearance.AppCompat.Widget.ActionMode.Title"
           parent="android:TextAppearance.Material.Widget.ActionMode.Title">
    </style>

    <style name="Base.TextAppearance.AppCompat.Widget.ActionMode.Subtitle"
           parent="android:TextAppearance.Material.Widget.ActionMode.Subtitle">
    </style>

    <!-- Action Button Styles -->

    <style name="Base.Widget.AppCompat.ActionButton"
           parent="android:Widget.Material.ActionButton">
    </style>

    <style name="Base.Widget.AppCompat.ActionButton.CloseMode"
           parent="android:Widget.Material.ActionButton.CloseMode">
    </style>

    <style name="Base.Widget.AppCompat.ActionButton.Overflow"
           parent="android:Widget.Material.ActionButton.Overflow">
    </style>

    <!--
        Widget.AppCompat.Toolbar style is purposely ommitted. This is because the support
        Toolbar implementation is used on ALL platforms and relies on the unbundled attrs.
        The supporting Toolbar styles below only use basic attrs so work fine.
    -->

    <style name="Base.Widget.AppCompat.Toolbar.Button.Navigation"
           parent="android:Widget.Material.Toolbar.Button.Navigation">
    </style>

    <style name="Base.TextAppearance.Widget.AppCompat.Toolbar.Title"
           parent="android:TextAppearance.Material.Widget.ActionBar.Title">
    </style>

    <style name="Base.TextAppearance.Widget.AppCompat.Toolbar.Subtitle"
           parent="android:TextAppearance.Material.Widget.ActionBar.Subtitle">
    </style>

    <!-- Spinner Widgets -->

    <style name="Base.Widget.AppCompat.ListView.DropDown"
           parent="android:Widget.Material.ListView.DropDown"/>

    <style name="Base.Widget.AppCompat.DropDownItem.Spinner"
           parent="android:Widget.Material.DropDownItem.Spinner"/>

    <style name="Base.Widget.AppCompat.Spinner" parent="android:Widget.Material.Spinner" />

    <style name="Base.Widget.AppCompat.Spinner.DropDown.ActionBar" parent="android:Widget.Material.Spinner">
        <item name="spinnerMode">dropdown</item>
        <item name="disableChildrenWhenDisabled">true</item>
        <item name="popupPromptView">@layout/abc_simple_dropdown_hint</item>
    </style>

    <style name="Base.Widget.AppCompat.ListView.Menu"
           parent="android:Widget.Material.ListView" />

    <!-- Popup Menu -->

    <style name="Base.Widget.AppCompat.ListPopupWindow" parent="android:Widget.Material.ListPopupWindow">
    </style>

    <style name="Base.Widget.AppCompat.PopupMenu" parent="android:Widget.Material.PopupMenu">
    </style>

    <style name="Base.Widget.AppCompat.Light.PopupMenu"
        parent="android:Widget.Material.Light.PopupMenu">
    </style>

    <style name="Base.Widget.AppCompat.PopupMenu.Overflow">
        <item name="android:dropDownHorizontalOffset">-4dip</item>
        <item name="android:overlapAnchor">true</item>
    </style>

    <style name="Base.Widget.AppCompat.Light.PopupMenu.Overflow">
        <item name="android:dropDownHorizontalOffset">-4dip</item>
        <item name="android:overlapAnchor">true</item>
    </style>

    <style name="Base.TextAppearance.AppCompat.Widget.PopupMenu.Large"
        parent="android:TextAppearance.Material.Widget.PopupMenu.Large">
    </style>

    <style name="Base.TextAppearance.AppCompat.Widget.PopupMenu.Small"
        parent="android:TextAppearance.Material.Widget.PopupMenu.Small">
    </style>

    <style name="Base.TextAppearance.AppCompat.Light.Widget.PopupMenu.Large"
        parent="android:TextAppearance.Material.Widget.PopupMenu.Large">
    </style>

    <style name="Base.TextAppearance.AppCompat.Light.Widget.PopupMenu.Small"
        parent="android:TextAppearance.Material.Widget.PopupMenu.Small">
    </style>

    <!-- Search View result styles -->

    <style name="Base.TextAppearance.AppCompat.SearchResult.Title"
           parent="@android:TextAppearance.Material.SearchResult.Title">
    </style>

    <style name="Base.TextAppearance.AppCompat.SearchResult.Subtitle"
           parent="@android:TextAppearance.Material.SearchResult.Subtitle">
    </style>

    <style name="Base.Widget.AppCompat.AutoCompleteTextView" parent="android:Widget.Material.AutoCompleteTextView" />

    <style name="Base.Widget.AppCompat.Light.AutoCompleteTextView" parent="android:Widget.Material.AutoCompleteTextView" />

    <!-- Progress Bar -->

    <style name="Base.Widget.AppCompat.ProgressBar.Horizontal"
           parent="android:Widget.Material.ProgressBar.Horizontal">
    </style>

    <style name="Base.Widget.AppCompat.ProgressBar"
           parent="android:Widget.Material.ProgressBar">
    </style>

    <!-- TODO. Needs updating for Material -->
    <style name="Base.Widget.AppCompat.ActivityChooserView" parent="">
        <item name="android:gravity">center</item>
        <item name="android:background">@drawable/abc_ab_share_pack_holo_dark</item>
        <item name="android:divider">?attr/dividerVertical</item>
        <item name="android:showDividers">middle</item>
        <item name="android:dividerPadding">6dip</item>
    </style>

</resources>

This is myproject -> res -> values -> styles.xml 这是myproject-> res-> values-> styles.xml

<resources>

    <!--
        Base application theme, dependent on API level. This theme is replaced
        by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
    -->
    <style name="AppBaseTheme" parent="Theme.AppCompat.Light">
        <!--
            Theme customizations available in newer API levels can go in
            res/values-vXX/styles.xml, while customizations related to
            backward-compatibility can go here.
        -->
    </style>

    <!-- Application theme. -->
    <style name="AppTheme" parent="AppBaseTheme">
        <!-- All customizations that are NOT specific to a particular API-level can go here. -->
    </style>

</resources>

Check you Build targets in both your project and appcompat. 检查您的项目和appcompat中的构建目标。 Your project must not be less than the target of appcompat which, I think needs SDK 10 or newer: 您的项目不得小于appcompat的目标,我认为需要SDK 10或更高版本:

In Eclipse go to Project->Properties->Android (Project Build Target) 在Eclipse中,转到Project-> Properties-> Android(Project Build Target)

Somebody else had the same problem, you need to install Java 1.8 其他人也有同样的问题,您需要安装Java 1.8

See this link: https://stackoverflow.com/a/26642124/2767703 看到这个链接: https : //stackoverflow.com/a/26642124/2767703

when Android Lollipop has launched, eclipse and sdk manager also upgraded but 当Android Lollipop启动时,eclipse和sdk管理器也进行了升级,但是

SDK 5.0(Lollipop) has issues about v7 (appcompat, cardview ... ) - doesn't found resource or matched. SDK 5.0(Lollipop)存在有关v7的问题(appcompat,cardview ...)-找不到资源或不匹配。

this link 这个连结

Using android.support.v7.widget.CardView in my project (Eclipse) 在我的项目中使用android.support.v7.widget.CardView(Eclipse)

http://happilycoded.com/blog/using-recyclerview-and-cardview-in-eclipse-adt/ http://happilycoded.com/blog/using-recyclerview-and-cardview-in-eclipse-adt/

or this will help you 否则这对您有帮助

To resolve this issue, 要解决此问题,

  1. Right Click on appcompat_v7 library and select Properties 右键单击appcompat_v7库,然后选择“属性”
  2. Click on Android Option, 点击Android选项,
  3. Set Project Build Path as Android 5.0 (API level 21) 将项目构建路径设置为Android 5.0(API级别21)
  4. Apply Changes. 应用更改。
  5. Go to project.properties file under appcompat_v7 library, 转到appcompat_v7库下的project.properties文件,
  6. Set the project target as : target=android-21 将项目目标设置为:target = android-21
  7. Clean + Build appcompat_v7 library and your projects 清理并构建appcompat_v7库和您的项目

See here 这里

Right-Click on the appcompat project folder and open "properties". 右键单击appcompat项目文件夹,然后打开“属性”。 Go to "Android" section and check "Android 5.0" as the project build target apply it and enjoy :) 转到“ Android”部分,然后检查“ Android 5.0”,将其作为项目构建目标并享受它:)

Hope this approach will help you. 希望这种方法对您有帮助。

Update the project.properties file of appcompat v7 , which has: target=android-19 to target=android-23 . appcompat v7的project.properties文件更新为: target = android-19target = android-23 Always target to upper version . 始终以较高版本为目标。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM