ActionBar Sherlock — как его добавить в проект (1 часть)

Всем привет!

Мы тут делали вот этот проект и решили использовать ActionBar. И вроде бы написали весь код, вроде все хорошо, однако при тестировании на устройстве с Android 2.х у нас возникли некоторые неприятности: несмотря на использование в проекте библиотеки поддержки (та, которая Android Support Library), ActionBar работает только на устройствах с новым API 🙁 То есть начиная с 11 версии кажется (если не прав, поправьте). Итак, суть: статья о том, что делать если ActionBar не работает на Android 2.х?

Предварительный итог — печальный. Почитал я значит документацию второй раз (в смысле внимательно прочитал, ан не по диагонали) и понял, что без сторонних компонентов нам не обойтись.

Выбор пал на ActionBarSherlock — как на наиболее часто используемый судя по результатам поиска в гугле. Давайте посмотрим, что такое ActionBarSherlock — на сайте разработчиков на главной странице написано, что это обертка над Android Support Library, которая позволяет использовать паттерн ActionBar на всех платформах начиная со 2-й. При этом на старых версиях библиотека использует свой код, а на тех, где ActionBar поддерживается — используется ActionBar из системы.

Итак приступим. Первым делом скачиваем саму библиотеку. Вот по этой ссылочке вы его можете найти. Или скачать на GitHub. Распаковываем архив видим примерно это:

AB_ART1

Теперь идем в Eclipse. Проверяем что у нас установлен Android SDK версии 14 (именно под ним собирается ABSherlock) Нажимаем File -> New -> Other и видим вот это:

AB_ART2

Здесь выбираем категорию Android и Выбираем в ней пункт «Android project from Existing Code». Видим следующее окошко:

AB_ART3

В этом окошке нажимаем как водится кнопку Browse и выбираем скачанную и разархивированную нами папку. В результате эклипс найдет нам целую кучу проектов для импорта, мы с вами выберем тот, что называется actionbarsherlock. Нажимаем кнопку Finish — вуаля, мы с вами имеем импортированный проект в эклипсе. Обратите внимание, что этот проект является библиотекой. То есть вы можете подключить его к вашему приложению!

Едем дальше. Создаем новый проект. Я назвал его ABSerlockTest (Ну простите, забыл буковку r). Но вы можете не повторять моих ошибок :).

Итак, выбираем наш новосозданный проект и открываем его свойства. Выбираем слева «Android» и видим примерно это:

AB_ART4

Здесь нажимаем кнопочку «Add» и в появившемся окне выбираем actionbarsherlock. В итоге получится как на картинке и мы смело нажимаем «OK». Итак, мы вроде как подцепили к нашему проекту библиотеку ActionBarSherlock. Но это еще не все. Нажав на «ОК» мы увидим в окне консоли целое море ошибок, примерно так:

AB_ART5

Смысл в том, что эклипс нашел в нашем проекте две библиотеки поддержки. Первая — та что в проекте с actionbarsherlock а вторая которая в нашем с вами проекте. Собственно исправить эти ошибки достаточно легко 🙂 для этого в нашем проекте удаляем из папки libs библиотеку поддержки android-support-v4.jar.

На сегодня пожалуй хватит 🙂 Если что — пишите, комментируйте, ну и всем хорошего дня. В следующий раз продолжим!

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Запись опубликована в рубрике Android. Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *