什么是ViewController.swift(接口)文件 - 在Counterparts中

时间:2016-01-07 02:38:34

标签: ios xcode swift uiviewcontroller

我刚刚注意到,当我创建第一个ViewController时,Xcode自动创建了一个名为ViewController.swift (Interface)的文件。

Swift中的类是否需要与Objective-C中的接口相同,并且是由Xcode在幕后创建的?

有人可以这么善良并解释这个档案的目的是什么?

ViewController.swift(界面)

import UIKit

internal class ViewController : UIViewController {

    override internal func viewDidLoad()

    override internal func didReceiveMemoryWarning()
}

2 个答案:

答案 0 :(得分:11)

在C和Objective-C中,您有单独的接口(。h)和实现(。c,.m)文件。

  1. 接口文件可快速查看该类可用于其他代码的所有方法和属性(前提是它们导入了接口文件)。这就像一本书的章节索引。
  2. 另一方面,实现是编写实际方法代码的地方。
  3. 另一方面,

    在Swift 中,没有这样的区别,所有代码都可以自动使用类。当然,优点是项目中的源文件数量大致减少了一半,并且在编码时你不需要在接口文件和实现文件之间来回切换(它是#s; s所有"在一个地方")。

    所以,要弥补缺乏"仅限界面"文件(如C / Objective-C中的标题),Xcode生成一个"即时#34;只是为了向您展示该类的可用方法和属性。您会注意到方法体缺失,以及声明为private的属性和方法(因为它们在类之外是不可访问的,因此根据定义不属于"接口")。 / p>

    它不是一个存在于文件系统中任何位置的真实文件(据我所知)。

答案 1 :(得分:1)

在swift中,您没有单独的接口(或头文件)和实现文件。您只需在同一文件中一起创建类接口和实现。项目的其他部分将自动访问给定文件中引入的类型。

现在进入ViewController.Swift,这是视图的控制器层逻辑所在的文件。请参阅此文档 -

https://developer.apple.com/library/ios/featuredarticles/ViewControllerPGforiPhoneOS/