我的大部分 UIKitDispose
覆盖在它们被破坏之前对其他视图做一些事情:
protected override void Dispose (bool disposing)
{
if (ScrollView != null) {
ScrollView.RemoveObserver (this, new NSString ("contentOffset"));
ScrollView.RemoveObserver (this, new NSString ("contentInset"));
ScrollView = null;
}
base.Dispose (disposing);
}
我最近才意识到,如果is ,Dispose
它将在终结器线程上运行。
在这种情况下,将从错误的非 UI 线程调用。disposing
false
ScrollView.RemoveObserver
在中进行与 UIKit 相关的清理的安全方法是什么Dispose
?