不幸的是,我在Internet上找不到任何有用的东西-
我想知道,在不使用Swift中的故事板或XIB文件的情况下,初始化应用程序实际上必须输入什么代码。我知道我必须有一个.swift
名为的文件main
。但是我不知道在那写什么(比如我需要autoreleasepool之类的东西?)。例如,我要NSMenu
如何初始化和如何将a添加NSViewController
到活动窗口(iOS的类似方法.rootViewController
无济于事)。谢谢你的帮助
;)
编辑:实际上我不想@NSApplicationMain
在前面使用AppDelegate
。我宁愿知道那里到底发生了什么,然后自己做。
如果您不想拥有@NSApplicationMain属性,请执行以下操作:
import Cocoa
let delegate = AppDelegate() //alloc main app's delegate class
NSApplication.sharedApplication().delegate = delegate //set as app's delegate
// Old versions:
// NSApplicationMain(C_ARGC, C_ARGV)
NSApplicationMain(Process.argc, Process.unsafeArgv); //start of run loop
其余的应该在您的应用程序委托中。例如:
import Cocoa
class AppDelegate: NSObject, NSApplicationDelegate {
var newWindow: NSWindow?
var controller: ViewController?
func applicationDidFinishLaunching(aNotification: NSNotification) {
newWindow = NSWindow(contentRect: NSMakeRect(10, 10, 300, 300), styleMask: .resizable, backing: .buffered, defer: false)
controller = ViewController()
let content = newWindow!.contentView! as NSView
let view = controller!.view
content.addSubview(view)
newWindow!.makeKeyAndOrderFront(nil)
}
}
然后你有一个viewController
import Cocoa
class ViewController : NSViewController {
override func loadView() {
let view = NSView(frame: NSMakeRect(0,0,100,100))
view.wantsLayer = true
view.layer?.borderWidth = 2
view.layer?.borderColor = NSColor.red.cgColor
self.view = view
}
}
问题内容: 我已经阅读了使用XCode故事板来实例化使用XIB进行设计的视图控制器,但是在Swift中使用XCode进行工作时遇到了麻烦(使用Xcode 6 Beta 6)。我想知道我做错了什么还是该功能不再可用? 我创建了一个简单的存储库https://github.com/jer-k/StoryboardTesting- Swift ,展示了上述方法。 我设法通过在init中添加和覆盖来解决此
问题内容: 我正在这样做,我想使用CollectionView,但我还没有看到原型单元,也不知道在这种情况下如何使用CollectionView,有人可以帮助我吗? 我尝试以这种方式使用,但是比UICollectionView要花很多时间并且很难管理 问题答案: 使用UICollectionView的主要方法是通过编程方式管理逻辑。 首先,创建一个继承自的新类。选择是否要包含xib来轻松设计单元格
问题内容: 我可以像下面这样以编程方式创建简单的自定义viewForHeaderInSection。但是我想做更多复杂的事情,例如与不同的类连接,并像tableView单元格一样达到其属性。简而言之,我想看看我在做什么。 有没有人可以解释如何使用xib创建自定义tableView标头视图?我遇到过旧的Obj-C主题,但是我是Swift语言的新手。如果有人详细解释,那太好了。 1.问题: 按钮@IB
问题内容: 我有一个使用自定义方法连接到xib 的子类。 有没有办法可以在方法中初始化此单元格并仍然重用它?还是我必须使用重用标识符注册类本身? 问题答案: 惯用的NIB流程为: 使用重用标识符注册您的NIB。在Swift 3中 } 在Swift 2中: 定义您的自定义单元格类: class NameInput: UITableViewCell { } 在Interface Builder中创建一
问题内容: 我用的很快。我想在Storyboard的TabBar内部使用Navigation。首先,第一个显示出现在选项卡菜单的内部。但是,当我移至第二显示时,第二显示将显示,而没有选项卡菜单。 我选择了segue类型“ show(egPush)” 如何在所有视图上继续显示选项卡菜单? 问题答案: 在界面生成器中: 创建一个并将其设置为初始View Controller。 创建一个。 选择,然后转
错误:for service无法启动服务service:OCI运行时创建失败:CONTAINER_Linux.GO:346:启动容器进程导致“exec:\”sh-c java-dspring.config.location=/application.properties-djava.security.egd=file:/dev/./urandom$java_opts-jar/app.jar\“:s