0

結果を返すアクティビティを持つ小さなアプリケーションを作成しました。
このアクティビティは、カスタムアダプタといくつかの.axmlリソースに依存しています。

アプリケーションが起動して実行されたら、
すべてのリソースを含むそのアクティビティを別のAndroidライブラリプロジェクトに移動してみました。

これで別のプロジェクトをコンパイルできるようになりましたが、メインアプリケーションから参照するとすぐに、メインアプリケーションが別のプロジェクトのリソースを 使用していなくても、別のプロジェクトのリソースが見つからないため
、メインアプリケーションはコンパイルされなくなります。資力。

'Example.App.Resource.Drawable'には、
'Example.App.Resource.Drawable'のMagnifyの定義が含まれていません。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

私は現在プロジェクトに取り組んでおり、iOSとWindowsのソリューションのアーキテクチャに一致させるために、すべてdrawables、などを別のDLLに入れる必要がありました。layoutsAndroidで動作させるのに苦労しましたが、ようやく動作するようになりました。注意すべき点。

  1. あなたの、、DrawablesなどLayoutsはすべてである必要がありますlower-case
  2. クラスライブラリ(dll)がを対象としていることを確認してくださいAndroid 4.0
  3. 同じ名前の複数のリソース(、、など)imagesがないことを確認してください。layouts別の図書館でもありません。
  4. メインアプリプロジェクトが、これらのリソースを持つ外部プロジェクトを参照していることを確認してください。

上記のすべてを実行すると、正常に機能するはずです。それが他の誰かに役立つことを願っています。そして、リンクをくれたStuartに感謝し、そこから多くのことを学びました:)

于 2013-06-04T07:06:52.710 に答える