10 Commits

Author SHA1 Message Date
Alex K 342189b6e0 convert to swift 4.2 2018-09-17 10:20:21 +03:00
Ramotion 5eb66f6fb5 Update README.md 2018-06-29 14:24:19 +03:00
Ramotion 995c5a5513 Update README.md 2018-06-26 11:15:59 +03:00
Ramotion 6904cf96a5 Update README.md 2018-05-29 12:06:55 +03:00
Ramotion 5dc7510804 Update README.md 2018-04-28 12:29:47 +03:00
Ramotion b42aa63728 Add files via upload 2018-04-28 02:28:18 -07:00
Ramotion bf1ee34892 Delete Navigation-Stack.gif 2018-04-28 12:27:36 +03:00
Ramotion 4bab50f2ec Update README.md 2018-04-23 09:32:31 +03:00
Ramotion cdbfa29c11 Update README.md 2018-03-13 10:20:32 +03:00
Alex Mikhnev 563097f845 Update README.md 2018-02-21 14:50:47 +03:00
10 changed files with 33 additions and 30 deletions
Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 MiB

+11 -11
View File
@@ -286,18 +286,18 @@
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 0720;
LastUpgradeCheck = 0900;
LastUpgradeCheck = 1000;
ORGANIZATIONNAME = "Alex K.";
TargetAttributes = {
84368B3B1CFEDDB1007C4278 = {
CreatedOnToolsVersion = 7.3.1;
DevelopmentTeam = 34MUF9YXTA;
LastSwiftMigration = 0900;
LastSwiftMigration = 1000;
};
8444B0EB1C80238500B53B4E = {
CreatedOnToolsVersion = 7.2.1;
DevelopmentTeam = 34MUF9YXTA;
LastSwiftMigration = 0900;
LastSwiftMigration = 1000;
};
};
};
@@ -419,8 +419,7 @@
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.NavigationStack;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
SWIFT_VERSION = 4.0;
SWIFT_VERSION = 4.2;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic";
VERSION_INFO_PREFIX = "";
@@ -445,8 +444,7 @@
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.NavigationStack;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
SWIFT_VERSION = 4.0;
SWIFT_VERSION = 4.2;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic";
VERSION_INFO_PREFIX = "";
@@ -465,12 +463,14 @@
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
@@ -517,12 +517,14 @@
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
@@ -562,8 +564,7 @@
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.NavigationStackDemo;
PRODUCT_NAME = "Navigation Stack";
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
SWIFT_VERSION = 4.0;
SWIFT_VERSION = 4.2;
};
name = Debug;
};
@@ -578,8 +579,7 @@
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.NavigationStackDemo;
PRODUCT_NAME = "Navigation Stack";
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
SWIFT_VERSION = 4.0;
SWIFT_VERSION = 4.2;
};
name = Release;
};
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "0900"
LastUpgradeVersion = "1000"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -26,7 +26,6 @@
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
language = ""
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
</Testables>
@@ -37,7 +36,6 @@
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
language = ""
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
+4 -4
View File
@@ -29,13 +29,13 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_: UIApplication, didFinishLaunchingWithOptions _: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
func application(_ : UIApplication, didFinishLaunchingWithOptions _: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
UIApplication.shared.statusBarStyle = .lightContent
UINavigationBar.appearance().titleTextAttributes = [
NSAttributedStringKey.foregroundColor: UIColor.white,
NSAttributedStringKey.font: UIFont(name: "OpenSans-Semibold", size: 16)!,
NSAttributedString.Key.foregroundColor: UIColor.white,
NSAttributedString.Key.font: UIFont(name: "OpenSans-Semibold", size: 16)!,
]
return true
+11 -6
View File
@@ -1,5 +1,6 @@
[![header](./header.png)](https://ramotion.com?utm_source=gthb&utm_medium=special&utm_campaign=navigation-stack-logo)
![Animation](./Navigation-Stack.gif)
<img src="https://github.com/Ramotion/navigation-stack/blob/master/navigation-stack.gif" width="600" height="450" />
<br><br/>
# navigation-stack
[![Twitter](https://img.shields.io/badge/Twitter-@Ramotion-blue.svg?style=flat)](http://twitter.com/Ramotion)
[![CocoaPods](https://img.shields.io/cocoapods/p/Navigation-stack.svg)](https://cocoapods.org/pods/Navigation-stack)
@@ -8,6 +9,7 @@
[![Travis](https://img.shields.io/travis/Ramotion/navigation-stack.svg)](https://travis-ci.org/Ramotion/navigation-stack)
[![codebeat badge](https://codebeat.co/badges/c322a039-b06b-46d9-bf40-e48cf0365b97)](https://codebeat.co/projects/github-com-ramotion-navigation-stack)
[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Ramotion/navigation-stack)
[![Donate](https://img.shields.io/badge/Donate-PayPal-blue.svg)](https://paypal.me/Ramotion)
## About
This project is maintained by Ramotion, Inc.<br>
@@ -16,10 +18,10 @@ We specialize in the designing and coding of custom UI for Mobile Apps and Websi
**Looking for developers for your project?**<br>
This project is maintained by Ramotion, Inc. We specialize in the designing and coding of custom UI for Mobile Apps and Websites.
<a href="https://ramotion.com/?utm_source=gthb&utm_medium=special&utm_campaign=navigation-stack-contact-us/#Get_in_Touch">
<a href="mailto:alex.a@ramotion.com?subject=Project%20inquiry%20from%20Github">
<img src="https://github.com/ramotion/gliding-collection/raw/master/contact_our_team@2x.png" width="187" height="34"></a>
The [iPhone mockup](https://store.ramotion.com?utm_source=gthb&utm_medium=special&utm_campaign=paper-onboarding) available [here](https://store.ramotion.com?utm_source=gthb&utm_medium=special&utm_campaign=paper-onboarding).
The [iPhone mockup](https://store.ramotion.com/product/iphone-x-clay-mockups?utm_source=gthb&utm_medium=special&utm_campaign=navigation-stack) available [here](https://store.ramotion.com?utm_source=gthb&utm_medium=special&utm_campaign=navigation-stack).
## Try this UI control in action
@@ -75,6 +77,9 @@ extension YourViewController: UIGestureRecognizerDelegate {
}
```
This library is a part of a <a href="https://github.com/Ramotion/swift-ui-animation-components-and-libraries"><b>selection of our best UI open-source projects.</b></a>
## License
Navigation-stack is released under the MIT license.
@@ -85,11 +90,11 @@ Try this UI component and more like this in our iOS app. Contact us if intereste
<a href="https://itunes.apple.com/app/apple-store/id1182360240?pt=550053&ct=navigation-stack&mt=8" >
<img src="https://github.com/ramotion/gliding-collection/raw/master/app_store@2x.png" width="117" height="34"></a>
<a href="https://ramotion.com/?utm_source=gthb&utm_medium=special&utm_campaign=navigation-stack-contact-us/#Get_in_Touch">
<a href="mailto:alex.a@ramotion.com?subject=Project%20inquiry%20from%20Github">
<img src="https://github.com/ramotion/gliding-collection/raw/master/contact_our_team@2x.png" width="187" height="34"></a>
<br>
<br>
Follow us for the latest updates<br>
[![Twitter URL](https://img.shields.io/twitter/url/http/shields.io.svg?style=social)](https://twitter.com/intent/tweet?text=https://github.com/ramotion/navigation-stack)
[![Twitter Follow](https://img.shields.io/twitter/follow/ramotion.svg?style=social)](https://twitter.com/ramotion)
<a href="https://goo.gl/rPFpid" >
<img src="https://i.imgur.com/ziSqeSo.png/" width="156" height="28"></a>
@@ -66,7 +66,7 @@ extension CollectionViewStackCell {
return imageView
}
fileprivate func createConstraint(_ item: UIImageView, toItem: UIView, attribute: NSLayoutAttribute) -> NSLayoutConstraint {
fileprivate func createConstraint(_ item: UIImageView, toItem: UIView, attribute: NSLayoutConstraint.Attribute) -> NSLayoutConstraint {
return NSLayoutConstraint(item: item,
attribute: attribute,
relatedBy: .equal,
@@ -65,7 +65,7 @@ class CollectionStackViewController: UICollectionViewController {
if let collectionView = self.collectionView {
collectionView.backgroundColor = bgColor
collectionView.backgroundView = bgView
collectionView.decelerationRate = decelerationRate
collectionView.decelerationRate = UIScrollView.DecelerationRate(rawValue: decelerationRate)
}
}
@@ -183,7 +183,7 @@ extension CollectionStackViewController: UICollectionViewDelegateFlowLayout {
extension CollectionStackViewController {
fileprivate func scrolltoIndex(_ index: Int, animated: Bool, position: UICollectionViewScrollPosition) {
fileprivate func scrolltoIndex(_ index: Int, animated: Bool, position: UICollectionView.ScrollPosition) {
let indexPath = IndexPath(item: index, section: 0)
collectionView?.scrollToItem(at: indexPath, at: position, animated: animated)
}
@@ -61,7 +61,7 @@ extension CollectionViewStackFlowLayout {
items.enumerateObjects({ (object, _, _) -> Void in
let attributes = object as! UICollectionViewLayoutAttributes
if attributes.representedElementKind == UICollectionElementKindSectionHeader {
if attributes.representedElementKind == UICollectionView.elementKindSectionHeader {
headerAttributes = attributes
} else {
self.updateCellAttributes(attributes, headerAttributes: headerAttributes)
+2 -2
View File
@@ -32,7 +32,7 @@ open class NavigationStack: UINavigationController {
var scaleValue: Float = 0.99
/// A floating-point value that determines the rate of deceleration after the user lifts their finger.
@IBInspectable open var decelerationRate: CGFloat = UIScrollViewDecelerationRateNormal
@IBInspectable open var decelerationRate: CGFloat = UIScrollView.DecelerationRate.normal.rawValue
/// The color to use for the background of the lists of UIViewcontrollers.
@IBInspectable open var bgColor: UIColor = .black
@@ -140,7 +140,7 @@ extension NavigationStack: UINavigationControllerDelegate {
return stackDelegate?.navigationController?(navigationController, interactionControllerFor: animationController)
}
public func navigationController(_ navigationController: UINavigationController, animationControllerFor operation: UINavigationControllerOperation, from fromVC: UIViewController, to toVC: UIViewController) -> UIViewControllerAnimatedTransitioning? {
public func navigationController(_ navigationController: UINavigationController, animationControllerFor operation: UINavigationController.Operation, from fromVC: UIViewController, to toVC: UIViewController) -> UIViewControllerAnimatedTransitioning? {
return stackDelegate?.navigationController?(navigationController, animationControllerFor: operation, from: fromVC, to: toVC)
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 11 MiB