2016-08-26 3 views
0

스토리 보드에 2 개의 ViewController가 있습니다 (RootViewControllerDetailViewController). DetailViewController에서 내 레이블 및 다른 것들이 들어갑니다.PageViewController로 인해 PickerView가 나타나지 않습니다.

RootViewControllerUIPageViewController에 여러 개의 ViewController를 추가 했으므로 수평으로 스크롤 할 수 있습니다.

문제는 RootViewControllerUIPickerView을 추가 할 때 발생하며 앱을 실행할 때 표시되지 않습니다.

Xcode에서 PageViewController로 재생할 페이지 기반 응용 프로그램을 만들었습니다. 프로젝트를 작성하면 많은 기본 코드가 들어옵니다. 문제점이있는 부분을 알려 주시기 바랍니다.

override func viewDidLoad() { 
    self.pickerView = UIPickerView() 
    self.pickerView?.delegate = self 
    self.pickerView?.hidden = false 

    // Configure the page view controller and add it as a child view controller. 
    self.pageViewController = UIPageViewController(transitionStyle: .Scroll, navigationOrientation: .Horizontal, options: nil) 
    self.pageViewController!.delegate = self 

    let startingViewController: DataViewController = self.modelController.viewControllerAtIndex(0, storyboard: self.storyboard!)! 

    let viewControllers = [startingViewController] 
    self.pageViewController!.setViewControllers(viewControllers, direction: .Forward, animated: false, completion: {done in }) 

    self.pageViewController!.dataSource = self.modelController 

    self.addChildViewController(self.pageViewController!) 
    self.view.addSubview(self.pageViewController!.view) 

    // Set the page view controller's bounds using an inset rect so that self's view is visible around the edges of the pages. 
    var pageViewRect = self.view.bounds.offsetBy(dx: CGFloat(0), dy: CGFloat(45)) 
    if UIDevice.currentDevice().userInterfaceIdiom == .Pad { 

     pageViewRect = CGRectInset(pageViewRect, 40.0, 40.0) 
    } 
    self.pageViewController!.view.frame = pageViewRect 

    self.pageViewController!.didMoveToParentViewController(self) 
} 

답변

0

이 bringSubviewToFront.It 당신에게 도움이 될 수 사용해보십시오

[parentView bringSubviewToFront : childView] 스위프트

parentView.bringSubviewToFront (childView)에서

같은

: parentView.bringSubviewToFront (self.pickerView)

+0

일부 코드를 추가했습니다. 그것을 밖으로 검사해라 – bCM

+0

그것을 시험해 보았다. 그러나 doesnt는 일한다. 화면에 단추 동작을 추가했으며 탭 한 번으로 PickerView를 표시하고 행을 선택하면 PickerView가 사라집니다. – bCM

+0

이 코드를 테이블보기에 추가 didSelect 메서드 – Sanjukta

0

컨트롤러보기에 UIPickerView를 추가하고 UIPickerView 프레임을 설정합니다.

let pickerView = UIPickerView(frame: yourFrame) 
pickerView.dataSource = self 
pickerView.delegate = self 

controller.view.addSubview(pickerView)