Errore nel file styles_base.xml - Android app - Nessuna risorsa trovato che corrisponde al nome dato ' android: Widget.Material.ActionButton '

? divinesense @ | Original: StackOverFlow

Ok, così im un principiante in sviluppo Android e ho appena creato l'app mondo ciao . Ma mi sta dando errori nel file styles_base.xml di libreria appcompat_v7 .

errore: Errore durante il recupero genitore per la voce : No risorsa ha rilevato che   corrisponde il nome dato   ' android : Widget.Material.ActionButton ' . styles_base.xml / appcompat_v7 / res / valori - V21   AAPT Problem

Come faccio a prendere cura di questo errore ? Anche perché è la libreria appcompat_v7 utilizzato quando non lo voglio ? Voglio dire come faccio a creare l'app ciao mondo senza utilizzare la libreria appcompat_v7 ?

Questo è il file styles_base.xml che sta dando l'errore precedente .

<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>

Questo è il codice che sto utilizzando :

public class MainActivity extends Activity {

   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
   }
}


Top 5 Respuesta

1Panther @

La versione di compilazione Sdk è impostato su 21 . cambiarlo in 20 o less . Il suo presente in build.gradle di Android studio. Quindi pulire il progetto e ricostruirlo



2Ben @

Ho appena risolto questi errori esatte me stesso . La chiave sembra è che il file project.properties nel progetto della libreria appcompat dovrebbe usare qualunque sia la versione più alto delle API che il vostro particolare progetto appcompat è stato scritto per ( nel tuo caso sembra V21 ) . Il modo più semplice che ho trovato per dire è quello di cercare il più alto ' valori - v ** ' all'interno della cartella res ( ad es . values-v21 ) .

Per chiarire, oltre alle istruzioni sul https://developer.android.com/tools/support-library/setup.html, il file appcompat/project.properties dovrebbe avere in essa : target=android-21 (miniera è venuto con 19 invece) .

Assicurarsi inoltre di avere la ' Platform SDK ' per indicare che la versione installata ( ad esempio per v21 installare Android 5.0 SDK Platform ) .

Vedi anche http://stackoverflow.com/questions/26431676/appcompat-v721-0-0-no-resource-found-that-matches-the-given-name-attr-andro

In alternativa, se non si desidera utilizzare il appcompat a tutti, ( credo) tutto quello che dovete fare è fare clic destro del progetto > Proprietà> Android > Library> Rimuovere il riferimento al appcompat . Gli errori saranno ancora presentarsi per il progetto appcompat, ma non dovrebbe influenzare il vostro progetto dopo.

3Ravi @

Dopo aver cambiato il target di corrispondenza versione ( come spiegato da Ben ), se mostra ancora errori poi basta eseguire " Clean" sul progetto per eliminare gli errori di risorse .

4pajus_cz @

Questo è successo a me dopo che ho " aggiornato " in 5.0 SDK e voleva creare una nuova applicazione con libreria di supporto

In entrambi i progetti ( project.properties di file) in quello che si desidera utilizzare libreria di supporto e la libreria di supporto si deve essere impostato lo stesso target

es per il mio caso ha funzionato

In project android-support-v7-appcompat Change project.properties into target=android-21 Cleanandroid-support-v7-appcompat In my project (where I desire support library) In my project, Change project.properties into target=android-21 and android.library.reference.1=../android-support-v7-appcompat (or add support library in project properties) Clean the project 5back track @

Prerequirements

Assicurarsi di aver scaricato le ultime comparse e Android 5.0 SDK tramite l'SDK - Manager. Errore nel file styles_base.xml - Android app - Nessuna risorsa trovato che corrisponde al nome dato ' android: Widget.Material.ActionButton '