Я начинаю быстрый программист.Выражения не допускаются на верхнем уровне
Следующий код кажется компилировать штраф в Xcode 7.0 Playground (без видимых ошибок):
//: Playground - noun: a place where people can play
//#!/usr/bin/env xcrun swift
import WebKit
let application = NSApplication.sharedApplication()
application.setActivationPolicy(NSApplicationActivationPolicy.Regular)
let window = NSWindow()
window.setContentSize(NSSize(width:800, height:600))
window.styleMask = NSTitledWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask
window.center()
window.title = "Minimal Swift WebKit Browser"
window.makeKeyAndOrderFront(window)
class WindowDelegate: NSObject, NSWindowDelegate {
func windowWillClose(notification: NSNotification) {
NSApplication.sharedApplication().terminate(0)
}
}
let windowDelegate = WindowDelegate()
window.delegate = windowDelegate
class ApplicationDelegate: NSObject, NSApplicationDelegate {
var _window: NSWindow
init(window: NSWindow) {
self._window = window
}
func applicationDidFinishLaunching(notification: NSNotification) {
let webView = WebView(frame: self._window.contentView!.frame)
self._window.contentView!.addSubview(webView)
webView.mainFrame.loadRequest(NSURLRequest(URL: NSURL(string: "http://www.apple.com")!))
}
}
При вставке, что точно такой же код в файл «AppDelegate.swift» нового приложения какао для OSX, Я получаю 7 ошибок, все точно такие же: «Выражения не допускаются на верхнем уровне».
В результате поиска я понял, что игровая площадка допускает то, что обычные проекты не выполняют, а ошибки возникают, потому что выражения «вне метода класса или экземпляра».
Однако я не уверен, как программа может быть изменена для правильной сборки.
Переместить объявления переменных в метод объекта. Как насчет инициализации вашей ApplicaitonDelegate? – ArtOfWarfare