2017-04-17 5 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()のコードが画面上に現在あるscrollViewに適用されています。私はSwiftを学び始めています。皆さんの助けに感謝します。

image of ScrollView and corresponding class

答えて

2

バインド(あなたがhttps://i.stack.imgur.com/5HRH0.pngに示されているScrollview)scrollviewのIBOutletのように名前を付ける必要があり、大文字とクラス名を開始し、ちょうどloadFeaturesを呼び出す必要があります()からそのコンセントでViewController.swiftを起動します。

元。、あなたが命名先端のための

class ViewController: UIViewController { 

@IBOutlet weak var scrollView: featureScrollView! 

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

} 
+0

ありがとうございました!!! –

0

あなたはすでにあなたがたとえば、あなたの*.storyboard

であなたのscrollViewをサブクラス化することを簡単にアクセスすることができ、あなたのScrollViewのためのカスタムクラスを作ったので:

あなたはカスタムクラスを設定することができますスクロールビューの位置をここに配置します。

enter image description here

この

enter image description here

ノートのようになります。10

は:これは物事

もう一つは、この

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() 

    } 
} 
のようなあなたの UIViewControllerクラス内のそれを手動で行うことですのひとつの方法であります

PS:迅速なコーディング標準に準拠してください。あなたはいつもあなたのViewController.swiftにおけるので、このclass featureScrollView: UIScrollViewこのclass FeatureScrollView: UIScrollView

+0

おかげで以下のようにのような口をバインドしたら。私は問題を解決するために成功しました –

+0

@KevinTは正しい答えとして私たちのうちの1人をマークして、問題を解決したり、別の方法で解決したらあなた自身の質問に答えます。 –