Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

bati668/BTPagerViewController

Open more actions menu

Repository files navigation

BTPagerViewController

BTPagerViewController is a PagerTabStrip ViewController. It contains an endlessly scrollable UIScrollView.

This viewController inspired NKJPagerViewController. The biggest of difference is written in pure swift.

Requirements

BTPagerViewController higher requires Xcode 7, targeting either iOS 8.0 and above

Installation

CocoaPods

pod 'BTPagerViewController', :git => 'https://github.com/bati668/BTPagerViewController.git'

Usage

Implement as subclass of BTPagerViewController and imprement dataSource and delegate methods in the subclass.

required init?(coder aDecoder: NSCoder) 
{
  super.init(coder: aDecoder)
   self.delegate = self
   self.dataSource = self
}

BTPagerViewDataSource

Decide number of tabs.

func numberOfTabView() -> Int
{
  return 10
}

Decide width for each tab.

func widthOfTabViewWithIndex(index: Int) -> CGFloat
{
  return 160
}

Setting a view design for each tab.

func viewForTabAtIndex(viewPager: BTPagerViewController, tabIndex: Int) -> UIView {
   let label = UILabel(frame: CGRect(x: 0, y: 0, width: 160, height: 44))
   label.backgroundColor = UIColor.grayColor()
   label.font = UIFont.systemFontOfSize(12)
   label.text = "Tab: \(tabIndex)"
   label.textAlignment = .Center
   label.textColor = UIColor.blackColor()
   return label
}

Setting a view controller for each tab.

func contentViewControllerForTabAtIndex(viewPager: BTPagerViewController, index: Int) -> UIViewController
{
    var viewControllerArray: Array<UIViewController> = []
    for _ in 0 ..< 10 {
    let controller = UIViewController()
    viewControllerArray.append(controller)
    }
    return viewControllerArray[index]
}

BTPagerViewDelegate

This method is option.

func viewPagerdidSwitchAtIndex(viewPager: BTPagerViewController, index: Int, tabs: Array<AnyObject>)
{
// do something did Switch tab
}
func viewPagerWillTransition(viewPager: BTPagerViewController)
{
// do something when willTransition
}
func viewPagerWillSwitchAtIndex(viewPager: BTPagerViewController, index: Int, tabs: Array<AnyObject>)
{
// do something when will switch tab index
}
func viewPagerDidTapMenuTabAtIndex(viewPager: BTPagerViewController, index: Int)
{
// do something when tapped tab 
}

Author

bati

License

BTPagerViewController is available under the MIT license. See the LICENSE file for more info.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
Morty Proxy This is a proxified and sanitized view of the page, visit original site.