2015-11-15 4 views
0

enter image description hereКак использовать UITabBar программно

Swift язык

Главная проблема

В образе У меня есть зеленый и синий вид. Я могу провести между этими двумя видами, и теперь я хочу реализовать UITabBar, поэтому я знаю, на каком представлении я выбрал. Я попробовал UIPageControl, но я никак не могу настроить индикаторы. Я попытался создать UITabBarController, но я не знаю, где его поставить.

Первая попытка

Если я подключить UITabBarController с зеленый и голубой зрения с помощью перетекает то индикатор не будет загружаться, только бар.

Вторая попытка

Если я подключаю UITabBarController с pageviewcontroller или контейнера зрения он добавит их в индикатор и при подключении к голубой и зеленый вид после того как я не смогут скользить.

Последняя попытка (не пробовал)

Единственное, что я не пробовал это делает программно внутри файла pageviewcontrollers.swift. Я не знаю, как реализовать программный код TabBar, и я хотел бы попросить некоторую помощь. Если вы хотите знать, почему я предпочитаю использовать UITabBar вместо , элемент управления - это потому, что я могу редактировать индикаторы на значки.

Код в pageviewcontroller

import UIKit 

class secondPageViewController: UIPageViewController , UIPageViewControllerDataSource, UIPageViewControllerDelegate { 

    var pages = [UIViewController]() 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     self.delegate = self 
     self.dataSource = self 

     let page4: UIViewController! = storyboard?.instantiateViewControllerWithIdentifier("page4") 
     let page5: UIViewController! = storyboard?.instantiateViewControllerWithIdentifier("page5") 



     pages.append(page4) 
     pages.append(page5) 



     setViewControllers([page4], direction: UIPageViewControllerNavigationDirection.Forward, animated: false, completion: nil) 
    } 


    func pageViewController(pageViewController: UIPageViewController, viewControllerBeforeViewController viewController: UIViewController) -> UIViewController? { 


     let currentIndex = pages.indexOf(viewController)! 


     let previousIndex = abs((currentIndex - 1) % pages.count) 


     if (previousIndex > 0) 
     { 
      return nil 
     } 



     return pages[previousIndex] 
    } 

    func pageViewController(pageViewController: UIPageViewController, viewControllerAfterViewController viewController: UIViewController) -> UIViewController? { 
     let currentIndex = pages.indexOf(viewController)! 
     let nextIndex = abs((currentIndex + 1) % pages.count) 


     if (nextIndex < 1) 
     { 
      return nil 
     } 

     return pages[nextIndex] 

    } 






    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
     // Dispose of any resources that can be recreated. 
    } 


} 

ответ

Смежные вопросы