Multi-tier UIScrollView nested scrolling solution.
- iOS 9.0+
- Xcode 10.0+
- Swift 4.2+
CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:
$ gem install cocoapodsCocoaPods 1.1.0+ is required to build SegementSlide.
To integrate SegementSlide into your Xcode project using CocoaPods, specify it in your Podfile:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'
use_frameworks!
target '<Your Target Name>' do
pod 'SegementSlide', '3.0.1'
endThen, run the following command:
$ pod installCarthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.
You can install Carthage with Homebrew using the following command:
$ brew update
$ brew install carthageTo integrate SegementSlide into your Xcode project using Carthage
- specify it in your
Cartfile:
github "Jiar/SegementSlide" "3.0.1"
Run carthage update to build the framework.
- Copy Carthage Frameworks:
- open the
Build Phasestab of the project Settings - add
New Run Script Phase - add
/usr/local/bin/carthage copy-frameworksto the input field - add
$(SRCROOT)/Carthage/Build/iOS/SegementSlide.frameworktoInput Files
- Embedded Binaries:
- open the
generaltab of the project Settings - add
SegementSlide.frameworkin$(SRCROOT)/Carthage/Build/iOSto theEmbedded Binaries
If you prefer not to use either of the aforementioned dependency managers, you can integrate SegementSlide into your project manually.
import SegementSlide
class HomeViewController: SegementSlideDefaultViewController {
......
override func segementSlideHeaderView() -> UIView? {
let headerView = UIView()
let headerView.translatesAutoresizingMaskIntoConstraints = false
headerView.heightAnchor.constraint(equalToConstant: view.bounds.height/4).isActive = true
return headerView
}
override var titlesInSwitcher: [String] {
return ["Swift", "Ruby", "Kotlin"]
}
override func segementSlideContentViewController(at index: Int) -> SegementSlideContentScrollViewDelegate? {
return ContentViewController()
}
override func viewDidLoad() {
super.viewDidLoad()
defaultSelectedIndex = 0
reloadData()
}
}import SegementSlide
class ContentViewController: UITableViewController, SegementSlideContentScrollViewDelegate {
......
@objc var scrollView: UIScrollView {
return tableView
}
}SegementSlide is released under the Apache-2.0 license. See LICENSE for details.







