我有一个 iPad 应用程序,其“抽屉”表格显示在弹出窗口中。用户可以点击并按住抽屉中的项目以将该项目拖出并进入我的主视图。那部分工作正常;不幸的是,被拖动的视图出现在弹出框下方,并且太小而无法看到,直到它从下方拖出。如果我将视图添加为弹出框中视图控制器的子视图,它会被弹出框的框架剪切,并且由于我无法访问UIPopoverController
' 的视图,我无法禁用它的图层masksToBounds
- 这可能不会无论如何都是个好主意。我怀疑我可以使用UIWindow
具有高windowLevel
值的附加项来强制拖动的视图出现在弹出框的顶部,但这似乎有点矫枉过正。有更好的解决方案吗?
问问题
2732 次
2 回答
7
Got it. UIWindow
works fine. Code:
// when drag starts
draggingView = [[UIWindow alloc] initWithFrame:CGRectMake(0,0,100,100)];
draggingView.windowLevel = UIWindowLevelAlert;
draggingView.center = [gestureRecognizer locationInView:self.view.window];
[draggingView makeKeyAndVisible];
// when drag ends
[draggingView release];
draggingView = nil;
于 2010-04-12T14:16:33.167 回答
0
添加Swift版本:
let windows: [UIWindow] = UIApplication.shared.windows
let firstWindow: UIWindow = windows[0]
firstWindow.addSubview(loadingView)
firstWindow.bringSubview(toFront: loadingView)
编辑给管理员:感谢您的评论 - 重复删除了我的其他答案如何在 UIPopoverController 上显示 UIView
于 2017-01-27T03:20:42.943 回答