Есть ли способ использовать Roboguice и ActionbarSherlock в одном проекте? - PullRequest
13 голосов
/ 15 октября 2011

Я бы хотел использовать библиотеки, упомянутые в названии, в одном проекте.

Однако обеим моим операциям нужно расширяться из специального класса Activity: в случае Roboguice это RoboAcitivity и FragmentActivity.для ActionbarSherlock.

ActionbarSherlock расширяет библиотеку совместимости, что приятно, потому что мне также нужно использовать фрагменты, а уровень проекта s

Кто-нибудь преуспел в этом?Поскольку Java не поддерживает множественное наследование (что обычно является хорошей вещью), я попытался сделать FragmentActivity в проекте ActionbarSherlock для расширения RoboActivity вместо стандартного Activity.Но я не могу заставить его скомпилировать таким образом.

Часть вывода консоли:

[2011-10-15 17:46:31 - RetainFragmentTest2] /Users/scythe/JavaLibs/JakeWharton-ActionBarSherlock-a4855d0/library/res/values-v11/abs__styles.xml:170: error: Error: No resource found that matches the given name: attr 'android:logo'.
[2011-10-15 17:46:31 - RetainFragmentTest2] /Users/scythe/JavaLibs/JakeWharton-ActionBarSherlock-a4855d0/library/res/values-v11/abs__styles.xml:171: error: Error: No resource found that matches the given name: attr 'android:navigationMode'.
[2011-10-15 17:46:31 - RetainFragmentTest2] /Users/scythe/JavaLibs/JakeWharton-ActionBarSherlock-a4855d0/library/res/values-v11/abs__styles.xml:174: error: Error: No resource found that matches the given name: attr 'android:progressBarPadding'.
[2011-10-15 17:46:31 - RetainFragmentTest2] /Users/scythe/JavaLibs/JakeWharton-ActionBarSherlock-a4855d0/library/res/values-v11/abs__styles.xml:176: error: Error: No resource found that matches the given name: attr 'android:subtitle'.
[2011-10-15 17:46:31 - RetainFragmentTest2] /Users/scythe/JavaLibs/JakeWharton-ActionBarSherlock-a4855d0/library/res/values-v11/abs__styles.xml:177: error: Error: No resource found that matches the given name: attr 'android:subtitleTextStyle'.
[2011-10-15 17:46:31 - RetainFragmentTest2] /Users/scythe/JavaLibs/JakeWharton-ActionBarSherlock-a4855d0/library/res/values-v11/abs__styles.xml:173: error: Error: No resource found that matches the given name: attr 'android:titleTextStyle'.

Ответы [ 6 ]

8 голосов
/ 22 ноября 2011
6 голосов
/ 25 февраля 2012

Помимо проблем с библиотекой совместимости, вы также можете бороться с тем, как расширить свою деятельность как с RoboActivity, так и с SherlockActivity - в Java у вас нет множественного наследования: -)

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

См. пример .

3 голосов
/ 18 апреля 2013

Я просто хотел бы добавить, что «просто» добавив roboguice-sherlock к вашему maven pom, он волшебным образом работает.

    <dependency>
        <groupId>com.github.rtyley</groupId>
        <artifactId>roboguice-sherlock</artifactId>
        <version>1.5</version>
    </dependency>
1 голос
/ 23 февраля 2012

Еще один пример только что был выпущен на github. Он использует целый ряд других хороших инструментов в дополнение. Проверить https://github.com/github/gauges-android

0 голосов
/ 04 ноября 2014

Начиная с RoboGuice 3 , фреймворк roboguice-sherlock включен в дистрибутив RoboGuice . Схема именования для класса по-прежнему такая же

Все классы в этом проекте имеют то же имя, что и классы RoboGuice, с 'Sherlock', вставленным после 'Robo', т.е. Robo Sherlock ListFragment

за исключением того, что классы теперь находятся в пакете roboguice.activity.
См. Например RoboSherlockActivity.

0 голосов
/ 07 июня 2013

Другой пример рабочего примера и утилиты можно найти здесь: http://search.maven.org/#artifactdetails%7Ccom.github.rtyley%7Croboguice-sherlock%7C1.3%7Cjar

...