我使用MvxListView作为NavigationDrawer。绑定工作正常,但它只与ViewModel通信。由于ViewModel无法识别相应的View我有一个问题,因为我需要强制View关闭我的NavigationDrawer。我尝试在MvxListView_ItemSelected上执行此操作,但它不会触发。
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.EventSetListView);
var sub = (EventSetListFrag)SupportFragmentManager.FindFragmentById(Resource.Id.MyFrag);
sub.ViewModel = _viewModel;
_drawer = FindViewById<DrawerLayout>(Resource.Id.eventSetList_DrawerLayout);
_drawer.SetDrawerShadow(Resource.Drawable.drawer_shadow, 3);
_drawerList = FindViewById<MvxListView>(Resource.Id.eventSetList_NavigationList);
SupportActionBar.SetDisplayHomeAsUpEnabled(true);
SupportActionBar.SetHomeButtonEnabled(true);
_drawerToggle = new DrawerToggle(this, _drawer,
Resource.Drawable.ic_drawer,
Resource.String.drawer_open,
Resource.String.drawer_close);
_drawer.SetDrawerListener(_drawerToggle);
_drawerList.ItemSelected += _drawerList_ItemSelected;
}
和..抽屉布局
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res-auto"
android:id="@+id/eventSetList_DrawerLayout"
...>
<fragment
... />
<MvxListView
android:id="@+id/eventSetList_NavigationList"
local:MvxBind="ItemsSource Collection; ItemClick SomeCommand;SelectedItem SelectedItem"
local:MvxItemTemplate="@layout/navitem"
android:layout_marginLeft="15dp"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="#101010"
android:dividerHeight="1dp"
android:background="#303030"
android:listSelector="#9b2828" />
</android.support.v4.widget.DrawerLayout>