Невозможно разрешить стиль @/Theme.Sherlock - программирование
Подтвердить что ты не робот

Невозможно разрешить стиль @/Theme.Sherlock

Я пытаюсь использовать Actionbar Sherlock 4, ориентируясь на sdk 15 и min sdk 8. Следуя указаниям, приведенным на веб-сайте Usage, и отличным видео, размещенным здесь: http://www.youtube.com/watch?v=avcp6eD_X2k

Я все еще сталкиваюсь с проблемой. Когда я пытаюсь добавить android: theme = "@style/Theme.Sherlock" в мой файл манифеста, я получаю сообщение об ошибке:

Ресурс не найден, который соответствует указанному имени (в 'теме' со значением @Стиль/Theme.Sherlock ').

Я включил проект библиотеки Шерлока в панель задач, и там есть инструкции импорта, а не ошибки, и я

extends SherlockActivity реализует ActionBar.TabListener

как и в демо-коде и документации. Тем не менее, eclipse дает мне эту ошибку. Какие-нибудь идеи там?

4b9b3361

Ответ 1

Я столкнулся с необычной аномалией, которая может помочь!

У вас есть встроенный проект Android, который использует ABS, работающий на Gingerbread отлично работает, в ICS он сбой, из-за этого происходит сбой при ICS, проверьте ваш AndroidManifest.xml(сократили бит для краткости...

<application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" android:theme="@style/Theme.Sherlock">

Это была часть андроида: тема, которая вызвала сбой в ICS, она отлично работала под пряничными и более старыми версиями!. Решение было полностью удалить его! Затем из вашей операции сделайте следующее:

@Override
public void onCreate(Bundle savedInstanceState) {
   if (Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH){
        this.setTheme(com.actionbarsherlock.R.style.Theme_Sherlock);
   }
   super.onCreate(savedInstanceState);
   ... // MORE CODE ....
}

Это фиксировало крушение под ICS, стиль темы не понравился ICS, но он отлично работает для обеих версий менее 2.3 и 4.0 вверх.. странная ошибка, но которую я обнаружил случайно!

Не забудьте применить тему перед вызовом базового класса own onCreate!

Ответ 2

Ловушка, с которой я столкнулась, была такой: ссылка на проект ActionBarSherlock должна быть в разделе "Android- > Библиотеки" свойств проекта, в то время как я добавлял его в "Путь сборки" → "Библиотеки".

Ответ 3

Моя стандартная процедура для включения проекта библиотеки в Eclipse выглядит следующим образом:

  • Проект библиотеки импорта
  • Щелкните правой кнопкой мыши по проекту библиотеки Свойства → Android → Задайте цель сборки проекта (убедитесь, что библиотека и основной проект одинаков)
  • Щелкните правой кнопкой мыши по проекту библиотеки Android Tools → Fix Project Properties
  • Выберите проект библиотеки, затем Project → Clean...
  • Выберите основной проект, затем Project → Clean...

Это должно исправить все, что вас беспокоит.

Ответ 4

Наконец, я нахожу решение:

  • ВАЖНО! Скопируйте тот же файл android-support-v4.jar в обоих проектах: в библиотеку и ваш проект (это основная проблема).
  • Импорт проекта "library" в вашу рабочую среду
  • Щелкните правой кнопкой мыши на проекте библиотеки Свойства → Android → Проверьте "Имя цели" 4.x(любой, уровень API 14,15 или 16). Нижняя проверка "Библиотека" .
  • В свойствах перейдите к "Java Build Path", вкладке "Библиотеки" и найдите "android-support-v4.jar" обычно в "Android Dependencies". Ок и Закрыть свойства.
  • Щелкните правой кнопкой мыши по проекту библиотеки Android Tools → Fix Project Properties
  • в меню Project → Clean... и выберите, чтобы очистить проект "Библиотека" .

В этом месте должна быть выполнена ваша "библиотека" проекта (без ошибок)

  • Создайте или импортируйте собственный проект. Пример "MyProject"
  • В свойствах перейдите к "Java Build Path", вкладке "Библиотеки" и найдите "android-support-v4.jar" обычно в "Зависимости от Android".
  • Теперь перейдите на вкладку "Проекты". Добавить... и выберите проект "library" .
  • Теперь в свойствах перейдите в Android → Проверьте "Target Name" 4.x(любой, уровень API 14,15 или 16). ВАЖНО: Должен быть тем же самым из проекта "library" . Нижняя "Библиотека" должна быть UNCHECKED, и в этом месте нажмите "Добавить..." и выберите "библиотечный" проект. Свойства Ok и Close.
  • Щелкните правой кнопкой мыши на проекте "MyProject" . Инструменты Android → Исправить свойства проекта.
  • в меню Project → Clean... и выберите очистить проект "MyProject" .

Уже ваш проект должен быть выполнен. Если ошибка повторяется, перезапустите Eclipse.

Ответ 5

Я решил эту проблему, выполнив следующие два шага по моим проектам:

  • Удалить "библиотеку" из "свойств проекта" /построить путь и добавить библиотеку в "свойства проекта" /Android/Library
  • Щелкните правой кнопкой мыши на проекте "Инструменты Android" → "Добавить библиотеку поддержки"

Ответ 6

после импорта обоих проектов, то есть библиотеки и настройкиActivity, сначала очистите и создайте их. Затем щелкните правой кнопкой мыши по настройкеActivity project- > properties- > выберите вторую опцию из меню слева (например, android). с правой стороны их раздел библиотеки просто нажимает на добавление библиотеки. В этом кадре автоматически появится путь prper. Thats решить мою проблему, я не получил никаких ошибок.