2017-12-31 38 views
0

대답은 xamarin을 사용하고 있어도 신속하고 객관적인 C 또는 C# 일 수 있습니다. xamarin으로 스토리 보드에 scrollview를 만드는 데 문제가 있습니다. xcode에 대한 자습서를 여러 번 따라 왔지만 필요한 것을 할 수 없습니다.IOS에서보기 전에 scrollview를 삽입 할 수 있습니까?

그런 다음 scrollview를 제거하고 긴 세로 uiview가 있고 실제로 uiview 프레임을 움직이는 pangesture를 사용하여 스크롤하는 코드를 추가했습니다.

하지만 srollview를 사용하는 것이 더 낫다는 것을 알고 있습니다. 동일한 것을 달성하기 위해 (코드에서)보기 전에 scrollview를 삽입 할 수 있어야합니다.

그래서 가능합니까?

+1

왜 그렇습니까? 여러분이 가지고 있거나 시도한 코드 중 일부를 보여 주면 우리는 프로젝트에서 어떻게 할 수 있는지 보여 줄 수 있습니다. –

답변

2

예, 예를 들어 ScrollView를 하위보기로보기에 추가하여 ViewController에서이 작업을 수행 할 수 있습니다.

override func viewDidLoad() { 
    super.viewDidLoad() 

    let scrollViewFrame = view.bounds 
    let scrollView = UIScrollView(frame: scrollViewFrame) 
    scrollView.autoresizingMask = [.flexibleWidth, .flexibleHeight] 
    scrollView.backgroundColor = UIColor.red 
    view.addSubview(scrollView) 

    let innerView = UIView(frame: CGRect(x: 0, y: 0, width: 50, height: 50)) 
    innerView.backgroundColor = UIColor.blue 
    scrollView.addSubview(innerView) 

    scrollView.contentSize = CGSize(width: scrollViewFrame.width, height: scrollViewFrame.height * 2) 
} 

이 예제에서 ScrollView는 기본보기와 크기가 같습니다. scrollViewFrame 상수를 변경하여이를 조정할 수 있습니다.

innerView의 고정 크기는 50x50입니다. 전체 scrollView를 커버해야한다면, scrollViewFrame과 같은 autoresizingMask을 사용하면됩니다.

나는 scrollView의 2 배가되도록 조정하여 스크롤합니다. 이는 솔루션에 필요할 수도 있고 그렇지 않을 수도 있습니다.

+2

그리고 뷰의 프레임이 변경 될 때마다 스크롤 뷰의 프레임을 업데이트 (또는 자동 레이아웃 사용)해야한다는 것을 잊지 마십시오. –

+0

@UpholderOfTruth 좋은 지적으로, 필자는 내 대답을 업데이트하고 이에 따라 자동 크기 조정 마스크를 설정했습니다. – florieger

+0

그리고 그 때문에 upvote를 가질 수 있습니다. –