macos - 使用 Swift 开发从一个 ViewController 到另一个 ViewController 的 mac 应用程序滑动(不使用 Storyboard)

标签 macos swift

我是新开发的 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/

相关文章:

python - 升级权限被拒绝 : how to upgrade pip on Mac OS X?

c - read() 是否位于 Linux(OSX、FreeBSD)以外的平台上的非阻塞套接字 "greedy"上?

objective-c - 如何打开文件/目录获取信息窗口?

ios - 在 iPad 上处理旋转到横向模式

ios - 如何以编程方式在 Swift 3 上复制 UILabel 样式

c++ - 为什么我在 32 位 Mac OS X 系统上看到 C++ 中的 64 位指针?

macos - 在 ASP.NET Core 中的 Mac Docker 上运行的 SQL Server 的连接字符串是什么?

ios - 如何在自身类中设置 UIBarButtonSystemItem (Swift)

ios - 如何测试 UIAlertController 的完成处理程序中调用的方法?

ios - 如何快速关闭弹出窗口