与MonoTouch / Xamarin.iOS中的UITableViewController / UISearchDisplayController相关的崩溃

时间:2013-08-01 06:08:40

标签: xamarin.ios crash uitableview xamarin uisearchdisplaycontroller

我在找到应用程序中随机崩溃的原因时遇到问题。只有当我在发布模式下构建并在iPhone或iPad等设备上运行时才会发生崩溃。在模拟器上运行调试时不会发生崩溃。我的猜测是问题与崩溃日志中的这两行有关,

6   UIKit                           0x34a193d0 -[UISearchDisplayController _destroyManagedTableView] + 68
7   UIKit                           0x34a2195a -[UISearchDisplayController dealloc] + 94

我在这里上传了我的UITableViewController的源代码和完整的崩溃日志,https://gist.github.com/Nordis/6128735

非常感谢所有有助于追踪崩溃原因的帮助!

更新

我现在已经创建了一个错误报告,我看了一下Rolf在评论中提出的建议。所以我下载了测试用例,应用了修复程序。但仍然完全相同的崩溃和堆栈跟踪非常类似于我的样子。

https://bugzilla.xamarin.com/show_bug.cgi?id=13703

1 个答案:

答案 0 :(得分:0)

Rolf在Xamarin提供的解决方案非常简单,我所要做的就是将代码从Dispose()移到我的UITableViewController中的ViewDidDisappear(),

public override void ViewDidDisappear (bool animated)
{
    searchController.SearchResultsSource = null;
    searchController.Delegate = null;

    base.ViewDidDisappear (animated);
}