0

我创建了一个小应用程序,它有一个返回结果的 Activity。
该活动依赖于自定义适配器和一些 .axml 资源。

应用程序启动并运行后,
我尝试将该活动(包括所有资源)移至单独的 Android 库项目。

我现在可以编译单独的项目,但是一旦我
从主应用程序中引用它,主应用程序就不再编译
,因为它找不到单独项目的资源,
即使主应用程序不使用那些资源。

“Example.App.Resource.Drawable”不包含 Magnify 的定义,
“Example.App.Resource.Drawable”不包含 DeviceListItem 的定义
等...

这些错误发生在 Resource.Designer.cs

我的想法是将活动(及其所需的资源)
放在一个单独的项目/程序集中,以便我可以在其他项目中再次使用它。

即使我创建一个空白的 android 应用程序并引用程序集,也会发生错误。

4

2 回答 2

1

将资源移动到子项目中的支持​​时间并不长。(Java Android 项目传统上也不支持它)

目前支持还处于早期阶段。

如果您想尝试一下,那么http://forums.xamarin.com/discussion/1435/troubles-using-resources-from-library-project中有一些很好的知识

但总的来说,我建议你等待——我认为它今天还没有达到稳定的发布质量。

于 2013-02-26T08:28:33.273 回答
1

我目前正在做一个项目,我需要将所有drawables,layouts等放在一个单独的 DLL 中,以匹配我在 iOS 和 Windows 上的解决方案架构。我很难让它在 Android 上运行,但我终于让它运行起来了。需要注意的事情。

  1. Drawables的 ,Layouts等都需要lower-case
  2. 确保您的类库 (dll) 以Android 4.0.
  3. 确保没有同名的多个资源( 、 等)imageslayouts即使在不同的图书馆。
  4. 确保您的 Main App 项目正在引用具有这些资源的外部项目。

如果您执行上述所有操作,它应该可以正常工作。希望它可以帮助别人。并感谢斯图尔特的链接,从中学到了很多:)

于 2013-06-04T07:06:52.710 回答