1

新しい Google アナリティクス SDK では、UIViewController継承する必要がある新しいサブクラスが導入されています: GAITrackedViewController.

詳細はこちら: https://developers.google.com/analytics/devguides/collection/ios/v2/screens

MvxBindingTouchViewControllerC# では 1 つのクラスからしか継承できないため、これは明らかに と衝突します。

これを機能させるための推奨される方法は何ですか?

4

1 に答える 1

0

MvvmCrossのMvxTouchViewControllerは特別です...

MvvmCrossのMvxBindingTouchViewControllerはさらに特別です...

ただし、これらは標準のUIViewController(UIVIewController、UITableViewController、UITabBarControllerなど)から継承し、次の機能を追加するという点でのみ特別です。

  • Cirrious.MvvmCrossレイヤーのViewModel構築とViewModelプロパティ
  • Cirrious.MvvmCross.Bindingレイヤーでのバインディングの構築と保存

いくつかの例を見てください:

これらでは、拡張メソッドを使用して最小化しようとしていますが、これにはかなりの量のコードのカットアンドペーストが含まれていることがわかります。(C#に多重継承またはミックスインがある場合、それを行う必要はありません-ミックスインが欲しいのですが...しかし、多重継承は必要ありません!)

したがって、独自のMvxXXXXXBindingViewControllerを追加する場合は、次のようにします。

  1. 基本のXXXXXクラスを受講してください。
  2. それを継承し、「もの」を追加してMvxXXXXViewControllerを作成します。
  3. 次に、MvxXXXXXViewControllerを取得し、それを再度継承して、MvxBindingXXXXXViewControllerを作成します。
  4. ブログと新しいGitHubリポジトリに公開して、他のすべての人があなたのハードワークを便乗できるようにします
  5. 仕事は終わった

高度なメモ:

  • Droidで同じことを確認したい場合は、MvvmCrossmonodroidアクティビティ内にMonogameビューを挿入するを参照してください。

  • TabBarControllerも興味深いです-いくつかの追加のメソッドがあります

  • ある時点で(今年の前半)VeeThreeを作成し、これによりMvxViewControllerを非ジェネリック形式に切り替えます-これは、MonoTouchがiOSベースクラスでジェネリックを使用しないことを推奨しているためです-Rolfは、ほとんどの場合安全であると述べています時間ですが、それがバグを引き起こすとき、それらは「heisenbugs」です。

  • 現在のクラス(ViewDidUnload)には古いiOSコードもいくつかあります-このコードはVeeThreeでもカリングされます。

于 2013-01-25T10:07:03.357 に答える