我是新开发的 mac 应用程序。当我想按照标题中所说的进行操作时,presentViewController 方法出现错误,说我传递了错误的参数,但传递的内容与它想要的完全相同。 错误消息说“无法使用类型的参数列表调用‘presentViewController’...”
import Cocoa
class MainViewController: NSViewController {
var uploadViewController: UploadViewController!
@IBOutlet weak var HostFileList: NSScrollView!
@IBOutlet weak var AddFileToHost: NSButton!
@IBOutlet weak var DeleteFileFromHost: NSButton!
@IBOutlet weak var Host: NSTextField!
@IBOutlet weak var Port: NSTextField!
@IBOutlet weak var ConnectServer: NSButton!
@IBOutlet weak var UploadFile: NSButton!
override func viewDidLoad() {
super.viewDidLoad()
// Do view setup here.
}
}
extension MainViewController {
@IBAction func UploadFile(sender: AnyObject) {
var uploadViewController = UploadViewController(nibName: "MasterViewController", bundle: nil)
self.presentViewController(uploadViewController, animator: NSTableViewAnimationOptions.SlideRight)
}
}
最佳答案
在 OSX 上,没有 UINavigationController 为你做推送/弹出的东西和动画!
因此您必须自己使用 ViewAnimations 和 removeFromSuperview 以及 addSubview 来手动切换 View 。
还有很多现成的方法可以让你在 mac 上做类似 iOS 的事情:https://www.google.de/search?client=safari&rls=en&q=uinavigationcontroller+osx&ie=UTF-8&oe=UTF-8&gfe_rd=cr&ei=T3OjVfeqPNfIgATS64G4Dw
乍一看最轻量级的是:
https://github.com/bfolder/BFNavigationController
(注意:我不是作者,我什至不认识他!:D)
关于macos - 使用 Swift 开发从一个 ViewController 到另一个 ViewController 的 mac 应用程序滑动(不使用 Storyboard),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31378122/