2014-02-11 57 views
1

我有一个Android应用程序,它使用:片段支持编译错误

  • ActionBarSherlock Xamarin组件
  • MvvmCross片段支持。

我刚刚升级到3.1.1 MvvmCross,我得到了一些错误:

错误2型“Android.Support.V4.App.Fragment”在未引用的程序定义。您必须添加对程序集'Xamarin.Android.Support.v4,版本= 1.0.0.0,Culture = neutral,PublicKeyToken = null'的引用。

错误3类型'Android.Support.V4.App.FragmentActivity'是在未引用的程序集中定义的。您必须添加对程序集'Xamarin.Android.Support.v4,版本= 1.0.0.0,Culture = neutral,PublicKeyToken = null'的引用。

我删除bin和obj文件夹只是为了确保和重建,相同的错误。

如果我添加了Android支持库V4 Xamarin组件,我得到了很多错误,如

错误11类型 'Android.Support.V4.App.ActionBarDrawerToggle' 同时存在于“C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework \ MonoAndroid \ v4.3 \ Mono.Android.Support.v4.dll' and '.. \ xamandroidsupportv4-18-4.18.1 \ lib \ android \ Xamarin .Android.Support.v4.dll' ..MyActionBarDrawerToggle.cs 19 44

如果我删除了Mono.Android.Support.v4,我收到了一个错误,要求我将它放回原位。

+0

你需要移动,使得其assemnbly使用新品牌'Xamarin'支持所有的图书馆 - 看https://bugzilla.xamarin.com/show_bug.cgi?id=15205 – Stuart

+0

感谢司徒但我不明白我该怎么做。我需要从源代码重新编译MvvmCross Droid Fragging插件吗? –

+0

另外,我不明白最新版本的MvvmCross有什么变化,为什么我之前没有这个问题? –

回答

1

看来你有一个老版本的ActionBar Sherlock组件,它引用了Mono.Android.Support.v4,latest version 4.4.0.2使用了新的Android支持库。

enter image description here

希望这有助于。

亚历

+0

非常感谢!组件何时更新!?我没有在Visual Studio中看到任何更新,在Visual Studio中是否有Xamarin组件的通知或任何版本?另外,我误以为在Github上,它仍然是Mono.Android.Support.v4的版本https://github.com/xamarin/monodroid-samples/blob/master/ActionBarSherlock/ActionBarSherlock/ActionBarSherlock.csproj#L45 I猜猜他们没有更新源代码,只是组件!? –