2017-04-17 91 views
1

使用swift 3,我在我的主視圖中有一個UIScrollView。我把它稱爲我的「功能滾動視圖」如何從主視圖控制器訪問滾動視圖子類(初學者)

我還添加了一個自定義類來我的UIScrollView,其中有一個功能叫loadFeatures()

featureScrollView.swift:

class featureScrollView: UIScrollView { 

public func loadFeatures() { 
    //Add Pictures to the UIScrollView 
} 

我該怎麼辦在我的主視圖中從ViewController.swift類中存在的UIScrollView實例上調用loadFeatures()

在我ViewController.swift我想簡單地寫

scrollView.loadFeatures() 

,並在loadFeatures()代碼應用到了滾動當前在屏幕上。我開始學習Swift,我非常感謝大家的幫助!

image of ScrollView and corresponding class

回答

2

綁定滾動型的IBOutlet中(滾動型您在https://i.stack.imgur.com/5HRH0.png顯示)開始的類名稱並調用loadFeatures()從帶有該插座的ViewController.swift。

前,一旦你綁定的出口就像如下

class ViewController: UIViewController { 

@IBOutlet weak var scrollView: featureScrollView! 

override func viewDidLoad() { 
     super.viewDidLoad() 
     scrollView.loadFeatures() 
    } 

} 
+0

非常感謝! –

0

既然你已經做了一個自定義類的滾動型,你可以很容易地訪問通過繼承你的滾動視圖在*.storyboard

例如:

您可以設置自定義類把你的scrollView放置在這裏

enter image description here

將目光像這樣

enter image description here

注:這是做事

另一種是手工做你UIViewController類中這樣

class ViewController: UIViewController { 

    var ftScrollView: FeatureScrollView! 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     ftScrollView = FeatureScrollView() // I Initialized the scrollView 
     ftScrollView.frame = // some frame here 
     view.addSubView(ftScrollView) 
     ftScrollView.loadFeatures() 

    } 
} 
只是一種方法

PS:請遵守swift編碼標準。你應該總是在你的ViewController.swift一個大寫字母,因此該class featureScrollView: UIScrollView應該被命名爲這樣class FeatureScrollView: UIScrollView

+0

感謝命名提示。我設法解決問題 –

+0

@KevinT標記我們其中一個人是解決問題的正確答案,或者如果以另一種方式解決問題,請回答自己的問題。 –

相關問題