Roboguice, ADT 14+ и проекты для библиотек Android - PullRequest
3 голосов
/ 14 ноября 2011

Roboguice - это такой аккуратный маленький инструмент, чтобы привести в порядок код представления Android.

Мне понравилось использовать аннотацию @InjectView, чтобы мне не приходилось инициализировать каждое поле представления в методе onCreate () моих операций, например:

@InjectView(R.id.title) TextView title;

В рамках радикальных изменений Google в библиотечных проектах для ADT 14+ (что в целом является желанным улучшением), поля идентификаторов в сгенерированных классах R больше не являются окончательными.

Так что теперь, когда вы хотите использовать Roboguice внутри библиотечных проектов, аннотации @InjectView больше не компилируются, потому что аннотации обрабатываются во время компиляции, а R.id.title больше не является окончательным.

Облом ...

Кто-нибудь еще использует Roboguice и имеет творческий обходной путь?

Ответы [ 3 ]

2 голосов
/ 16 октября 2013

Аннотации Android поддерживают внедрение на основе имени ресурса с проверкой во время компиляции.

https://github.com/excilys/androidannotations/wiki/Library-projects

2 голосов
/ 14 ноября 2011

Полагаю, вам лучше всего следовать этому отчету об ошибках в roboguice, чтобы увидеть, какое решение они придумают: http://code.google.com/p/roboguice/issues/detail?id=139&sort=-id

1 голос
/ 15 января 2013

RoboGuice рекомендует заменить ссылки на идентификаторы ссылками TAG: http://code.google.com/p/roboguice/wiki/LibraryProjects

...