xamarin.ios - 当 ViewDidUnload 不存在时何时调用 ReleaseDesignerOutlets

标签 xamarin.ios uistoryboard

什么时候打电话ReleaseDesignerOutlets对于不是 UIViewController 的自定义 Storyboard UI 类因此没有 ViewDidUnload方法?

外汇。我有一个自定义 UITableViewCell 类,并想发布我的 socket 。我可以看到有一个 protected void Dispose(bool disposing)方法,但无法确定重写此方法是否是正确的方法。

最佳答案

在没有 ViewDidUnload 的情况下,当我的 View Controller 从导航堆栈中移除时,我将释放我的 socket 。这仅在使用 NavigationController 或 PresentViewController 时有效。在这种情况下,Parent 将为 null。

public override void DidMoveToParentViewController(UIViewController parent)
{
  base.DidMoveToParentViewController(parent);

  if(parent == null && cleanupOnNavigationStackRemoval)
    Cleanup();
}


protected void Cleanup()
{
  CleanupBindings();

  ReleaseOutlets();
}

关于xamarin.ios - 当 ViewDidUnload 不存在时何时调用 ReleaseDesignerOutlets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10686389/

相关文章:

xamarin.ios - 设置 MonoTouch.Dialog UITableView 位置?

c# - 自动将 F# 转换为 C#

c# - 在 Xamarin iOS 中以编程方式设置 UITableViewCell 样式

c# - Monotouch OpenGL 类型和 Cocos2d

ios - 使用 Storyboard创建与 iPhone 和 iPad 兼容的应用程序

ios - 我的基本国际化 Storyboard是否必须对应于所有未本地化语言和字符串的后备语言?

ios - 通过 Storyboard使用自动布局创建拉伸(stretch)标题

swift - WatchKit 应用程序中的多个 Storyboard

c# - MonoTouch - 从 Jenkins 运行 mdtool

ios5 - Storyboard中的 PresentModalViewController 以编程方式 iOS 5