据我所知,已经有人问过同样的问题了,我仍然没有运气来实现" X"表单工作模式视图角落中的按钮。
我可以在屏幕截图HERE中看到我想要实现的完美示例。 (如果有> = 10位代表的人可以通过在此处发布此图片来帮助我编辑此帖子,我将不胜感激。谢谢)。
徒劳无功,我尝试在模态视图的View Controller类的viewDidLoad中实现一个UIButton,框架为CGRectMake(-10, -10, 20, 20)
,但正如预期的那样,按钮没有&#t;# 34;悬停"在模态视图的左上角按预期。
我偶然发现的一些问题:
How to create view with close button above the corner?(正确答案导致github项目,我无法找到相关代码。第二个答案并未谈及" X&#的实施34;角落里的按钮。)
Add close button to UIModalPresentationPageSheet corner(答案建议左栏按钮项目。这是一个很好的选择,但不是我们问题的主要目的是什么。)
how to add close button to modal view corner which is presented in UIModalPresentationPageSheet?(回答不要工作,我不明白为什么。我也不理解答案的逻辑。)
我已经有了#34;点击外部模态视图以解雇"工作,现在我需要在HCI的顶部有一个小关闭按钮。感谢您的时间!干杯!
答案 0 :(得分:0)
如果没有看到您的代码,很难提供代码级别的帮助,但我相信您可以在此cocoa控件github源代码的代码中找到答案。它有一个模态弹出窗口和一个用于关闭它的x按钮。您可以添加任何类型的uiview。无论值得什么,这里都是源代码的链接:
答案 1 :(得分:0)
在尝试弄清楚如何取消工作表视图时,我遇到了类似的问题。从我所阅读的内容来看,必须通过显示它的视图将其解散。视图控制器具有对当前视图的引用,因此工作表视图请求其父项关闭工作表(自身)。
使用按钮实现后,我发现了有关cancelOperation的信息,该信息捕获了esc或“ command-”。都可以。
我不确定这是否是正确的做法,但对我来说(到目前为止)有效。
class PopupSheet : NSViewController {
// dismiss if ok button is clicked
@IBAction func buttonClicked(_ sender: Any?) {
self.presentingViewController?.dismiss(self)
}
// dismiss if esc or command-. is pressed
override func cancelOperation(_ sender: Any?) {
self.presentingViewController?.dismiss(self)
}
}