Я пытаюсь использовать datelider в моем проекте для Android, чтобы иметь комбинированный инструмент выбора даты и времени в моем графическом интерфейсе.
Авторы виджета предлагают включать java- и resource-sources прямо в мое приложение.
Первая попытка Копирование Java и ресурсов в основное приложение:
Результат: Виджет Java-классы не может скомпилировать , поскольку не удается разрешить идентификаторы ресурсов R.xxxx.
Причина: Классы виджетов реализованы в пакете "com.googlecode.android.widgets.DateSlider" и моем приложении.
имеет другое пространство имен "my.namespace.myApp", так что идентификаторы ресурсов происходят из my.namespace.myApp.R.xxx.
Чтобы исправить , мне нужно было бы прикоснуться к каждому источнику Java виджета, чтобы импортировать my.namespace.myApp.
Есть ли способ иметь 2 набора ресурсов с различными пространствами имен, чтобы в основном приложении были my.namespace.myApp.R.xxx и com.googlecode.android.widgets.DateSlider.R?
2-я попытка поместить виджет java + ресурсы в отдельный jar / library:
результат: каждая вещь скомпилирована. но после запуска приложения я получаю runtimererror: среда выполнения не может разрешить идентификаторы ресурса виджета из jar / lib.
Примечание: я могу вызывать методы из банки, если они не нуждаются в ресурсах.
Итак, мой вопрос: как лучше всего использовать повторно используемый элемент графического интерфейса с ресурсами в Android?
Я использую Android 2.2.
Примечание: Android: как создавать повторно используемые компоненты? не помогает, потому что рассказывает, как создавать библиотечные проекты.
обновление 16.3.2012
Поскольку текущая версия 16/17-pre из eclipse adt-tools не поддерживает ресурсы в jar-файлах (на момент попытки 2), каков наилучший / простой способ их использования до тех пор, пока не появится поддержка для этого?
обновление 4.4.2012
с новыми инструментами R17 мне удалось использовать библиотеку project-with-resources, которая создает jar. Android-Lint помог мне выяснить, что нужно изменить в lib, чтобы сделать его пригодным для использования.
Однако я все еще не могу использовать только DateSliberlib.jar
- затмение-рабочее пространство
Этот параметр может быть скомпилирован, но приложение аварийно завершает работу, поскольку не может найти ресурсы библиотеки.
[обновление 2014-11-17]
6 месяцев назад я перешел с eclipse / ant-build на android-studio / gradle build, в котором были представлены * .aar-файлы, являющиеся jar-файлами с ресурсами android.
android-studio / gradle build может справляться с ресурсами в библиотеках.