将视图从UITableViewCell移动到Window并返回到相同的单元格

时间:2013-05-14 15:15:51

标签: ios objective-c uiview uitableview uiviewcontroller

我正在创建一个SDK,其中我有一个视图,可以执行各种任务,例如展开和翻转,而不是详细介绍。

在一个可能的用例中,用户可以将视图放在UITableViewCell中。为了使扩展正常工作,我将视图从superview中删除并添加为窗口的子视图。如此:

[mySDKView removeFromSuperview];

UIWindow* window = [UIApplication sharedApplication].keyWindow;

if (!window) {
    window = [[UIApplication sharedApplication].windows objectAtIndex:0];
}

[window addSubview:mySDKView];

现在我需要弄清楚如何将它放回表格单元格!要么自动为用户抽取(首选),要么我可以将其留在文档中供他们使用。

1 个答案:

答案 0 :(得分:0)

展开后,存储mySDKView的superview(下面名为savedSuperView)。

在未扩展的情况下执行:

if (savedSuperView) {
    [savedSuperView addSubview:mySDKView];
} else {
    [viewController.view addSubview:mySDKView];
}