Sagen wir, ich habe ein einfaches Layout mit einer MvxListView:
%Vor%Das Layout meiner Artikelvorlage lautet wie folgt:
%Vor%Ich möchte die Bindungen für die zwei textview-Elemente in meinem itemtemplate aus dem Code dahinter angeben. Ich bin nicht sicher, wie es am besten geht. Ich denke, ich könnte etwas "OnViewModelSet" in der Ansicht Code hinter der MvxListView tun. Ich habe folgendes versucht, aber es funktioniert offensichtlich nicht, weil es die Kontrolle nicht finden kann.
%Vor%Mein anderer Gedanke war, das oncreate für die itemtemplate-Ansicht irgendwie abzufangen, aber OnCreate wird nicht aufgerufen, wenn ich eine View-Code-Datei für mein itemtemplate-Layout erstelle.
Um die Bindungen im Code zu machen, ist es wahrscheinlich am besten:
MvxListViewItem
MvxAdapter
, um das benutzerdefinierte Listenansichtselement MvxListView
, um die benutzerdefinierte MvxAdapter
zu verwenden
Nicht getestet, aber der Code dafür ist ungefähr:
MvxListViewItem
MvxAdapter
In diesem Override CreateBindableView
original: Ссылка
MvxListView
für die Verwendung des Adapters Dies sollte so einfach sein wie:
%Vor%Solange sich dies in Ihrer Hauptbenutzeroberflächen-Assembly befindet, sollte dies in Ihrer axml als
verwendet werden können %Vor% Wenn sich CustomListView
nicht in Ihrer Hauptbenutzeroberflächen-Assembly befindet, gibt es einige Tricks, um MvvmCross dazu zu bringen, sie während Ihres Setup
zu übernehmen - siehe Bereitstellung von benutzerdefinierten Android View Assemblies in Ссылка
Dies ist der beste Weg, dies zu tun (IMO) - aber wenn Sie wollten, dann könnten Sie es in weniger Code tun, indem Sie einfach die Bindungen innerhalb des benutzerdefinierten Adapters anwenden und diesen Adapter in OnCreate
in Ihrem setzen Activity
Tags und Links android xamarin.android mvvmcross