C# 将类型Android Fragment转换为MvxFragment
我正在将我们的代码库更新为最新的MVVMCross库。我遇到错误,错误如下: 错误CS0030:无法将类型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中应该使用的内容整合起来,以取代以前使用的内容。我认为问
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;
}