Monotouch/Xamarin更新后静态库不工作



大约两年前,我在我的Monotouch应用程序中构建了一个图像查看器。看到我的这个问题,从很久以前,我正在寻找一个图像查看器的单点触摸。我使用了MTGallery的源代码,并使用btouch将其引入我的Monotouch应用程序。这非常有效,而且在过去的两年里一直非常有效。但在过去六个月的某个时候,我对Monodevelopment所做的一次更新破坏了这一功能。现在,观看者并没有显示图像,只是显示了一个空白屏幕。它的来源没有改变,事实上我仍然拥有两年前编译的库。

我知道在去年年底,我可以编译我的Monotouch应用程序,图像查看器将正常工作。我有2012年12月的应用程序源的备份。如果我将编译后的版本部署到我的iPad上,它就会正常工作。但是,如果我现在重新编译同一个源代码,而不对源代码或Monodedevelop中的设置进行任何更改,那就不起作用了。

所以,这就是我尝试过的:更新了Monodevelopment(我必须将我的Mac操作系统升级到Mountain Lion才能做到这一点)。安装了XamarinStudio并获得了此开发环境的新许可。在MonodevelopeXamarin Studio中编译时,图像查看器不起作用。我尝试过重新编译Objective-C库。我再次尝试使用btouch来重新创建C#文件以包含在我的项目中。

到目前为止,我所尝试的一切都无济于事。有人知道是什么导致了这个问题吗?我可以尝试改变什么来让它发挥作用。

更新:

我现在更进一步了;我已经确定静态库实际上正在被调用,如果我旋转iPad,图像就会显示在查看器中,但在旋转之前不会显示。从Objective-C代码来看,图像最初是由UIScrollView的scrollViewDidEndDecelerating委托方法加载的。当图像查看器加载时,它似乎现在没有启动,而以前它是启动的。

如果它确实有效,但突然不起作用,而您没有任何更改,那么它可能是Xamarin.iOS/Studio中的一个错误。修复此问题的最佳方法是创建一个错误(http://bugzilla.xamarin.com)并附上您的项目,以便我们可以查看它。

最新更新