如何从其他NuGet软件包使用Xamarin中的资源文件?

时间:2019-06-28 13:03:06

标签: android ios xamarin nuget

我需要将现有的具有Android和iOS风格的Xamarin应用程序切片为NuGet程序包,每个程序包都包含一个模块,该模块带有自己的UI(片段,视图控制器),这些UI应将自身合并到主应用程序的UI中。

目前,我正要在一个包中引用另一个NuGet包中定义的Android资源。它可以很好地在代码中工作,在这里我只能使用生成的 Resource 类的相应命名空间,但不能在Android资源文件(即(a)xml)中使用。

最终,我还需要对iOS部分进行切片,但到目前为止,我还只有Android部分。

至少应该在Android上可行,因为它确实适用于Xamarin提供的支持库。但是我已经看到它是对.aar文件的绑定。但是,构建一个.aar文件进行绑定会破坏在Xamarin中构建UI的目的,因此,这实际上不是可行的解决方法。

以下是甚至无法编译的示例:

Project / NuGet程序包A中的资源/values/colors.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <color name="TextColor">#FFFFFF</color>
</resources>

项目B中的Resources / values / styles.xml,引用了NuGet程序包A:

<resources xmlns:tools="http://schemas.android.com/tools">
  <style name="ExampleDescription">
    <item name="android:textColor">@color/TextColor</item>
  </style>
</resources>

其中A是一个android库,B是一个android应用程序。

任何人都可以提供有关如何获得所需结果的任何意见或想法吗?也许也提供一些有关在iOS中执行此操作的提示?

0 个答案:

没有答案