Я пытаюсь создать представление MonoGame внутри MvvmCross на Android, iOS и WP8. На стороне Windows относительно легко использовать свойства зависимостей в качестве цели привязки, но как я могу получить решение для привязки к перекрестной платформе, которое я могу использовать на всех платформах?MvvmCross - MonoGame
2
A
ответ
1
Это было покрыто в предыдущей версии MvvmCross - см Insert a Monogame view inside MvvmCross monodroid Activity
Технические детали имеют изменения немного, так как этот пост, но основная часть рекомендаций остается тем же - использование наследования для добавления привязки данных.
Например, если вы хотите, чтобы адаптировать FooActivity
или FooViewController
базового класса так, что он может быть использован для MvvmCross связывания данных, то вам необходимо:
- унаследуют от
FooActivity
обеспечитьEventSourceFooActivity
- сделать это вам нужно добавить уведомления о событиях так, как показано в MvxEventSourceFragmentActivity.cs - наследоваться от
EventSourceFooActivity
обеспечитьBindingFooActivity
- для этого вам нужно добавить все члены, какDataContext
от MvxFragmentActivity.cs
Процесс для Touch/iOS очень похож, но с конкретными событиями и членами iOS. Взгляните на любой из классов Mvx*ViewController
, чтобы увидеть, что происходит.
Этот метод также обсуждается в: Integrating Google Mobile Analytics with MVVMCross
Когда вы получите эту работу, я хотел бы, если результаты были разделены для сообщества - тоже очень интересно посмотреть, как MonoGame и MVVM могут быть объединены вместе:) – Stuart
Мой большой вопрос в том, могу ли я использовать эту технику, чтобы добавить GameComponent способность иметь связываемые свойства .. использовать их как каждый элемент ui дня. (а также создать один единый GameComponent для всех платформ или мне нужно создать компоненты, специфичные для платформы (ios/android/wp8/win8)?) * btw atm я не вижу, как это можно с решением, которое вы описали ... но я могу ошибаться. –
У меня есть MonoGame, работающая с версией Xaml с использованием Prism для Mvvm. Также Farseer для физики. Вы даже можете, чтобы спрайты MonoGame взаимодействовали с вашими элементами Xaml. – Todd