현재 Android 및 iOS 용 crossplatform-app를 구현 중입니다.NavigationDrawer MvxListView의 AddFooter 메소드 - NullReferenceException
매우 도움 (A DrawerLayout를 사용하여) 벤자민 Hysell의 데모를 발견하면 나는 MvvmCross과 플라이 아웃 내비게이션을 사용할 이후 :
코드 : https://github.com/benhysell/V.FlyoutTest
기반 이 코드에서는 플라이 아웃 탐색 메뉴 아래에 몇 가지 추가 컨트롤을 추가하려고했습니다.
그래서 HomeView에, 나는 응용 프로그램을 시작할 때, 내가 플라이 아웃 메뉴에 내 여분의 컨트롤을 포함, 모든게가 잘 볼 수있는, 지금protected override void OnCreate(Bundle savedInstanceState)
{
// ....
var layout = this.BindingInflate(Resource.Layout.DrawerFooterView, null);
drawerList.AddFooterView(layout);
}
방법
의 끝에 다음 코드를 추가했다. 그러나 곧 나는 내가 MvvmCross에서 NullReferenceException이 얻을, 메뉴 항목을 누릅니다 : 나는 밖으로 아이디어이기 때문에04-25 17:42:20.892 I/MonoDroid(32443): UNHANDLED EXCEPTION: System.NullReferenceException: Object reference not set to an instance of an object
04-25 17:42:20.892 I/MonoDroid(32443): at Cirrious.MvvmCross.Binding.Droid.Views.MvxListView.ExecuteCommandOnItem (System.Windows.Input.ICommand,int) <IL 0x0000b, 0x000a0>
04-25 17:42:20.892 I/MonoDroid(32443): at Cirrious.MvvmCross.Binding.Droid.Views.MvxListView.<EnsureItemClickOverloaded>b__0 (object,Android.Widget.AdapterView/ItemClickEventArgs) <IL 0x0000d, 0x000a7>
04-25 17:42:20.892 I/MonoDroid(32443): at Android.Widget.AdapterView/IOnItemClickListenerImplementor.OnItemClick (Android.Widget.AdapterView,Android.Views.View,int,long) [0x0000d] in /Users/builder/data/lanes/monodroid-mlion-monodroid-4.12-series/a1e3982a/source/monodroid/src/Mono.Android/platforms/android-15/src/generated/Android.Widget.AdapterView.cs:261
04-25 17:42:20.892 I/MonoDroid(32443): at (wrapper dynamic-method) object.289e379c-ed35-42d0-8505-cc91a6c90d7b (intptr,intptr,intptr,intptr,int,long) <IL 0x00029, 0x0009b>
사람이 문제에 도움을 제공 할 수 있습니다.
도움을 주시면 감사하겠습니다.
어떤 레이아웃과 뷰 모델처럼 보이나요? – Kiliman
@Kiliman, 'DrawerFooterView'의 레이아웃은 TextViews가있는 간단한 LinearLayout이며 'DrawerFooterViewModel'은 아직 비어 있습니다. 이러한 TextViews는 아직 어떤 속성에도 바인딩되어 있지 않기 때문입니다. – gridr
아마도 https://github.com/MvvmCross/MvvmCross/issues/602에 링크되어 있습니다. – Stuart