0

現在、V3を使用してアプリをセットアップしようとしています。

WP8とAndroidでは実際に正常に動作します。しかし、私はiOSに苦しんでいます。

新しいチュートリアルで説明されているように、コアプロジェクトに次の参照を追加しました。

  • Cirrious.CrossCore.dll
  • Cirrious.MvvmCross.dll

Macでソリューションを開くと(iOSとCoreプロジェクトのみを含むソリューションを入手)、Xamarin Studioは、ICommandに必要なSystem.Windows.Inputのものが見つからないと文句を言い始めます。

現在、コード内にICommand / IList / MvxRealyCommandが見つかりません...:S

質問:Xamarin Studioで機能させるために、コアプロジェクトでどのdllを参照する必要がありますか?


編集:わかりました。コアプロジェクトに次の参照を追加する必要があります。

  <ItemGroup>
    <Reference Include="System" />
    <Reference Include="System.Core" />
    <Reference Include="System.Net" />
    <Reference Include="System.Runtime.Serialization" />
    <Reference Include="System.ServiceModel" />
    <Reference Include="System.Windows" />
    <Reference Include="System.Xml" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Xml.Serialization" />
  </ItemGroup>

それらすべてが必要かどうかわからない場合は、Conference-Exampleからコピーして貼り付けてください。私はこれについてさらにいくつかの研究をしなければなりません:S

4

1 に答える 1

3

2013年6月の更新

Xamarinは、最初のPCLサポートをリリースしました。

さらに、この問題の簡単な回避策が1つ見つかりました。単に使用せず、代わりにプロジェクトの一部としてMvxCommandの独自のローカルプロジェクトMyCommand実装を使用してください。System.Windows.Input.ICommandCore

更新の終了


XamarinはまだPCLを適切にサポートしていません

その結果、iOSビルド用にpclプロジェクトを個別にコンパイルする必要があります。また、「適切なPCL」用にビルドされたdllではなく、iOS用にビルドされたdllを参照する必要があります。

現在のmvxウォークスルーに従う場合、これはMacで異なるmvvmcrossバイナリを使用する必要があることを意味します。私は通常、異なるdllファイルを/ lib/mvxフォルダーに置くだけでこれを行います

リポジトリhttps://github.com/slodge/mvvmcross-binariesには、現在4セットのバイナリが含まれています。これらはpclとios、デバッグ、リリースのすべてをカバーしています。


この状況の詳細については、http://slodge.blogspot.co.uk/2013/01/almost-portable-binaries.html?m=1を参照してください。


うまくいけば、この状況はすぐに変化します-適切なPCLサポートが到着するとすぐに、すべてのプラットフォームで同じバイナリのセットを使用できるようになります:)

于 2013-03-24T13:36:29.350 に答える