Подтвердить что ты не робот

Исправление ошибки в styles.xml для генерации R.java: имя ресурса не найдено 'Theme.AppCompat.Light'

Я новичок в Android и пытаюсь запустить свою первую программу. Однако, исходя из моих поисковых запросов в Интернете, я думаю, что я не могу импортировать mypackage.R, потому что r.java не был создан из-за ошибок в моих файлах style.xml. Я искал вокруг, пытаясь выяснить, как исправить это, но я не могу найти исправление, которое работает. Ошибка в styles.xml равна

error: Error retrieving parent for item: No resource found that matches the given name 'Theme.AppCompat.Light'

Кто-нибудь знает, как это исправить?

! [Ошибки в файле style.txt] [1]

Вот код, который я использую:

package com.example.test;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;

public class MainActivity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}
}

UPDATE: Вот стиль .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>

ОБНОВЛЕНИЕ 2: Вот AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.test"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="19" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.example.test.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

</manifest>
4b9b3361

Ответ 1

Вы пытаетесь использовать тему Theme.AppCompat.Light, которая представляет собой проект библиотеки. Вы должны ссылаться на этот проект библиотеки на свой проект.

Теперь сначала проверьте, что вы установили этот проект библиотеки следующим образом:

Go Окно Android SDK Manager, тогда появится окно с именем Android SDK Manager.

enter image description here

Если Android Support Library не установлен, установите его. Вы можете увидеть дополнительную информацию о настройке Android Support Library с сайта разработчика Android ниже.

Поддержка настройки библиотеки

После завершения Android Support Library завершения установки свяжите библиотеку с вашим проектом с этим путем...

android-sdk/extras/android/support/v7/appcompat

Чтобы сделать ссылку, выполните следующие действия:

  • Файл Импорт (android-sdk\extras\android\support\v7). Выберите " appcompat"
  • Проект свойства Android. В библиотеке разделов " Добавить" и выберите " appCompat"

Теперь очистите и создайте свой проект и запустите его. Я думаю, что после всего этого ваша проблема будет решена.

Ответ 2

Я, наконец, понял проблему. Мне пришлось удалить эту строку кода из моего main.xml:

android:showAsAction="never"

В моих папках values-v11 и values-14 я изменил имя приложения на...

style name="AppBaseTheme" parent="android:Theme.Light"

... и он в настоящее время работает.

Ответ 3

Поскольку вы используете Theme.AppCompat.Light в своей теме, вы должны включить appCompat в свой проект.

  • Файл- > Импорт (android-sdk\extras\android\support\v7). Выберите "appcompat"

  • Project- > properties- > Android. В библиотеке разделов

  • "Добавить" и выберите "appCompat"

Это должно сработать.

Ответ 4

Убедитесь, что вы правильно закрыли тег <resources> и добавили в нижней части своих styles.xml:

 </resources>

в соответствии с вашим опубликованным фрагментом кода, которого нет, но должен быть

Изменить: тег отсутствующих ресурсов был просто ошибкой копирования-вставки, поэтому здесь это не причина.