Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将类型Android Fragment转换为MvxFragment_C#_Android_Xamarin.android_Mvvmcross - Fatal编程技术网

C# 将类型Android Fragment转换为MvxFragment

C# 将类型Android Fragment转换为MvxFragment,c#,android,xamarin.android,mvvmcross,C#,Android,Xamarin.android,Mvvmcross,我正在将我们的代码库更新为最新的MVVMCross库。我遇到错误,错误如下: 错误CS0030:无法将类型Android.Support.V4.App.Fragment'转换为MvvmCross.Droid.FullFragging.Fragments.MvxFragment'(CS0030)(QualBoard.Mobile.Droid) 代码: 问题子行是:((MvxFragment)fragment) 我很难将MVVMCross版本4中应该使用的内容整合起来,以取代以前使用的内容。我认为问

我正在将我们的代码库更新为最新的MVVMCross库。我遇到错误,错误如下:

错误CS0030:无法将类型
Android.Support.V4.App.Fragment'转换为
MvvmCross.Droid.FullFragging.Fragments.MvxFragment'(CS0030)(QualBoard.Mobile.Droid)

代码:

问题子行是:
((MvxFragment)fragment)


我很难将MVVMCross版本4中应该使用的内容整合起来,以取代以前使用的内容。

我认为问题在于您使用了错误的
MvxFragment
类类型

Mvvmcross提供两种
MvxFragment
类类型来匹配Android中提供的类:

  • 本机片段-可在中找到并提供
    MvvmCross.Droid.FullFragging.Fragments.MvxFragment
    。该类与中引入的本机Android
    片段
    匹配
  • 支持库Fragmet-可在中找到并提供
    MvvmCross.Droid.Support.V4.MvxFragment
    。该类与
错误CS0030:无法将类型
Android.Support.V4.App.Fragment
转换为
MvvmCross.Droid.FullFragging.Fragments.MvxFragment


从您的错误来看,我想说您使用的是支持库中的片段,因此应该使用
MvvmCross.Droid.support.V4.MvxFragment

我认为问题在于您使用了错误的
MvxFragment
类类型

Mvvmcross提供两种
MvxFragment
类类型来匹配Android中提供的类:

  • 本机片段-可在中找到并提供
    MvvmCross.Droid.FullFragging.Fragments.MvxFragment
    。该类与中引入的本机Android
    片段
    匹配
  • 支持库Fragmet-可在中找到并提供
    MvvmCross.Droid.Support.V4.MvxFragment
    。该类与
错误CS0030:无法将类型
Android.Support.V4.App.Fragment
转换为
MvvmCross.Droid.FullFragging.Fragments.MvxFragment

从您的错误来看,我想说您使用的是来自支持库的片段,因此应该使用
MvvmCross.Droid.support.V4.MvxFragment

您查看过该库吗?我对片段的了解还不够,无法提供实际帮助,但希望@Stuart能很快找到这一点,并为您提供一个真实的答案。您查看过库吗?我对碎片的了解还不够,无法提供实际帮助,但希望@Stuart能很快找到这一点,并为您提供一个真正的答案。
public override Fragment GetItem(int position)
{
    var frag = Fragments.ElementAt(position);
    var fragment = Fragment.Instantiate(_context,
        FragmentJavaName(frag.FragmentType));
    ((MvxFragment)fragment).DataContext = frag.ViewModel;
    return fragment;
}