13

Прежде всего, я новичок в Android. Я делаю приложение, и я реализую библиотеку под названием HoloEverywhere. Эта библиотека использует в theme.xml библиотеку ActionBar Sherlock. Я импортировал в свое рабочее пространство ActionBar Sherlock, и я добавил его в HoloEverywhere. Затем я добавил HoloEverywhere к моему проекту, но когда я пытаюсь использовать его, у меня есть ошибка (я пытался использовать кнопку):Ошибка импорта HoloEverywhere

The following classes could not be instantiated: 
- com.WazaBe.HoloEverywhere.ButtonHolo (Open Class, Show Error Log) 
See the Error Log (Window > Show View) for more details. 
Tip: Use View.isInEditMode() in your custom views to skip code when shown in Eclipse. 

Я положил путь класса в моем макете, например:

<com.WazaBe.HoloEverywhere.ButtonHolo 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="@string/text" /> 

Как я могу решить эту проблему и использовать эту библиотеку в своем проекте ?. Спасибо :) PS. Извините за мой английский, я знаю, что это не очень хорошо.

+0

Здравствуйте, я Кристоф (или Waza_be), и это первый раз, когда я видел такую ​​ошибку! Если я что-то найду, я приду и отвечу тебе! –

+0

Я делаю шаги, но я получаю эту ошибку в файле pom.xml: Несколько аннотаций, найденных в этой строке: - Не удалось перенести org.apache.maven.plugins: maven-enforcer-plugin: pom: 1.0 из http: // repo.maven.apache.org/maven2 был кэширован в локальном репозитории, разрешение не будет повторно загружено до тех пор, пока не истечет интервал обновления центрального элемента или не будут сделаны принудительные обновления. Исходная ошибка: Не удалось передать артефакт org.apache.maven.plugins: maven-enforcer-plugin: pom: 1.0 from/to central (http://repo.maven.apache.org/ maven2): операция была отменена. - Ошибка сборки проекта: Неразрешимое расширение сборки: плагин – mahdi

+0

http://stackoverflow.com/a/20895081/623694 –

ответ

39

Выполните следующие действия (из блога here) добавить ActionBarSherlock

  1. Download в .zip/.tgz и извлечь его
  2. Перейти затмить и выберите File->New-> Android Project
  3. Выберите Create project from existing source и затем browse до library папка внутри извлечена AndroidBarSherlock папка
  4. цель сборки должно быть последним (14 OR15), но ваш minSdkVersion может быть меньше (7 или 8)
  5. Пресс Finish
  6. правой кнопкой мыши на вновь созданном проекте и перейти к Properties.
  7. Под заголовком Android, вы должны увидеть раздел для Library с пометкой IsLibrary. Убедитесь, что он установлен.
  8. Правый клик -> Право собственности на проект, в который вы хотите добавить AndroidBarSherlock под заголовком Android, и раздел Library выберите Add.
  9. Вы должны увидеть ActionBarSherlock библиотеку, добавьте в свой проект
  10. Наконец, если вы использовали поддержку совместимости, вам необходимо удалить, что банку, так как он включен в ActionBarSherlock.

Выполните действия, описанные ниже, чтобы добавить HoloEverywhere

  1. Download Zip от GitHub к компьютеру
  2. разархивировать папку
  3. Перейти затмить и выберите File->New-> Android Project
  4. Выберите Create project from existing source и затем browse в папку HoloEverywhereLib внутри извлеченного складного r
  5. Пресс Finish
  6. Щелкните правой кнопкой мыши по вновь созданному проекту и перейдите на страницу Properties.
  7. Под заголовком Android, вы должны увидеть раздел для Library с пометкой IsLibrary. Убедитесь, что это отмечено, и нажмите Add и ранее добавленную библиотеку ActionBarSherlock.

Выполните следующие шаги, чтобы добавить HoloEverywhere к вашему проекту

  1. Создать новый Android проект
  2. правой кнопкой мыши на проекте -> Свойства -> Android -> Добавить, добавить как ActionBarSherlock и HoloEverywhere
  3. Изменить Android Manifest на следующие

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

  4. Редактировать main.xml включить виджеты темы Голо.

  5. Измените ваш activity следующим

    public class ChkActionBarSherlock extends SherlockActivity { 
        @Override 
        public void onCreate(Bundle savedInstanceState) { 
         super.onCreate(savedInstanceState); 
         setContentView(R.layout.main); 
        } 
    
    } 
    
+0

: Я следил за вашими шагами для голограммы каждый раз, но он показывает ошибку на Dialogholo.java на этом экране. Просмотреть customView = View. надувание (mContext, R.layout.alert_dialog_holo, \t \t \t \t null); \t \t mTitle = (TextView) customView.findViewById (R.id.alertTitle); R не может быть разрешена ошибка, Holoalertdialogbuilder.java в этой ошибке файлов находится в этой строке \t mTitle = (TextView) customTitle.findViewById (R.id.alertTitle); \t \t \t FontLoader.loadFont (mTitle, FontLoader.ROBOTO_REGULAR); \t \t \t mIcon = (ImageView) customTitle.findViewById (R.id.icon); \t \t \t setCustomTitle (customTitle); –

+0

Вы видите, что 'R не может быть разрешен'. Очистите проект и попытайтесь выполнить поиск в Google для ошибки. Множество данных по этому вопросу в Интернете. –

+0

: Я пробовал все, что ничто не работало.Когда я импортирую holoeverywhere lib только для затмения, я получаю все эти ошибки –

4

я имел ту же ошибку на моем проекте, это то, что я сделал, щелкните правой кнопкой по HoloEverywhere (свойства-> android-> библиотека) удалить ActionBarSherlock из списка, затем повторно добавьте проект ActionBarSherlock, щелкнув add, после этого очистите проект, и все ошибки исчезнут.

8

Кажется, что

android:theme="@style/Theme.HoloEverywhereDark.Sherlock" 

причиной ошибки.

изменить его:

android:theme="@style/Holo.Theme" 

resons здесь:

Github

правильно!

0

Создатель ActionBarSherlock, Джейк Уортон, объявил в Google+, что дальнейшее развитие ActionBarSherlock прекращено. ActionBarSherlock 4,4 является последним выпуском, и, возможно, получить исправления ошибок - но там не будет никаких новых функций:

While there may be a dot release or two in the coming weeks, version 4.4 is shaping up to be The Last Release™.

https://plus.google.com/+JakeWharton/posts/F3HkWY9J8fK

Как я попросил на holoeverywhere issues forum и ответил на дэвов:

HoloEverywhere doesn't have any dependency with ABS since v2.0

Итак, вы больше не должны использовать ABS и удалять библиотеку из своего проекта и заменять ее holoeverywhere напрямую или с помощью ActionbarCompat из библиотеки поддержки google.

Смежные вопросы