如何在 Swift 中使用两个 swift 文件和一个 Objective C 文件制作 ScollView

Posted

技术标签:

【中文标题】如何在 Swift 中使用两个 swift 文件和一个 Objective C 文件制作 ScollView【英文标题】:How to make a ScollView with two swift files and one Objective C File in Swift 【发布时间】:2016-03-09 22:49:53 【问题描述】:

我想用两个屏幕制作一个 ScrollView,并用 xib 文件制作它。其中两个是 swift 文件,一个是 Objective C 文件。我创建了三个名为 View1、View2 和 View3 的文件(这是 Objective C 文件)。然后我想用这段代码制作 ScrollView:

    let V1 : View1 = View1(nibName: "View1", bundle: nil)
    let V2 : View2 = View2(nibName: "View2", bundle: nil)
    let V3 : View3 = View3(nibName: "View3", bundle: nil)

    self.addChildViewController(V1)
    self.ScrollView.addSubview(V1.view)
    V1.didMoveToParentViewController(self)

    self.addChildViewController(V2)
    self.ScrollView.addSubview(V2.view)
    V2.didMoveToParentViewController(self)

    self.addChildViewController(V3)
    self.ScrollView.addSubview(V3.view)
    V3.didMoveToParentViewController(self)

    var V2Frame : CGRect = V2.view.frame
    V2Frame.origin.x = self.view.frame.width
    V2.view.frame = V2Frame

    var V3Frame : CGRect = V3.view.frame
    V3Frame.origin.x = self.view.frame.width * 2
    V3.view.frame = V3Frame

    self.ScrollView.contentSize = CGSizeMake(self.view.frame.width * 3, self.view.frame.height)

但是当我想制作 V3 时,出现了:“使用未声明的类型 'View3'”。有没有办法让它工作,并且所有视图控制器都显示在 ScrollView 中,因为显示两个 Swift 文件和一个 Objective C 文件非常重要。

感谢您的回答。

【问题讨论】:

【参考方案1】:

您必须在 Swift 桥接头中输入 #import "View3.h",以便 Swift 可以看到 Objective-C 类 View3。

【讨论】:

以上是关于如何在 Swift 中使用两个 swift 文件和一个 Objective C 文件制作 ScollView的主要内容,如果未能解决你的问题,请参考以下文章

如何引用在不同的 .swift 文件中定义的数据类型?

如何在 Swift/XCTest 中写入本地文件?

如何在 Swift 中使用 MapKit 在两个位置之间绘制路线?

我可以在 xcode 的不同文件夹中使用相同的文件名以及如何在 ios Swift 语言中访问它

Swift - 两个具有相同公共结构的框架

如何检查是不是从 Swift 的 XIB 文件中单击了按钮?