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에 적용해야합니다. 나는 스위프트를 배우기 시작하고 모두의 도움을 크게 주셔서 감사합니다!

당신은 사용자 정의 클래스를 설정할 수 있습니다 : 당신은 이미 당신이 예를 들어 당신의 *.storyboard

에있는 ScrollView 하위 클래스 있음을 쉽게 액세스 할 수 당신의있는 ScrollView에 대한 사용자 정의 클래스를 만들었 때문에

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

여기에 배치하여 스크롤보기

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 클래스 내에서 수동으로하는 것입니다의 한 방법입니다

추 신 : 신속한 코딩 표준을 준수하십시오. 당신은 항상 당신의 ViewController.swift에 따라서이 class featureScrollView: UIScrollViewclass FeatureScrollView: UIScrollView

+0

감사합니다있다. 나는이 문제를 해결할 수 있었다. –

+0

@KevinT는 문제를 해결하기위한 올바른 대답으로 우리 중 한 명을 표시하거나 다른 방법으로 해결하면 자신의 질문에 대답합니다. –