├── PrioritizedTabBar ├── Assets │ └── .gitkeep └── Classes │ ├── .gitkeep │ ├── RoundedView.swift │ ├── PrioritizedTabBarController.swift │ └── PrioritizedTabBar.swift ├── _Pods.xcodeproj ├── preview.gif ├── Example ├── PrioritizedTabBar │ ├── Images.xcassets │ │ ├── Contents.json │ │ ├── second.imageset │ │ │ ├── lenta.pdf │ │ │ └── Contents.json │ │ ├── first.imageset │ │ │ ├── profileUnactive.pdf │ │ │ └── Contents.json │ │ ├── third.imageset │ │ │ ├── favoriteUnactive.pdf │ │ │ └── Contents.json │ │ ├── tabBarSelected.colorset │ │ │ └── Contents.json │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── AppDelegate.swift │ ├── Info.plist │ └── Base.lproj │ │ ├── LaunchScreen.xib │ │ └── Main.storyboard ├── Pods │ ├── Target Support Files │ │ ├── PrioritizedTabBar │ │ │ ├── PrioritizedTabBar.modulemap │ │ │ ├── PrioritizedTabBar-dummy.m │ │ │ ├── PrioritizedTabBar-prefix.pch │ │ │ ├── PrioritizedTabBar-umbrella.h │ │ │ ├── PrioritizedTabBar.xcconfig │ │ │ └── PrioritizedTabBar-Info.plist │ │ ├── Pods-PrioritizedTabBar_Tests │ │ │ ├── Pods-PrioritizedTabBar_Tests-acknowledgements.markdown │ │ │ ├── Pods-PrioritizedTabBar_Tests.modulemap │ │ │ ├── Pods-PrioritizedTabBar_Tests-dummy.m │ │ │ ├── Pods-PrioritizedTabBar_Tests-umbrella.h │ │ │ ├── Pods-PrioritizedTabBar_Tests.debug.xcconfig │ │ │ ├── Pods-PrioritizedTabBar_Tests.release.xcconfig │ │ │ ├── Pods-PrioritizedTabBar_Tests-Info.plist │ │ │ └── Pods-PrioritizedTabBar_Tests-acknowledgements.plist │ │ └── Pods-PrioritizedTabBar_Example │ │ │ ├── Pods-PrioritizedTabBar_Example.modulemap │ │ │ ├── Pods-PrioritizedTabBar_Example-dummy.m │ │ │ ├── Pods-PrioritizedTabBar_Example-umbrella.h │ │ │ ├── Pods-PrioritizedTabBar_Example.debug.xcconfig │ │ │ ├── Pods-PrioritizedTabBar_Example.release.xcconfig │ │ │ ├── Pods-PrioritizedTabBar_Example-Info.plist │ │ │ ├── Pods-PrioritizedTabBar_Example-acknowledgements.markdown │ │ │ ├── Pods-PrioritizedTabBar_Example-acknowledgements.plist │ │ │ └── Pods-PrioritizedTabBar_Example-frameworks.sh │ ├── Manifest.lock │ ├── Local Podspecs │ │ └── PrioritizedTabBar.podspec.json │ └── Pods.xcodeproj │ │ └── project.pbxproj ├── Podfile ├── PrioritizedTabBar.xcodeproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ ├── xcshareddata │ │ └── xcschemes │ │ │ └── PrioritizedTabBar-Example.xcscheme │ └── project.pbxproj ├── PrioritizedTabBar.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist └── Podfile.lock ├── PrioritizedTabBar.podspec ├── LICENSE ├── .gitignore ├── README.md ├── robot.svg └── header.svg /PrioritizedTabBar/Assets/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PrioritizedTabBar/Classes/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /_Pods.xcodeproj: -------------------------------------------------------------------------------- 1 | Example/Pods/Pods.xcodeproj -------------------------------------------------------------------------------- /preview.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RedMadRobot/PrioritizedTabBar/HEAD/preview.gif -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Images.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Images.xcassets/second.imageset/lenta.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RedMadRobot/PrioritizedTabBar/HEAD/Example/PrioritizedTabBar/Images.xcassets/second.imageset/lenta.pdf -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Images.xcassets/first.imageset/profileUnactive.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RedMadRobot/PrioritizedTabBar/HEAD/Example/PrioritizedTabBar/Images.xcassets/first.imageset/profileUnactive.pdf -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Images.xcassets/third.imageset/favoriteUnactive.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RedMadRobot/PrioritizedTabBar/HEAD/Example/PrioritizedTabBar/Images.xcassets/third.imageset/favoriteUnactive.pdf -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/PrioritizedTabBar/PrioritizedTabBar.modulemap: -------------------------------------------------------------------------------- 1 | framework module PrioritizedTabBar { 2 | umbrella header "PrioritizedTabBar-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/PrioritizedTabBar/PrioritizedTabBar-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_PrioritizedTabBar : NSObject 3 | @end 4 | @implementation PodsDummy_PrioritizedTabBar 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Podfile: -------------------------------------------------------------------------------- 1 | use_frameworks! 2 | 3 | target 'PrioritizedTabBar_Example' do 4 | pod 'PrioritizedTabBar', :path => '../' 5 | 6 | target 'PrioritizedTabBar_Tests' do 7 | inherit! :search_paths 8 | 9 | 10 | end 11 | end 12 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | Generated by CocoaPods - https://cocoapods.org 4 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests.modulemap: -------------------------------------------------------------------------------- 1 | framework module Pods_PrioritizedTabBar_Tests { 2 | umbrella header "Pods-PrioritizedTabBar_Tests-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example.modulemap: -------------------------------------------------------------------------------- 1 | framework module Pods_PrioritizedTabBar_Example { 2 | umbrella header "Pods-PrioritizedTabBar_Example-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_PrioritizedTabBar_Tests : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_PrioritizedTabBar_Tests 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_PrioritizedTabBar_Example : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_PrioritizedTabBar_Example 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/PrioritizedTabBar/PrioritizedTabBar-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Images.xcassets/second.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "lenta.pdf" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | }, 12 | "properties" : { 13 | "template-rendering-intent" : "template" 14 | } 15 | } -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Images.xcassets/first.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "profileUnactive.pdf" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | }, 12 | "properties" : { 13 | "template-rendering-intent" : "template" 14 | } 15 | } -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Images.xcassets/third.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "favoriteUnactive.pdf" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | }, 12 | "properties" : { 13 | "template-rendering-intent" : "template" 14 | } 15 | } -------------------------------------------------------------------------------- /Example/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - PrioritizedTabBar (0.1.0) 3 | 4 | DEPENDENCIES: 5 | - PrioritizedTabBar (from `../`) 6 | 7 | EXTERNAL SOURCES: 8 | PrioritizedTabBar: 9 | :path: "../" 10 | 11 | SPEC CHECKSUMS: 12 | PrioritizedTabBar: ad993b16e2437305dcdb2d83b2131076b7456796 13 | 14 | PODFILE CHECKSUM: 2db14b427343fabd6d45b75a850fe57e14a12071 15 | 16 | COCOAPODS: 1.8.4 17 | -------------------------------------------------------------------------------- /Example/Pods/Manifest.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - PrioritizedTabBar (0.1.0) 3 | 4 | DEPENDENCIES: 5 | - PrioritizedTabBar (from `../`) 6 | 7 | EXTERNAL SOURCES: 8 | PrioritizedTabBar: 9 | :path: "../" 10 | 11 | SPEC CHECKSUMS: 12 | PrioritizedTabBar: ad993b16e2437305dcdb2d83b2131076b7456796 13 | 14 | PODFILE CHECKSUM: 2db14b427343fabd6d45b75a850fe57e14a12071 15 | 16 | COCOAPODS: 1.8.4 17 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/PrioritizedTabBar/PrioritizedTabBar-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | 14 | FOUNDATION_EXPORT double PrioritizedTabBarVersionNumber; 15 | FOUNDATION_EXPORT const unsigned char PrioritizedTabBarVersionString[]; 16 | 17 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | 14 | FOUNDATION_EXPORT double Pods_PrioritizedTabBar_TestsVersionNumber; 15 | FOUNDATION_EXPORT const unsigned char Pods_PrioritizedTabBar_TestsVersionString[]; 16 | 17 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | 14 | FOUNDATION_EXPORT double Pods_PrioritizedTabBar_ExampleVersionNumber; 15 | FOUNDATION_EXPORT const unsigned char Pods_PrioritizedTabBar_ExampleVersionString[]; 16 | 17 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/AppDelegate.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.swift 3 | // PrioritizedTabBar 4 | // 5 | // Created by firmach on 12/26/2019. 6 | // Copyright (c) 2019 firmach. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | @UIApplicationMain 12 | class AppDelegate: UIResponder, UIApplicationDelegate { 13 | 14 | var window: UIWindow? 15 | 16 | 17 | func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 18 | return true 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/PrioritizedTabBar/PrioritizedTabBar.xcconfig: -------------------------------------------------------------------------------- 1 | CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/PrioritizedTabBar 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS 4 | PODS_BUILD_DIR = ${BUILD_DIR} 5 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 6 | PODS_ROOT = ${SRCROOT} 7 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/../.. 8 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 9 | SKIP_INSTALL = YES 10 | USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES 11 | -------------------------------------------------------------------------------- /Example/Pods/Local Podspecs/PrioritizedTabBar.podspec.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "PrioritizedTabBar", 3 | "version": "0.1.0", 4 | "summary": "A short description of PrioritizedTabBar.", 5 | "description": "TODO: Add long description of the pod here.", 6 | "homepage": "https://github.com/firmach/PrioritizedTabBar", 7 | "license": { 8 | "type": "MIT", 9 | "file": "LICENSE" 10 | }, 11 | "authors": { 12 | "firmach": "rc@redmadrobot.com" 13 | }, 14 | "source": { 15 | "git": "https://github.com/firmach/PrioritizedTabBar.git", 16 | "tag": "0.1.0" 17 | }, 18 | "platforms": { 19 | "ios": "11.0" 20 | }, 21 | "source_files": "PrioritizedTabBar/Classes/**/*" 22 | } 23 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests.debug.xcconfig: -------------------------------------------------------------------------------- 1 | FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PrioritizedTabBar" 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PrioritizedTabBar/PrioritizedTabBar.framework/Headers" 4 | OTHER_LDFLAGS = $(inherited) -framework "PrioritizedTabBar" 5 | PODS_BUILD_DIR = ${BUILD_DIR} 6 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 7 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 8 | PODS_ROOT = ${SRCROOT}/Pods 9 | USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES 10 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests.release.xcconfig: -------------------------------------------------------------------------------- 1 | FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PrioritizedTabBar" 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PrioritizedTabBar/PrioritizedTabBar.framework/Headers" 4 | OTHER_LDFLAGS = $(inherited) -framework "PrioritizedTabBar" 5 | PODS_BUILD_DIR = ${BUILD_DIR} 6 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 7 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 8 | PODS_ROOT = ${SRCROOT}/Pods 9 | USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES 10 | -------------------------------------------------------------------------------- /PrioritizedTabBar/Classes/RoundedView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // RoundedView.swift 3 | // 4 | // Created by Roman Churkin on 10/09/2019. 5 | // Copyright © 2019 Redmadrobot. All rights reserved. 6 | // 7 | 8 | import UIKit 9 | 10 | 11 | protocol RoundedView: UIView { 12 | 13 | var cornerRadius: CGFloat { get set } 14 | 15 | } 16 | 17 | 18 | extension RoundedView { 19 | 20 | var cornerRadius: CGFloat { 21 | get { return layer.cornerRadius } 22 | set { 23 | layer.cornerRadius = newValue 24 | layer.masksToBounds = newValue > 0 25 | } 26 | } 27 | 28 | } 29 | 30 | 31 | final class CircleView: UIView, RoundedView { 32 | 33 | override func layoutSubviews() { 34 | super.layoutSubviews() 35 | cornerRadius = min(bounds.width, bounds.height) / 2 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /PrioritizedTabBar.podspec: -------------------------------------------------------------------------------- 1 | Pod::Spec.new do |s| 2 | s.name = 'PrioritizedTabBar' 3 | s.version = '1.0.0' 4 | s.summary = 'Native iOS TabBar with prioritized layout' 5 | s.description = <<-DESC 6 | 📱 Native iOS TabBar with main tab items grouped right under your finger 7 | DESC 8 | 9 | s.homepage = 'https://github.com/RedMadRobot/PrioritizedTabBar' 10 | s.license = { :type => 'MIT' } 11 | s.author = { 'Roman Churkin' => 'rc@redmadrobot.com' } 12 | s.source = { :git => 'https://github.com/RedMadRobot/PrioritizedTabBar.git', :tag => s.version.to_s } 13 | s.social_media_url = 'https://twitter.com/firmach' 14 | 15 | s.ios.deployment_target = '12.0' 16 | 17 | s.swift_version = '5.0' 18 | 19 | s.source_files = 'PrioritizedTabBar/Classes/**/*' 20 | 21 | end 22 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example.debug.xcconfig: -------------------------------------------------------------------------------- 1 | ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES 2 | FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PrioritizedTabBar" 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PrioritizedTabBar/PrioritizedTabBar.framework/Headers" 5 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' 6 | OTHER_LDFLAGS = $(inherited) -framework "PrioritizedTabBar" 7 | OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS 8 | PODS_BUILD_DIR = ${BUILD_DIR} 9 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 10 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 11 | PODS_ROOT = ${SRCROOT}/Pods 12 | USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES 13 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example.release.xcconfig: -------------------------------------------------------------------------------- 1 | ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES 2 | FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PrioritizedTabBar" 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PrioritizedTabBar/PrioritizedTabBar.framework/Headers" 5 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' 6 | OTHER_LDFLAGS = $(inherited) -framework "PrioritizedTabBar" 7 | OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS 8 | PODS_BUILD_DIR = ${BUILD_DIR} 9 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 10 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 11 | PODS_ROOT = ${SRCROOT}/Pods 12 | USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES 13 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Images.xcassets/tabBarSelected.colorset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | }, 6 | "colors" : [ 7 | { 8 | "idiom" : "universal", 9 | "color" : { 10 | "color-space" : "display-p3", 11 | "components" : { 12 | "red" : "0.917", 13 | "alpha" : "1.000", 14 | "blue" : "0.137", 15 | "green" : "0.202" 16 | } 17 | } 18 | }, 19 | { 20 | "idiom" : "universal", 21 | "appearances" : [ 22 | { 23 | "appearance" : "luminosity", 24 | "value" : "dark" 25 | } 26 | ], 27 | "color" : { 28 | "color-space" : "srgb", 29 | "components" : { 30 | "red" : "1.000", 31 | "alpha" : "1.000", 32 | "blue" : "1.000", 33 | "green" : "1.000" 34 | } 35 | } 36 | } 37 | ] 38 | } -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/PrioritizedTabBar/PrioritizedTabBar-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 0.1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests-acknowledgements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreferenceSpecifiers 6 | 7 | 8 | FooterText 9 | This application makes use of the following third party libraries: 10 | Title 11 | Acknowledgements 12 | Type 13 | PSGroupSpecifier 14 | 15 | 16 | FooterText 17 | Generated by CocoaPods - https://cocoapods.org 18 | Title 19 | 20 | Type 21 | PSGroupSpecifier 22 | 23 | 24 | StringsTable 25 | Acknowledgements 26 | Title 27 | Acknowledgements 28 | 29 | 30 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Redmadrobot 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "20x20", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "20x20", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "29x29", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "29x29", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "40x40", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "40x40", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "iphone", 35 | "size" : "60x60", 36 | "scale" : "2x" 37 | }, 38 | { 39 | "idiom" : "iphone", 40 | "size" : "60x60", 41 | "scale" : "3x" 42 | }, 43 | { 44 | "idiom" : "ios-marketing", 45 | "size" : "1024x1024", 46 | "scale" : "1x" 47 | } 48 | ], 49 | "info" : { 50 | "version" : 1, 51 | "author" : "xcode" 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /PrioritizedTabBar/Classes/PrioritizedTabBarController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // PrioritizedTabBarController.swift 3 | // 4 | // Created by Roman Churkin on 25.12.2019. 5 | // Copyright © 2019 Redmadrobot. All rights reserved. 6 | // 7 | 8 | import UIKit 9 | 10 | 11 | class PrioritizedTabBarController: UITabBarController { 12 | override func viewDidLoad() { 13 | super.viewDidLoad() 14 | delegate = self 15 | } 16 | } 17 | 18 | extension PrioritizedTabBarController: UITabBarControllerDelegate { 19 | 20 | func tabBarController(_ tabBarController: UITabBarController, 21 | shouldSelect viewController: UIViewController) -> Bool { 22 | 23 | guard let fromView = selectedViewController?.view, 24 | let toView = viewController.view else { 25 | return false 26 | } 27 | 28 | if fromView != toView { 29 | UIView.transition(from: fromView, 30 | to: toView, 31 | duration: 0.4, 32 | options: [.transitionCrossDissolve], 33 | completion: nil) 34 | } 35 | 36 | return true 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | 4 | ## PrioritizedTabBar 5 | 6 | Copyright (c) 2019 firmach 7 | 8 | Permission is hereby granted, free of charge, to any person obtaining a copy 9 | of this software and associated documentation files (the "Software"), to deal 10 | in the Software without restriction, including without limitation the rights 11 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | copies of the Software, and to permit persons to whom the Software is 13 | furnished to do so, subject to the following conditions: 14 | 15 | The above copyright notice and this permission notice shall be included in 16 | all copies or substantial portions of the Software. 17 | 18 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | THE SOFTWARE. 25 | 26 | Generated by CocoaPods - https://cocoapods.org 27 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | # 3 | # gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore 4 | 5 | ## Build generated 6 | build/ 7 | DerivedData/ 8 | 9 | ## Various settings 10 | *.pbxuser 11 | !default.pbxuser 12 | *.mode1v3 13 | !default.mode1v3 14 | *.mode2v3 15 | !default.mode2v3 16 | *.perspectivev3 17 | !default.perspectivev3 18 | xcuserdata/ 19 | 20 | ## Other 21 | *.moved-aside 22 | *.xccheckout 23 | *.xcscmblueprint 24 | 25 | ## Obj-C/Swift specific 26 | *.hmap 27 | *.ipa 28 | *.dSYM.zip 29 | *.dSYM 30 | 31 | ## Playgrounds 32 | timeline.xctimeline 33 | playground.xcworkspace 34 | 35 | # Swift Package Manager 36 | # 37 | # Add this line if you want to avoid checking in source code from Swift Package Manager dependencies. 38 | # Packages/ 39 | # Package.pins 40 | # Package.resolved 41 | .build/ 42 | 43 | # CocoaPods 44 | # 45 | # We recommend against adding the Pods directory to your .gitignore. However 46 | # you should judge for yourself, the pros and cons are mentioned at: 47 | # https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control 48 | # 49 | # Pods/ 50 | 51 | # Carthage 52 | # 53 | # Add this line if you want to avoid checking in source code from Carthage dependencies. 54 | # Carthage/Checkouts 55 | 56 | Carthage/Build 57 | 58 | # fastlane 59 | # 60 | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the 61 | # screenshots whenever they are needed. 62 | # For more information about the recommended setup visit: 63 | # https://docs.fastlane.tools/best-practices/source-control/#source-control 64 | 65 | fastlane/report.xml 66 | fastlane/Preview.html 67 | fastlane/screenshots/**/*.png 68 | fastlane/test_output 69 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [![Redmadrobot](https://github.com/Redmadrobot/PrioritizedTabBar/blob/master/header.svg)](http://redmadrobot.com) 2 | 3 |
4 | 5 | # 📱 PrioritizedTabBar 6 | [![Redmadrobot](https://img.shields.io/badge/made%20by%20robots-for%20humans-EB5440.svg)](https://github.com/RedMadRobot) [![Version](https://img.shields.io/cocoapods/v/PrioritizedTabBar.svg?style=flat)](https://cocoapods.org/pods/PrioritizedTabBar) [![License](https://img.shields.io/cocoapods/l/PrioritizedTabBar.svg?style=flat)](https://cocoapods.org/pods/PrioritizedTabBar) [![Platform](https://img.shields.io/cocoapods/p/PrioritizedTabBar.svg?style=flat)](https://cocoapods.org/pods/PrioritizedTabBar) 7 | 8 |
9 | 10 | TabBar which designed specially for our [dribbble shot](https://dribbble.com/shots/8720663-For-iOS-engineers). 11 | 12 | 13 | 14 | Implemented as a subclass of UITabBar. So it supports behavior you expect. Including dark mode ofcourse. 15 | 16 |
17 | 18 | Feel free to use this code in your projects and [![](https://img.shields.io/twitter/url/http/shields.io.svg?style=social)](https://twitter.com/Firmach) me if you have any questions or suggestions. 19 | 20 |
21 | 22 | ## Example 23 | 24 | To run the example project, clone the repo, and run `pod install` from the Example directory first. 25 | 26 |
27 | 28 | ## Installation 29 | 30 | PrioritizedTabBar is available through [CocoaPods](https://cocoapods.org). To install 31 | it, simply add the following line to your Podfile: 32 | 33 | ```ruby 34 | pod 'PrioritizedTabBar' 35 | ``` 36 | 37 |
38 | 39 | ## License 40 | 41 | PrioritizedTabBar is available under the MIT license. 42 | 43 |
44 | 45 | [![Redmadrobot](https://github.com/Redmadrobot/PrioritizedTabBar/blob/master/robot.svg)](http://redmadrobot.com) 46 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example-acknowledgements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreferenceSpecifiers 6 | 7 | 8 | FooterText 9 | This application makes use of the following third party libraries: 10 | Title 11 | Acknowledgements 12 | Type 13 | PSGroupSpecifier 14 | 15 | 16 | FooterText 17 | Copyright (c) 2019 firmach <rc@redmadrobot.com> 18 | 19 | Permission is hereby granted, free of charge, to any person obtaining a copy 20 | of this software and associated documentation files (the "Software"), to deal 21 | in the Software without restriction, including without limitation the rights 22 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 23 | copies of the Software, and to permit persons to whom the Software is 24 | furnished to do so, subject to the following conditions: 25 | 26 | The above copyright notice and this permission notice shall be included in 27 | all copies or substantial portions of the Software. 28 | 29 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 30 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 31 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 32 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 33 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 34 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 35 | THE SOFTWARE. 36 | 37 | License 38 | MIT 39 | Title 40 | PrioritizedTabBar 41 | Type 42 | PSGroupSpecifier 43 | 44 | 45 | FooterText 46 | Generated by CocoaPods - https://cocoapods.org 47 | Title 48 | 49 | Type 50 | PSGroupSpecifier 51 | 52 | 53 | StringsTable 54 | Acknowledgements 55 | Title 56 | Acknowledgements 57 | 58 | 59 | -------------------------------------------------------------------------------- /robot.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 15 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Base.lproj/LaunchScreen.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 22 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /PrioritizedTabBar/Classes/PrioritizedTabBar.swift: -------------------------------------------------------------------------------- 1 | // 2 | // PrioritizedTabBar.swift 3 | // 4 | // Created by Roman Churkin on 24.12.2019. 5 | // Copyright © 2019 Redmadrobot. All rights reserved. 6 | // 7 | 8 | import UIKit 9 | 10 | 11 | class PrioritizedTabBar: UITabBar { 12 | 13 | 14 | // MARK: - Constants 15 | 16 | private enum Constants { 17 | 18 | static let itemWidth: CGFloat = 76 19 | static let itemHeight: CGFloat = 48 20 | 21 | static let indicatorSize: CGFloat = 4 22 | 23 | static let indicatorAnimationDuration: TimeInterval = 0.4 24 | static let indicatorAnimationStartPoint = CGPoint(x: 0.72, y: 0.08) 25 | static let indicatorAnimationEndPoint = CGPoint(x: 0.12, y: 0.93) 26 | 27 | } 28 | 29 | 30 | // MARK: - Properties 31 | 32 | private lazy var indicator: UIView = { 33 | let circle = CircleView(frame: .zero) 34 | circle.backgroundColor = tintColor 35 | addSubview(circle) 36 | return circle 37 | }() 38 | 39 | private var buttons: [UIControl] { 40 | return subviews.filter { $0 is UIControl } as! [UIControl] 41 | } 42 | 43 | override var selectedItem: UITabBarItem? { 44 | didSet { 45 | guard let selectedItem = self.selectedItem, 46 | let index = items?.firstIndex(of: selectedItem) else { return } 47 | 48 | if let oldItem = oldValue, 49 | let oldIndex = items?.firstIndex(of: oldItem), 50 | index == oldIndex { 51 | return 52 | } 53 | 54 | animate(index: index) 55 | } 56 | } 57 | 58 | 59 | // MARK: - UITabBar 60 | 61 | override func tintColorDidChange() { 62 | super.tintColorDidChange() 63 | indicator.backgroundColor = tintColor 64 | } 65 | 66 | override func layoutSubviews() { 67 | super.layoutSubviews() 68 | 69 | if let selectedItem = self.selectedItem, 70 | let index = items?.firstIndex(of: selectedItem) { 71 | indicator.frame = frame(forIndicatorAt: index) 72 | } 73 | 74 | guard let items = self.items, items.count <= 4 else { return } 75 | 76 | guard buttons.count > 0 else { return } 77 | 78 | for (index, button) in buttons.enumerated() { 79 | button.frame = frame(forButtonAt: index) 80 | } 81 | } 82 | 83 | 84 | // MARK: - Helper 85 | 86 | private func frame(forButtonAt buttonIndex: Int) -> CGRect { 87 | guard let items = self.items else { fatalError() } 88 | let itemsCount = items.count 89 | 90 | guard itemsCount <= 4 else { 91 | return buttons[buttonIndex].frame 92 | } 93 | 94 | let itemWidth: CGFloat = Constants.itemWidth 95 | let itemHeight: CGFloat = Constants.itemHeight 96 | 97 | let frame: CGRect 98 | if buttonIndex == 0 { 99 | frame = CGRect(x: 0, y: 0, width: itemWidth, height: itemHeight) 100 | } else { 101 | frame = CGRect(x: bounds.width - itemWidth * CGFloat(itemsCount - buttonIndex), 102 | y: 0, 103 | width: itemWidth, 104 | height: itemHeight) 105 | } 106 | 107 | return frame 108 | } 109 | 110 | private func frame(forIndicatorAt index: Int) -> CGRect { 111 | let itemFrame = frame(forButtonAt: index) 112 | 113 | return CGRect(x: itemFrame.maxX - itemFrame.width/2 - Constants.indicatorSize/2, 114 | y: itemFrame.maxY - Constants.indicatorSize/2, 115 | width: Constants.indicatorSize, 116 | height: Constants.indicatorSize) 117 | } 118 | 119 | 120 | // MARK: Animation 121 | 122 | private func animate(index: Int) { 123 | let newIndicatorFrame = frame(forIndicatorAt: index) 124 | 125 | let animator = 126 | UIViewPropertyAnimator(duration: Constants.indicatorAnimationDuration, 127 | controlPoint1: Constants.indicatorAnimationStartPoint, 128 | controlPoint2: Constants.indicatorAnimationEndPoint) 129 | 130 | animator.addAnimations { 131 | self.indicator.frame = newIndicatorFrame 132 | } 133 | 134 | animator.startAnimation() 135 | } 136 | 137 | } 138 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar.xcodeproj/xcshareddata/xcschemes/PrioritizedTabBar-Example.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 29 | 35 | 36 | 37 | 38 | 39 | 44 | 45 | 51 | 52 | 53 | 54 | 56 | 62 | 63 | 64 | 65 | 66 | 76 | 78 | 84 | 85 | 86 | 87 | 93 | 95 | 101 | 102 | 103 | 104 | 106 | 107 | 110 | 111 | 112 | -------------------------------------------------------------------------------- /header.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 14 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example-frameworks.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | set -u 4 | set -o pipefail 5 | 6 | function on_error { 7 | echo "$(realpath -mq "${0}"):$1: error: Unexpected failure" 8 | } 9 | trap 'on_error $LINENO' ERR 10 | 11 | if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then 12 | # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy 13 | # frameworks to, so exit 0 (signalling the script phase was successful). 14 | exit 0 15 | fi 16 | 17 | echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 18 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 19 | 20 | COCOAPODS_PARALLEL_CODE_SIGN="${COCOAPODS_PARALLEL_CODE_SIGN:-false}" 21 | SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" 22 | 23 | # Used as a return value for each invocation of `strip_invalid_archs` function. 24 | STRIP_BINARY_RETVAL=0 25 | 26 | # This protects against multiple targets copying the same framework dependency at the same time. The solution 27 | # was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html 28 | RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????") 29 | 30 | # Copies and strips a vendored framework 31 | install_framework() 32 | { 33 | if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then 34 | local source="${BUILT_PRODUCTS_DIR}/$1" 35 | elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then 36 | local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")" 37 | elif [ -r "$1" ]; then 38 | local source="$1" 39 | fi 40 | 41 | local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 42 | 43 | if [ -L "${source}" ]; then 44 | echo "Symlinked..." 45 | source="$(readlink "${source}")" 46 | fi 47 | 48 | # Use filter instead of exclude so missing patterns don't throw errors. 49 | echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" 50 | rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}" 51 | 52 | local basename 53 | basename="$(basename -s .framework "$1")" 54 | binary="${destination}/${basename}.framework/${basename}" 55 | 56 | if ! [ -r "$binary" ]; then 57 | binary="${destination}/${basename}" 58 | elif [ -L "${binary}" ]; then 59 | echo "Destination binary is symlinked..." 60 | dirname="$(dirname "${binary}")" 61 | binary="${dirname}/$(readlink "${binary}")" 62 | fi 63 | 64 | # Strip invalid architectures so "fat" simulator / device frameworks work on device 65 | if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then 66 | strip_invalid_archs "$binary" 67 | fi 68 | 69 | # Resign the code if required by the build settings to avoid unstable apps 70 | code_sign_if_enabled "${destination}/$(basename "$1")" 71 | 72 | # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. 73 | if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then 74 | local swift_runtime_libs 75 | swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u) 76 | for lib in $swift_runtime_libs; do 77 | echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" 78 | rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" 79 | code_sign_if_enabled "${destination}/${lib}" 80 | done 81 | fi 82 | } 83 | 84 | # Copies and strips a vendored dSYM 85 | install_dsym() { 86 | local source="$1" 87 | if [ -r "$source" ]; then 88 | # Copy the dSYM into a the targets temp dir. 89 | echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DERIVED_FILES_DIR}\"" 90 | rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}" 91 | 92 | local basename 93 | basename="$(basename -s .framework.dSYM "$source")" 94 | binary="${DERIVED_FILES_DIR}/${basename}.framework.dSYM/Contents/Resources/DWARF/${basename}" 95 | 96 | # Strip invalid architectures so "fat" simulator / device frameworks work on device 97 | if [[ "$(file "$binary")" == *"Mach-O "*"dSYM companion"* ]]; then 98 | strip_invalid_archs "$binary" 99 | fi 100 | 101 | if [[ $STRIP_BINARY_RETVAL == 1 ]]; then 102 | # Move the stripped file into its final destination. 103 | echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\" \"${DWARF_DSYM_FOLDER_PATH}\"" 104 | rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.framework.dSYM" "${DWARF_DSYM_FOLDER_PATH}" 105 | else 106 | # The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing. 107 | touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.framework.dSYM" 108 | fi 109 | fi 110 | } 111 | 112 | # Copies the bcsymbolmap files of a vendored framework 113 | install_bcsymbolmap() { 114 | local bcsymbolmap_path="$1" 115 | local destination="${BUILT_PRODUCTS_DIR}" 116 | echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}"" 117 | rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}" 118 | } 119 | 120 | # Signs a framework with the provided identity 121 | code_sign_if_enabled() { 122 | if [ -n "${EXPANDED_CODE_SIGN_IDENTITY:-}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then 123 | # Use the current code_sign_identity 124 | echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" 125 | local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'" 126 | 127 | if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then 128 | code_sign_cmd="$code_sign_cmd &" 129 | fi 130 | echo "$code_sign_cmd" 131 | eval "$code_sign_cmd" 132 | fi 133 | } 134 | 135 | # Strip invalid architectures 136 | strip_invalid_archs() { 137 | binary="$1" 138 | # Get architectures for current target binary 139 | binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)" 140 | # Intersect them with the architectures we are building for 141 | intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\n' | sort | uniq -d)" 142 | # If there are no archs supported by this binary then warn the user 143 | if [[ -z "$intersected_archs" ]]; then 144 | echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)." 145 | STRIP_BINARY_RETVAL=0 146 | return 147 | fi 148 | stripped="" 149 | for arch in $binary_archs; do 150 | if ! [[ "${ARCHS}" == *"$arch"* ]]; then 151 | # Strip non-valid architectures in-place 152 | lipo -remove "$arch" -output "$binary" "$binary" 153 | stripped="$stripped $arch" 154 | fi 155 | done 156 | if [[ "$stripped" ]]; then 157 | echo "Stripped $binary of architectures:$stripped" 158 | fi 159 | STRIP_BINARY_RETVAL=1 160 | } 161 | 162 | 163 | if [[ "$CONFIGURATION" == "Debug" ]]; then 164 | install_framework "${BUILT_PRODUCTS_DIR}/PrioritizedTabBar/PrioritizedTabBar.framework" 165 | fi 166 | if [[ "$CONFIGURATION" == "Release" ]]; then 167 | install_framework "${BUILT_PRODUCTS_DIR}/PrioritizedTabBar/PrioritizedTabBar.framework" 168 | fi 169 | if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then 170 | wait 171 | fi 172 | -------------------------------------------------------------------------------- /Example/PrioritizedTabBar.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 607FACD61AFB9204008FA782 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 607FACD51AFB9204008FA782 /* AppDelegate.swift */; }; 11 | 607FACDB1AFB9204008FA782 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 607FACD91AFB9204008FA782 /* Main.storyboard */; }; 12 | 607FACDD1AFB9204008FA782 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 607FACDC1AFB9204008FA782 /* Images.xcassets */; }; 13 | 607FACE01AFB9204008FA782 /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 607FACDE1AFB9204008FA782 /* LaunchScreen.xib */; }; 14 | EE21A103FCA6933D6ECC190A /* Pods_PrioritizedTabBar_Example.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B132BB3FB97F3B3D47231669 /* Pods_PrioritizedTabBar_Example.framework */; }; 15 | /* End PBXBuildFile section */ 16 | 17 | /* Begin PBXFileReference section */ 18 | 23BFB6329A340122CD4D3075 /* Pods-PrioritizedTabBar_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PrioritizedTabBar_Tests.release.xcconfig"; path = "Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests.release.xcconfig"; sourceTree = ""; }; 19 | 2866EA4356FFA9E50EF4C5CA /* Pods-PrioritizedTabBar_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PrioritizedTabBar_Example.debug.xcconfig"; path = "Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example.debug.xcconfig"; sourceTree = ""; }; 20 | 2F9B2EAF4BB0A90705B88773 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; name = README.md; path = ../README.md; sourceTree = ""; }; 21 | 607FACD01AFB9204008FA782 /* PrioritizedTabBar_Example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = PrioritizedTabBar_Example.app; sourceTree = BUILT_PRODUCTS_DIR; }; 22 | 607FACD41AFB9204008FA782 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 23 | 607FACD51AFB9204008FA782 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 24 | 607FACDA1AFB9204008FA782 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; 25 | 607FACDC1AFB9204008FA782 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 26 | 607FACDF1AFB9204008FA782 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; 27 | 673CE17C50D838DDFEA53857 /* Pods_PrioritizedTabBar_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_PrioritizedTabBar_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 28 | 8072BC849EB31B1E97537939 /* Pods-PrioritizedTabBar_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PrioritizedTabBar_Tests.debug.xcconfig"; path = "Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests.debug.xcconfig"; sourceTree = ""; }; 29 | 9ECBAA3E8565335B21D4BD14 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = LICENSE; path = ../LICENSE; sourceTree = ""; }; 30 | B132BB3FB97F3B3D47231669 /* Pods_PrioritizedTabBar_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_PrioritizedTabBar_Example.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 31 | B35050AD350368E78596CD6E /* Pods-PrioritizedTabBar_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PrioritizedTabBar_Example.release.xcconfig"; path = "Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example.release.xcconfig"; sourceTree = ""; }; 32 | B97B6DD8E0B00E3F9F931DDC /* PrioritizedTabBar.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = PrioritizedTabBar.podspec; path = ../PrioritizedTabBar.podspec; sourceTree = ""; }; 33 | /* End PBXFileReference section */ 34 | 35 | /* Begin PBXFrameworksBuildPhase section */ 36 | 607FACCD1AFB9204008FA782 /* Frameworks */ = { 37 | isa = PBXFrameworksBuildPhase; 38 | buildActionMask = 2147483647; 39 | files = ( 40 | EE21A103FCA6933D6ECC190A /* Pods_PrioritizedTabBar_Example.framework in Frameworks */, 41 | ); 42 | runOnlyForDeploymentPostprocessing = 0; 43 | }; 44 | /* End PBXFrameworksBuildPhase section */ 45 | 46 | /* Begin PBXGroup section */ 47 | 607FACC71AFB9204008FA782 = { 48 | isa = PBXGroup; 49 | children = ( 50 | 607FACF51AFB993E008FA782 /* Podspec Metadata */, 51 | 607FACD21AFB9204008FA782 /* Example for PrioritizedTabBar */, 52 | 607FACD11AFB9204008FA782 /* Products */, 53 | 8C6FFA2F0A2AAE47CFA52A79 /* Pods */, 54 | 6B50155292088A0E95A79486 /* Frameworks */, 55 | ); 56 | sourceTree = ""; 57 | }; 58 | 607FACD11AFB9204008FA782 /* Products */ = { 59 | isa = PBXGroup; 60 | children = ( 61 | 607FACD01AFB9204008FA782 /* PrioritizedTabBar_Example.app */, 62 | ); 63 | name = Products; 64 | sourceTree = ""; 65 | }; 66 | 607FACD21AFB9204008FA782 /* Example for PrioritizedTabBar */ = { 67 | isa = PBXGroup; 68 | children = ( 69 | 607FACD51AFB9204008FA782 /* AppDelegate.swift */, 70 | 607FACD91AFB9204008FA782 /* Main.storyboard */, 71 | 607FACDC1AFB9204008FA782 /* Images.xcassets */, 72 | 607FACDE1AFB9204008FA782 /* LaunchScreen.xib */, 73 | 607FACD31AFB9204008FA782 /* Supporting Files */, 74 | ); 75 | name = "Example for PrioritizedTabBar"; 76 | path = PrioritizedTabBar; 77 | sourceTree = ""; 78 | }; 79 | 607FACD31AFB9204008FA782 /* Supporting Files */ = { 80 | isa = PBXGroup; 81 | children = ( 82 | 607FACD41AFB9204008FA782 /* Info.plist */, 83 | ); 84 | name = "Supporting Files"; 85 | sourceTree = ""; 86 | }; 87 | 607FACF51AFB993E008FA782 /* Podspec Metadata */ = { 88 | isa = PBXGroup; 89 | children = ( 90 | B97B6DD8E0B00E3F9F931DDC /* PrioritizedTabBar.podspec */, 91 | 2F9B2EAF4BB0A90705B88773 /* README.md */, 92 | 9ECBAA3E8565335B21D4BD14 /* LICENSE */, 93 | ); 94 | name = "Podspec Metadata"; 95 | sourceTree = ""; 96 | }; 97 | 6B50155292088A0E95A79486 /* Frameworks */ = { 98 | isa = PBXGroup; 99 | children = ( 100 | B132BB3FB97F3B3D47231669 /* Pods_PrioritizedTabBar_Example.framework */, 101 | 673CE17C50D838DDFEA53857 /* Pods_PrioritizedTabBar_Tests.framework */, 102 | ); 103 | name = Frameworks; 104 | sourceTree = ""; 105 | }; 106 | 8C6FFA2F0A2AAE47CFA52A79 /* Pods */ = { 107 | isa = PBXGroup; 108 | children = ( 109 | 2866EA4356FFA9E50EF4C5CA /* Pods-PrioritizedTabBar_Example.debug.xcconfig */, 110 | B35050AD350368E78596CD6E /* Pods-PrioritizedTabBar_Example.release.xcconfig */, 111 | 8072BC849EB31B1E97537939 /* Pods-PrioritizedTabBar_Tests.debug.xcconfig */, 112 | 23BFB6329A340122CD4D3075 /* Pods-PrioritizedTabBar_Tests.release.xcconfig */, 113 | ); 114 | path = Pods; 115 | sourceTree = ""; 116 | }; 117 | /* End PBXGroup section */ 118 | 119 | /* Begin PBXNativeTarget section */ 120 | 607FACCF1AFB9204008FA782 /* PrioritizedTabBar_Example */ = { 121 | isa = PBXNativeTarget; 122 | buildConfigurationList = 607FACEF1AFB9204008FA782 /* Build configuration list for PBXNativeTarget "PrioritizedTabBar_Example" */; 123 | buildPhases = ( 124 | 89F52DD9C3DF0B84F8FE95FD /* [CP] Check Pods Manifest.lock */, 125 | 607FACCC1AFB9204008FA782 /* Sources */, 126 | 607FACCD1AFB9204008FA782 /* Frameworks */, 127 | 607FACCE1AFB9204008FA782 /* Resources */, 128 | 897D720C095065B962CE58AC /* [CP] Embed Pods Frameworks */, 129 | ); 130 | buildRules = ( 131 | ); 132 | dependencies = ( 133 | ); 134 | name = PrioritizedTabBar_Example; 135 | productName = PrioritizedTabBar; 136 | productReference = 607FACD01AFB9204008FA782 /* PrioritizedTabBar_Example.app */; 137 | productType = "com.apple.product-type.application"; 138 | }; 139 | /* End PBXNativeTarget section */ 140 | 141 | /* Begin PBXProject section */ 142 | 607FACC81AFB9204008FA782 /* Project object */ = { 143 | isa = PBXProject; 144 | attributes = { 145 | LastSwiftUpdateCheck = 0830; 146 | LastUpgradeCheck = 0830; 147 | ORGANIZATIONNAME = CocoaPods; 148 | TargetAttributes = { 149 | 607FACCF1AFB9204008FA782 = { 150 | CreatedOnToolsVersion = 6.3.1; 151 | LastSwiftMigration = 0900; 152 | }; 153 | }; 154 | }; 155 | buildConfigurationList = 607FACCB1AFB9204008FA782 /* Build configuration list for PBXProject "PrioritizedTabBar" */; 156 | compatibilityVersion = "Xcode 3.2"; 157 | developmentRegion = English; 158 | hasScannedForEncodings = 0; 159 | knownRegions = ( 160 | English, 161 | en, 162 | Base, 163 | ); 164 | mainGroup = 607FACC71AFB9204008FA782; 165 | productRefGroup = 607FACD11AFB9204008FA782 /* Products */; 166 | projectDirPath = ""; 167 | projectRoot = ""; 168 | targets = ( 169 | 607FACCF1AFB9204008FA782 /* PrioritizedTabBar_Example */, 170 | ); 171 | }; 172 | /* End PBXProject section */ 173 | 174 | /* Begin PBXResourcesBuildPhase section */ 175 | 607FACCE1AFB9204008FA782 /* Resources */ = { 176 | isa = PBXResourcesBuildPhase; 177 | buildActionMask = 2147483647; 178 | files = ( 179 | 607FACDB1AFB9204008FA782 /* Main.storyboard in Resources */, 180 | 607FACE01AFB9204008FA782 /* LaunchScreen.xib in Resources */, 181 | 607FACDD1AFB9204008FA782 /* Images.xcassets in Resources */, 182 | ); 183 | runOnlyForDeploymentPostprocessing = 0; 184 | }; 185 | /* End PBXResourcesBuildPhase section */ 186 | 187 | /* Begin PBXShellScriptBuildPhase section */ 188 | 897D720C095065B962CE58AC /* [CP] Embed Pods Frameworks */ = { 189 | isa = PBXShellScriptBuildPhase; 190 | buildActionMask = 2147483647; 191 | files = ( 192 | ); 193 | inputPaths = ( 194 | "${PODS_ROOT}/Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example-frameworks.sh", 195 | "${BUILT_PRODUCTS_DIR}/PrioritizedTabBar/PrioritizedTabBar.framework", 196 | ); 197 | name = "[CP] Embed Pods Frameworks"; 198 | outputPaths = ( 199 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/PrioritizedTabBar.framework", 200 | ); 201 | runOnlyForDeploymentPostprocessing = 0; 202 | shellPath = /bin/sh; 203 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example-frameworks.sh\"\n"; 204 | showEnvVarsInLog = 0; 205 | }; 206 | 89F52DD9C3DF0B84F8FE95FD /* [CP] Check Pods Manifest.lock */ = { 207 | isa = PBXShellScriptBuildPhase; 208 | buildActionMask = 2147483647; 209 | files = ( 210 | ); 211 | inputFileListPaths = ( 212 | ); 213 | inputPaths = ( 214 | "${PODS_PODFILE_DIR_PATH}/Podfile.lock", 215 | "${PODS_ROOT}/Manifest.lock", 216 | ); 217 | name = "[CP] Check Pods Manifest.lock"; 218 | outputFileListPaths = ( 219 | ); 220 | outputPaths = ( 221 | "$(DERIVED_FILE_DIR)/Pods-PrioritizedTabBar_Example-checkManifestLockResult.txt", 222 | ); 223 | runOnlyForDeploymentPostprocessing = 0; 224 | shellPath = /bin/sh; 225 | shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; 226 | showEnvVarsInLog = 0; 227 | }; 228 | /* End PBXShellScriptBuildPhase section */ 229 | 230 | /* Begin PBXSourcesBuildPhase section */ 231 | 607FACCC1AFB9204008FA782 /* Sources */ = { 232 | isa = PBXSourcesBuildPhase; 233 | buildActionMask = 2147483647; 234 | files = ( 235 | 607FACD61AFB9204008FA782 /* AppDelegate.swift in Sources */, 236 | ); 237 | runOnlyForDeploymentPostprocessing = 0; 238 | }; 239 | /* End PBXSourcesBuildPhase section */ 240 | 241 | /* Begin PBXVariantGroup section */ 242 | 607FACD91AFB9204008FA782 /* Main.storyboard */ = { 243 | isa = PBXVariantGroup; 244 | children = ( 245 | 607FACDA1AFB9204008FA782 /* Base */, 246 | ); 247 | name = Main.storyboard; 248 | sourceTree = ""; 249 | }; 250 | 607FACDE1AFB9204008FA782 /* LaunchScreen.xib */ = { 251 | isa = PBXVariantGroup; 252 | children = ( 253 | 607FACDF1AFB9204008FA782 /* Base */, 254 | ); 255 | name = LaunchScreen.xib; 256 | sourceTree = ""; 257 | }; 258 | /* End PBXVariantGroup section */ 259 | 260 | /* Begin XCBuildConfiguration section */ 261 | 607FACED1AFB9204008FA782 /* Debug */ = { 262 | isa = XCBuildConfiguration; 263 | buildSettings = { 264 | ALWAYS_SEARCH_USER_PATHS = NO; 265 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 266 | CLANG_CXX_LIBRARY = "libc++"; 267 | CLANG_ENABLE_MODULES = YES; 268 | CLANG_ENABLE_OBJC_ARC = YES; 269 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 270 | CLANG_WARN_BOOL_CONVERSION = YES; 271 | CLANG_WARN_COMMA = YES; 272 | CLANG_WARN_CONSTANT_CONVERSION = YES; 273 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 274 | CLANG_WARN_EMPTY_BODY = YES; 275 | CLANG_WARN_ENUM_CONVERSION = YES; 276 | CLANG_WARN_INFINITE_RECURSION = YES; 277 | CLANG_WARN_INT_CONVERSION = YES; 278 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 279 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 280 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 281 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 282 | CLANG_WARN_STRICT_PROTOTYPES = YES; 283 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 284 | CLANG_WARN_UNREACHABLE_CODE = YES; 285 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 286 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 287 | COPY_PHASE_STRIP = NO; 288 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 289 | ENABLE_STRICT_OBJC_MSGSEND = YES; 290 | ENABLE_TESTABILITY = YES; 291 | GCC_C_LANGUAGE_STANDARD = gnu99; 292 | GCC_DYNAMIC_NO_PIC = NO; 293 | GCC_NO_COMMON_BLOCKS = YES; 294 | GCC_OPTIMIZATION_LEVEL = 0; 295 | GCC_PREPROCESSOR_DEFINITIONS = ( 296 | "DEBUG=1", 297 | "$(inherited)", 298 | ); 299 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 300 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 301 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 302 | GCC_WARN_UNDECLARED_SELECTOR = YES; 303 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 304 | GCC_WARN_UNUSED_FUNCTION = YES; 305 | GCC_WARN_UNUSED_VARIABLE = YES; 306 | IPHONEOS_DEPLOYMENT_TARGET = 9.3; 307 | MTL_ENABLE_DEBUG_INFO = YES; 308 | ONLY_ACTIVE_ARCH = YES; 309 | SDKROOT = iphoneos; 310 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; 311 | }; 312 | name = Debug; 313 | }; 314 | 607FACEE1AFB9204008FA782 /* Release */ = { 315 | isa = XCBuildConfiguration; 316 | buildSettings = { 317 | ALWAYS_SEARCH_USER_PATHS = NO; 318 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 319 | CLANG_CXX_LIBRARY = "libc++"; 320 | CLANG_ENABLE_MODULES = YES; 321 | CLANG_ENABLE_OBJC_ARC = YES; 322 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 323 | CLANG_WARN_BOOL_CONVERSION = YES; 324 | CLANG_WARN_COMMA = YES; 325 | CLANG_WARN_CONSTANT_CONVERSION = YES; 326 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 327 | CLANG_WARN_EMPTY_BODY = YES; 328 | CLANG_WARN_ENUM_CONVERSION = YES; 329 | CLANG_WARN_INFINITE_RECURSION = YES; 330 | CLANG_WARN_INT_CONVERSION = YES; 331 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 332 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 333 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 334 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 335 | CLANG_WARN_STRICT_PROTOTYPES = YES; 336 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 337 | CLANG_WARN_UNREACHABLE_CODE = YES; 338 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 339 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 340 | COPY_PHASE_STRIP = NO; 341 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 342 | ENABLE_NS_ASSERTIONS = NO; 343 | ENABLE_STRICT_OBJC_MSGSEND = YES; 344 | GCC_C_LANGUAGE_STANDARD = gnu99; 345 | GCC_NO_COMMON_BLOCKS = YES; 346 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 347 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 348 | GCC_WARN_UNDECLARED_SELECTOR = YES; 349 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 350 | GCC_WARN_UNUSED_FUNCTION = YES; 351 | GCC_WARN_UNUSED_VARIABLE = YES; 352 | IPHONEOS_DEPLOYMENT_TARGET = 9.3; 353 | MTL_ENABLE_DEBUG_INFO = NO; 354 | SDKROOT = iphoneos; 355 | SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; 356 | VALIDATE_PRODUCT = YES; 357 | }; 358 | name = Release; 359 | }; 360 | 607FACF01AFB9204008FA782 /* Debug */ = { 361 | isa = XCBuildConfiguration; 362 | baseConfigurationReference = 2866EA4356FFA9E50EF4C5CA /* Pods-PrioritizedTabBar_Example.debug.xcconfig */; 363 | buildSettings = { 364 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 365 | INFOPLIST_FILE = PrioritizedTabBar/Info.plist; 366 | IPHONEOS_DEPLOYMENT_TARGET = 11.0; 367 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 368 | MODULE_NAME = ExampleApp; 369 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)"; 370 | PRODUCT_NAME = "$(TARGET_NAME)"; 371 | SWIFT_SWIFT3_OBJC_INFERENCE = Default; 372 | SWIFT_VERSION = 4.0; 373 | }; 374 | name = Debug; 375 | }; 376 | 607FACF11AFB9204008FA782 /* Release */ = { 377 | isa = XCBuildConfiguration; 378 | baseConfigurationReference = B35050AD350368E78596CD6E /* Pods-PrioritizedTabBar_Example.release.xcconfig */; 379 | buildSettings = { 380 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 381 | INFOPLIST_FILE = PrioritizedTabBar/Info.plist; 382 | IPHONEOS_DEPLOYMENT_TARGET = 11.0; 383 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 384 | MODULE_NAME = ExampleApp; 385 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)"; 386 | PRODUCT_NAME = "$(TARGET_NAME)"; 387 | SWIFT_SWIFT3_OBJC_INFERENCE = Default; 388 | SWIFT_VERSION = 4.0; 389 | }; 390 | name = Release; 391 | }; 392 | /* End XCBuildConfiguration section */ 393 | 394 | /* Begin XCConfigurationList section */ 395 | 607FACCB1AFB9204008FA782 /* Build configuration list for PBXProject "PrioritizedTabBar" */ = { 396 | isa = XCConfigurationList; 397 | buildConfigurations = ( 398 | 607FACED1AFB9204008FA782 /* Debug */, 399 | 607FACEE1AFB9204008FA782 /* Release */, 400 | ); 401 | defaultConfigurationIsVisible = 0; 402 | defaultConfigurationName = Release; 403 | }; 404 | 607FACEF1AFB9204008FA782 /* Build configuration list for PBXNativeTarget "PrioritizedTabBar_Example" */ = { 405 | isa = XCConfigurationList; 406 | buildConfigurations = ( 407 | 607FACF01AFB9204008FA782 /* Debug */, 408 | 607FACF11AFB9204008FA782 /* Release */, 409 | ); 410 | defaultConfigurationIsVisible = 0; 411 | defaultConfigurationName = Release; 412 | }; 413 | /* End XCConfigurationList section */ 414 | }; 415 | rootObject = 607FACC81AFB9204008FA782 /* Project object */; 416 | } 417 | -------------------------------------------------------------------------------- /Example/Pods/Pods.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 00C9B9ACAB6E0011336A99410BF5406A /* Pods-PrioritizedTabBar_Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 991C25DB5A514254B9CC1C2051F35CBD /* Pods-PrioritizedTabBar_Tests-dummy.m */; }; 11 | 0CB548862F0B57647D6CFE37DE9D6F5E /* Pods-PrioritizedTabBar_Tests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = BB046DB7DBD9443826B469E61278AE2C /* Pods-PrioritizedTabBar_Tests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 12 | 111A0DB91B9B173FD9CDBB6C3C33562C /* Pods-PrioritizedTabBar_Example-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 460001D331698384DDED2C5B0DD44342 /* Pods-PrioritizedTabBar_Example-dummy.m */; }; 13 | 24D89A068923705BA0083BA48ED24549 /* RoundedView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D952822F9F5B0B7B220E9A6B4F7EAE1B /* RoundedView.swift */; }; 14 | 3F4B90C2240C6D438A9B9D921A06DF46 /* Pods-PrioritizedTabBar_Example-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C5EF1D3E26472000CFDA988CAB009EE6 /* Pods-PrioritizedTabBar_Example-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 15 | 4E10D217E1359D52A89FEC68C43F4F52 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3212113385A8FBBDB272BD23C409FF61 /* Foundation.framework */; }; 16 | 929DB2A3EA84A88F7C3089B14D7DCB55 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3212113385A8FBBDB272BD23C409FF61 /* Foundation.framework */; }; 17 | 9C9AE42D88FBF8136F2FA143D6515D27 /* PrioritizedTabBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF8CD1CF6B7406E5FC721F64DF871A93 /* PrioritizedTabBar.swift */; }; 18 | 9F18A4E51075E3504B666F38A8721F95 /* PrioritizedTabBar-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F54E8007F76810BFDEC0F9B7A93D5BD /* PrioritizedTabBar-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 19 | B7E1E0FE095ECEA2963D770A0F0D384A /* PrioritizedTabBarController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18CCF982E8A7C97318D8842B39F254AB /* PrioritizedTabBarController.swift */; }; 20 | C55AEE01170AC920F756731BAB929762 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3212113385A8FBBDB272BD23C409FF61 /* Foundation.framework */; }; 21 | DF248F52165FFE4B0C45ADC5B8D167F3 /* PrioritizedTabBar-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 33B9665A767FFA5786A9ECA6C7AA704F /* PrioritizedTabBar-dummy.m */; }; 22 | /* End PBXBuildFile section */ 23 | 24 | /* Begin PBXContainerItemProxy section */ 25 | 05CBA632587C85B83B2875D33657076D /* PBXContainerItemProxy */ = { 26 | isa = PBXContainerItemProxy; 27 | containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; 28 | proxyType = 1; 29 | remoteGlobalIDString = 13C37D1DAD9B3ED0510E2CDB51133364; 30 | remoteInfo = "Pods-PrioritizedTabBar_Example"; 31 | }; 32 | B95C9E43281A058165FEEA66B1DD8191 /* PBXContainerItemProxy */ = { 33 | isa = PBXContainerItemProxy; 34 | containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; 35 | proxyType = 1; 36 | remoteGlobalIDString = 40DF759656896F63C58DC85AD1F00150; 37 | remoteInfo = PrioritizedTabBar; 38 | }; 39 | /* End PBXContainerItemProxy section */ 40 | 41 | /* Begin PBXFileReference section */ 42 | 104CDC5975DA6B72A45401970EFC2A2F /* Pods-PrioritizedTabBar_Example-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-PrioritizedTabBar_Example-acknowledgements.markdown"; sourceTree = ""; }; 43 | 183016901D73888098BEF361248DB329 /* PrioritizedTabBar-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PrioritizedTabBar-prefix.pch"; sourceTree = ""; }; 44 | 18CCF982E8A7C97318D8842B39F254AB /* PrioritizedTabBarController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PrioritizedTabBarController.swift; path = PrioritizedTabBar/Classes/PrioritizedTabBarController.swift; sourceTree = ""; }; 45 | 1DCDB6BA6CCD16CB85C9106247DD7999 /* Pods-PrioritizedTabBar_Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-PrioritizedTabBar_Tests-acknowledgements.markdown"; sourceTree = ""; }; 46 | 1F54E8007F76810BFDEC0F9B7A93D5BD /* PrioritizedTabBar-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PrioritizedTabBar-umbrella.h"; sourceTree = ""; }; 47 | 221883969FC630B427C8589175D70D47 /* Pods-PrioritizedTabBar_Example-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-PrioritizedTabBar_Example-frameworks.sh"; sourceTree = ""; }; 48 | 31E96E7274FAFE10C7497F103C7F66E7 /* Pods-PrioritizedTabBar_Example-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PrioritizedTabBar_Example-Info.plist"; sourceTree = ""; }; 49 | 3212113385A8FBBDB272BD23C409FF61 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; 50 | 33B9665A767FFA5786A9ECA6C7AA704F /* PrioritizedTabBar-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PrioritizedTabBar-dummy.m"; sourceTree = ""; }; 51 | 3E5963855B46E7C5CA1762802914683F /* Pods-PrioritizedTabBar_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-PrioritizedTabBar_Example.debug.xcconfig"; sourceTree = ""; }; 52 | 460001D331698384DDED2C5B0DD44342 /* Pods-PrioritizedTabBar_Example-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-PrioritizedTabBar_Example-dummy.m"; sourceTree = ""; }; 53 | 46AEBD3C0636BC0F02FDA3403104E2F9 /* Pods-PrioritizedTabBar_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-PrioritizedTabBar_Tests.release.xcconfig"; sourceTree = ""; }; 54 | 5305CB9957048974B7BB0A48FEBAB581 /* PrioritizedTabBar.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PrioritizedTabBar.xcconfig; sourceTree = ""; }; 55 | 53BFA24F9F4659912BABBB83005E7F1D /* Pods_PrioritizedTabBar_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_PrioritizedTabBar_Tests.framework; path = "Pods-PrioritizedTabBar_Tests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; 56 | 7625E9B94AF008FB84FB0CAA14870434 /* Pods_PrioritizedTabBar_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_PrioritizedTabBar_Example.framework; path = "Pods-PrioritizedTabBar_Example.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; 57 | 7A5CDB843B2471693F80F67BCF7A5D5A /* PrioritizedTabBar.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = PrioritizedTabBar.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 58 | 7ACF0FB704D03CC36C0BFB78FBA4A5FE /* Pods-PrioritizedTabBar_Example.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-PrioritizedTabBar_Example.modulemap"; sourceTree = ""; }; 59 | 842DD9472999F39CCB6FE29CCFB659F7 /* PrioritizedTabBar-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "PrioritizedTabBar-Info.plist"; sourceTree = ""; }; 60 | 98FF420D2EC1EB5FF5A2728A15BE4A59 /* Pods-PrioritizedTabBar_Tests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-PrioritizedTabBar_Tests.modulemap"; sourceTree = ""; }; 61 | 991C25DB5A514254B9CC1C2051F35CBD /* Pods-PrioritizedTabBar_Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-PrioritizedTabBar_Tests-dummy.m"; sourceTree = ""; }; 62 | 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 63 | BB046DB7DBD9443826B469E61278AE2C /* Pods-PrioritizedTabBar_Tests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-PrioritizedTabBar_Tests-umbrella.h"; sourceTree = ""; }; 64 | BB4B071B32B929318C5DD25D0DB3A7D2 /* Pods-PrioritizedTabBar_Example-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PrioritizedTabBar_Example-acknowledgements.plist"; sourceTree = ""; }; 65 | BB5C6448346B49DA6206748FB49320B8 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; 66 | C5EF1D3E26472000CFDA988CAB009EE6 /* Pods-PrioritizedTabBar_Example-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-PrioritizedTabBar_Example-umbrella.h"; sourceTree = ""; }; 67 | CE93DA7455C3C731464E7AAE33DDAF35 /* PrioritizedTabBar.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PrioritizedTabBar.modulemap; sourceTree = ""; }; 68 | D3B023BCDF8C28E1685BB75D0F7782F6 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; 69 | D942F919CF24E06E97362F44C93A716B /* Pods-PrioritizedTabBar_Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PrioritizedTabBar_Tests-acknowledgements.plist"; sourceTree = ""; }; 70 | D952822F9F5B0B7B220E9A6B4F7EAE1B /* RoundedView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RoundedView.swift; path = PrioritizedTabBar/Classes/RoundedView.swift; sourceTree = ""; }; 71 | DAEA432BEF1544979AAFBD8F3D583B80 /* Pods-PrioritizedTabBar_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-PrioritizedTabBar_Tests.debug.xcconfig"; sourceTree = ""; }; 72 | DF8CD1CF6B7406E5FC721F64DF871A93 /* PrioritizedTabBar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PrioritizedTabBar.swift; path = PrioritizedTabBar/Classes/PrioritizedTabBar.swift; sourceTree = ""; }; 73 | EFE3E27D9AAAEA62432134FE139ECEC8 /* Pods-PrioritizedTabBar_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-PrioritizedTabBar_Example.release.xcconfig"; sourceTree = ""; }; 74 | F70AEFF0683F70372366334CABDCE020 /* Pods-PrioritizedTabBar_Tests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PrioritizedTabBar_Tests-Info.plist"; sourceTree = ""; }; 75 | F97B975038270A8F42B4F400618FE5A9 /* PrioritizedTabBar.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = PrioritizedTabBar.framework; path = PrioritizedTabBar.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 76 | /* End PBXFileReference section */ 77 | 78 | /* Begin PBXFrameworksBuildPhase section */ 79 | 599F7ADF7CAEBD758898DDDE26D0341F /* Frameworks */ = { 80 | isa = PBXFrameworksBuildPhase; 81 | buildActionMask = 2147483647; 82 | files = ( 83 | 4E10D217E1359D52A89FEC68C43F4F52 /* Foundation.framework in Frameworks */, 84 | ); 85 | runOnlyForDeploymentPostprocessing = 0; 86 | }; 87 | 6A2576F04C022B0727946C06188939F9 /* Frameworks */ = { 88 | isa = PBXFrameworksBuildPhase; 89 | buildActionMask = 2147483647; 90 | files = ( 91 | C55AEE01170AC920F756731BAB929762 /* Foundation.framework in Frameworks */, 92 | ); 93 | runOnlyForDeploymentPostprocessing = 0; 94 | }; 95 | E5A4F8514203F3F7F6375DA3BC736BCC /* Frameworks */ = { 96 | isa = PBXFrameworksBuildPhase; 97 | buildActionMask = 2147483647; 98 | files = ( 99 | 929DB2A3EA84A88F7C3089B14D7DCB55 /* Foundation.framework in Frameworks */, 100 | ); 101 | runOnlyForDeploymentPostprocessing = 0; 102 | }; 103 | /* End PBXFrameworksBuildPhase section */ 104 | 105 | /* Begin PBXGroup section */ 106 | 0E9627170CBF0C0846DAAA0A84374DF8 /* Products */ = { 107 | isa = PBXGroup; 108 | children = ( 109 | 7625E9B94AF008FB84FB0CAA14870434 /* Pods_PrioritizedTabBar_Example.framework */, 110 | 53BFA24F9F4659912BABBB83005E7F1D /* Pods_PrioritizedTabBar_Tests.framework */, 111 | F97B975038270A8F42B4F400618FE5A9 /* PrioritizedTabBar.framework */, 112 | ); 113 | name = Products; 114 | sourceTree = ""; 115 | }; 116 | 22CCB39BB2B92EA0482B73647A30F6F1 /* Pods-PrioritizedTabBar_Example */ = { 117 | isa = PBXGroup; 118 | children = ( 119 | 7ACF0FB704D03CC36C0BFB78FBA4A5FE /* Pods-PrioritizedTabBar_Example.modulemap */, 120 | 104CDC5975DA6B72A45401970EFC2A2F /* Pods-PrioritizedTabBar_Example-acknowledgements.markdown */, 121 | BB4B071B32B929318C5DD25D0DB3A7D2 /* Pods-PrioritizedTabBar_Example-acknowledgements.plist */, 122 | 460001D331698384DDED2C5B0DD44342 /* Pods-PrioritizedTabBar_Example-dummy.m */, 123 | 221883969FC630B427C8589175D70D47 /* Pods-PrioritizedTabBar_Example-frameworks.sh */, 124 | 31E96E7274FAFE10C7497F103C7F66E7 /* Pods-PrioritizedTabBar_Example-Info.plist */, 125 | C5EF1D3E26472000CFDA988CAB009EE6 /* Pods-PrioritizedTabBar_Example-umbrella.h */, 126 | 3E5963855B46E7C5CA1762802914683F /* Pods-PrioritizedTabBar_Example.debug.xcconfig */, 127 | EFE3E27D9AAAEA62432134FE139ECEC8 /* Pods-PrioritizedTabBar_Example.release.xcconfig */, 128 | ); 129 | name = "Pods-PrioritizedTabBar_Example"; 130 | path = "Target Support Files/Pods-PrioritizedTabBar_Example"; 131 | sourceTree = ""; 132 | }; 133 | 33519093CF740119085DBE19DC8B456E /* Development Pods */ = { 134 | isa = PBXGroup; 135 | children = ( 136 | 7F656DDF84E4513A4691415388C5C4E4 /* PrioritizedTabBar */, 137 | ); 138 | name = "Development Pods"; 139 | sourceTree = ""; 140 | }; 141 | 6FA126A0A372F0A309594302ED2A9310 /* Pod */ = { 142 | isa = PBXGroup; 143 | children = ( 144 | D3B023BCDF8C28E1685BB75D0F7782F6 /* LICENSE */, 145 | 7A5CDB843B2471693F80F67BCF7A5D5A /* PrioritizedTabBar.podspec */, 146 | BB5C6448346B49DA6206748FB49320B8 /* README.md */, 147 | ); 148 | name = Pod; 149 | sourceTree = ""; 150 | }; 151 | 7F656DDF84E4513A4691415388C5C4E4 /* PrioritizedTabBar */ = { 152 | isa = PBXGroup; 153 | children = ( 154 | DF8CD1CF6B7406E5FC721F64DF871A93 /* PrioritizedTabBar.swift */, 155 | 18CCF982E8A7C97318D8842B39F254AB /* PrioritizedTabBarController.swift */, 156 | D952822F9F5B0B7B220E9A6B4F7EAE1B /* RoundedView.swift */, 157 | 6FA126A0A372F0A309594302ED2A9310 /* Pod */, 158 | 8840AE428272542545771D4B65317CE6 /* Support Files */, 159 | ); 160 | name = PrioritizedTabBar; 161 | path = ../..; 162 | sourceTree = ""; 163 | }; 164 | 8840AE428272542545771D4B65317CE6 /* Support Files */ = { 165 | isa = PBXGroup; 166 | children = ( 167 | CE93DA7455C3C731464E7AAE33DDAF35 /* PrioritizedTabBar.modulemap */, 168 | 5305CB9957048974B7BB0A48FEBAB581 /* PrioritizedTabBar.xcconfig */, 169 | 33B9665A767FFA5786A9ECA6C7AA704F /* PrioritizedTabBar-dummy.m */, 170 | 842DD9472999F39CCB6FE29CCFB659F7 /* PrioritizedTabBar-Info.plist */, 171 | 183016901D73888098BEF361248DB329 /* PrioritizedTabBar-prefix.pch */, 172 | 1F54E8007F76810BFDEC0F9B7A93D5BD /* PrioritizedTabBar-umbrella.h */, 173 | ); 174 | name = "Support Files"; 175 | path = "Example/Pods/Target Support Files/PrioritizedTabBar"; 176 | sourceTree = ""; 177 | }; 178 | C0834CEBB1379A84116EF29F93051C60 /* iOS */ = { 179 | isa = PBXGroup; 180 | children = ( 181 | 3212113385A8FBBDB272BD23C409FF61 /* Foundation.framework */, 182 | ); 183 | name = iOS; 184 | sourceTree = ""; 185 | }; 186 | CF1408CF629C7361332E53B88F7BD30C = { 187 | isa = PBXGroup; 188 | children = ( 189 | 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, 190 | 33519093CF740119085DBE19DC8B456E /* Development Pods */, 191 | D210D550F4EA176C3123ED886F8F87F5 /* Frameworks */, 192 | 0E9627170CBF0C0846DAAA0A84374DF8 /* Products */, 193 | EEFCF0A6F26334F679C40F26DF29D38B /* Targets Support Files */, 194 | ); 195 | sourceTree = ""; 196 | }; 197 | D210D550F4EA176C3123ED886F8F87F5 /* Frameworks */ = { 198 | isa = PBXGroup; 199 | children = ( 200 | C0834CEBB1379A84116EF29F93051C60 /* iOS */, 201 | ); 202 | name = Frameworks; 203 | sourceTree = ""; 204 | }; 205 | EEFCF0A6F26334F679C40F26DF29D38B /* Targets Support Files */ = { 206 | isa = PBXGroup; 207 | children = ( 208 | 22CCB39BB2B92EA0482B73647A30F6F1 /* Pods-PrioritizedTabBar_Example */, 209 | F11F54D2E5ACC3D4E38750304C0018AA /* Pods-PrioritizedTabBar_Tests */, 210 | ); 211 | name = "Targets Support Files"; 212 | sourceTree = ""; 213 | }; 214 | F11F54D2E5ACC3D4E38750304C0018AA /* Pods-PrioritizedTabBar_Tests */ = { 215 | isa = PBXGroup; 216 | children = ( 217 | 98FF420D2EC1EB5FF5A2728A15BE4A59 /* Pods-PrioritizedTabBar_Tests.modulemap */, 218 | 1DCDB6BA6CCD16CB85C9106247DD7999 /* Pods-PrioritizedTabBar_Tests-acknowledgements.markdown */, 219 | D942F919CF24E06E97362F44C93A716B /* Pods-PrioritizedTabBar_Tests-acknowledgements.plist */, 220 | 991C25DB5A514254B9CC1C2051F35CBD /* Pods-PrioritizedTabBar_Tests-dummy.m */, 221 | F70AEFF0683F70372366334CABDCE020 /* Pods-PrioritizedTabBar_Tests-Info.plist */, 222 | BB046DB7DBD9443826B469E61278AE2C /* Pods-PrioritizedTabBar_Tests-umbrella.h */, 223 | DAEA432BEF1544979AAFBD8F3D583B80 /* Pods-PrioritizedTabBar_Tests.debug.xcconfig */, 224 | 46AEBD3C0636BC0F02FDA3403104E2F9 /* Pods-PrioritizedTabBar_Tests.release.xcconfig */, 225 | ); 226 | name = "Pods-PrioritizedTabBar_Tests"; 227 | path = "Target Support Files/Pods-PrioritizedTabBar_Tests"; 228 | sourceTree = ""; 229 | }; 230 | /* End PBXGroup section */ 231 | 232 | /* Begin PBXHeadersBuildPhase section */ 233 | 6DBBF71C2CBE2721269687590D26BBA4 /* Headers */ = { 234 | isa = PBXHeadersBuildPhase; 235 | buildActionMask = 2147483647; 236 | files = ( 237 | 9F18A4E51075E3504B666F38A8721F95 /* PrioritizedTabBar-umbrella.h in Headers */, 238 | ); 239 | runOnlyForDeploymentPostprocessing = 0; 240 | }; 241 | 9FAA11BF604977A7C4F923EA5E8EC25B /* Headers */ = { 242 | isa = PBXHeadersBuildPhase; 243 | buildActionMask = 2147483647; 244 | files = ( 245 | 0CB548862F0B57647D6CFE37DE9D6F5E /* Pods-PrioritizedTabBar_Tests-umbrella.h in Headers */, 246 | ); 247 | runOnlyForDeploymentPostprocessing = 0; 248 | }; 249 | C0355CE43C948E7E5BBFBDD9F1C29ADA /* Headers */ = { 250 | isa = PBXHeadersBuildPhase; 251 | buildActionMask = 2147483647; 252 | files = ( 253 | 3F4B90C2240C6D438A9B9D921A06DF46 /* Pods-PrioritizedTabBar_Example-umbrella.h in Headers */, 254 | ); 255 | runOnlyForDeploymentPostprocessing = 0; 256 | }; 257 | /* End PBXHeadersBuildPhase section */ 258 | 259 | /* Begin PBXNativeTarget section */ 260 | 13C37D1DAD9B3ED0510E2CDB51133364 /* Pods-PrioritizedTabBar_Example */ = { 261 | isa = PBXNativeTarget; 262 | buildConfigurationList = 4BC19F42722A378E7D57A3ED4D743B4A /* Build configuration list for PBXNativeTarget "Pods-PrioritizedTabBar_Example" */; 263 | buildPhases = ( 264 | C0355CE43C948E7E5BBFBDD9F1C29ADA /* Headers */, 265 | 785D2B3A6A5F0C427DA5CB0BF3FF1197 /* Sources */, 266 | E5A4F8514203F3F7F6375DA3BC736BCC /* Frameworks */, 267 | A4F7098FE892909B0DB740E6074456BE /* Resources */, 268 | ); 269 | buildRules = ( 270 | ); 271 | dependencies = ( 272 | F6799CC2BCA92D048D1FA5D2BC34E99E /* PBXTargetDependency */, 273 | ); 274 | name = "Pods-PrioritizedTabBar_Example"; 275 | productName = "Pods-PrioritizedTabBar_Example"; 276 | productReference = 7625E9B94AF008FB84FB0CAA14870434 /* Pods_PrioritizedTabBar_Example.framework */; 277 | productType = "com.apple.product-type.framework"; 278 | }; 279 | 3D20241F3A072EE656F9D1AB403023FC /* Pods-PrioritizedTabBar_Tests */ = { 280 | isa = PBXNativeTarget; 281 | buildConfigurationList = 7C2636CABBDB6E5570AFD4EF8ABD5126 /* Build configuration list for PBXNativeTarget "Pods-PrioritizedTabBar_Tests" */; 282 | buildPhases = ( 283 | 9FAA11BF604977A7C4F923EA5E8EC25B /* Headers */, 284 | 158CFE60F4A6EFC49EE78931E138FFAB /* Sources */, 285 | 6A2576F04C022B0727946C06188939F9 /* Frameworks */, 286 | E23CBF0835687A4462B9938FD7D2DCB2 /* Resources */, 287 | ); 288 | buildRules = ( 289 | ); 290 | dependencies = ( 291 | 49102452D44E38B5550DF2FF288A499E /* PBXTargetDependency */, 292 | ); 293 | name = "Pods-PrioritizedTabBar_Tests"; 294 | productName = "Pods-PrioritizedTabBar_Tests"; 295 | productReference = 53BFA24F9F4659912BABBB83005E7F1D /* Pods_PrioritizedTabBar_Tests.framework */; 296 | productType = "com.apple.product-type.framework"; 297 | }; 298 | 40DF759656896F63C58DC85AD1F00150 /* PrioritizedTabBar */ = { 299 | isa = PBXNativeTarget; 300 | buildConfigurationList = 2448F2D4D0475CB27B23F28C5869DF3F /* Build configuration list for PBXNativeTarget "PrioritizedTabBar" */; 301 | buildPhases = ( 302 | 6DBBF71C2CBE2721269687590D26BBA4 /* Headers */, 303 | DDD52F8527C7D3E91A72553135BAF8CA /* Sources */, 304 | 599F7ADF7CAEBD758898DDDE26D0341F /* Frameworks */, 305 | A3AC80A5E31010B0BFEA51A79ADEF142 /* Resources */, 306 | ); 307 | buildRules = ( 308 | ); 309 | dependencies = ( 310 | ); 311 | name = PrioritizedTabBar; 312 | productName = PrioritizedTabBar; 313 | productReference = F97B975038270A8F42B4F400618FE5A9 /* PrioritizedTabBar.framework */; 314 | productType = "com.apple.product-type.framework"; 315 | }; 316 | /* End PBXNativeTarget section */ 317 | 318 | /* Begin PBXProject section */ 319 | BFDFE7DC352907FC980B868725387E98 /* Project object */ = { 320 | isa = PBXProject; 321 | attributes = { 322 | LastSwiftUpdateCheck = 1100; 323 | LastUpgradeCheck = 1100; 324 | }; 325 | buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; 326 | compatibilityVersion = "Xcode 3.2"; 327 | developmentRegion = en; 328 | hasScannedForEncodings = 0; 329 | knownRegions = ( 330 | en, 331 | Base, 332 | ); 333 | mainGroup = CF1408CF629C7361332E53B88F7BD30C; 334 | productRefGroup = 0E9627170CBF0C0846DAAA0A84374DF8 /* Products */; 335 | projectDirPath = ""; 336 | projectRoot = ""; 337 | targets = ( 338 | 13C37D1DAD9B3ED0510E2CDB51133364 /* Pods-PrioritizedTabBar_Example */, 339 | 3D20241F3A072EE656F9D1AB403023FC /* Pods-PrioritizedTabBar_Tests */, 340 | 40DF759656896F63C58DC85AD1F00150 /* PrioritizedTabBar */, 341 | ); 342 | }; 343 | /* End PBXProject section */ 344 | 345 | /* Begin PBXResourcesBuildPhase section */ 346 | A3AC80A5E31010B0BFEA51A79ADEF142 /* Resources */ = { 347 | isa = PBXResourcesBuildPhase; 348 | buildActionMask = 2147483647; 349 | files = ( 350 | ); 351 | runOnlyForDeploymentPostprocessing = 0; 352 | }; 353 | A4F7098FE892909B0DB740E6074456BE /* Resources */ = { 354 | isa = PBXResourcesBuildPhase; 355 | buildActionMask = 2147483647; 356 | files = ( 357 | ); 358 | runOnlyForDeploymentPostprocessing = 0; 359 | }; 360 | E23CBF0835687A4462B9938FD7D2DCB2 /* Resources */ = { 361 | isa = PBXResourcesBuildPhase; 362 | buildActionMask = 2147483647; 363 | files = ( 364 | ); 365 | runOnlyForDeploymentPostprocessing = 0; 366 | }; 367 | /* End PBXResourcesBuildPhase section */ 368 | 369 | /* Begin PBXSourcesBuildPhase section */ 370 | 158CFE60F4A6EFC49EE78931E138FFAB /* Sources */ = { 371 | isa = PBXSourcesBuildPhase; 372 | buildActionMask = 2147483647; 373 | files = ( 374 | 00C9B9ACAB6E0011336A99410BF5406A /* Pods-PrioritizedTabBar_Tests-dummy.m in Sources */, 375 | ); 376 | runOnlyForDeploymentPostprocessing = 0; 377 | }; 378 | 785D2B3A6A5F0C427DA5CB0BF3FF1197 /* Sources */ = { 379 | isa = PBXSourcesBuildPhase; 380 | buildActionMask = 2147483647; 381 | files = ( 382 | 111A0DB91B9B173FD9CDBB6C3C33562C /* Pods-PrioritizedTabBar_Example-dummy.m in Sources */, 383 | ); 384 | runOnlyForDeploymentPostprocessing = 0; 385 | }; 386 | DDD52F8527C7D3E91A72553135BAF8CA /* Sources */ = { 387 | isa = PBXSourcesBuildPhase; 388 | buildActionMask = 2147483647; 389 | files = ( 390 | DF248F52165FFE4B0C45ADC5B8D167F3 /* PrioritizedTabBar-dummy.m in Sources */, 391 | 9C9AE42D88FBF8136F2FA143D6515D27 /* PrioritizedTabBar.swift in Sources */, 392 | B7E1E0FE095ECEA2963D770A0F0D384A /* PrioritizedTabBarController.swift in Sources */, 393 | 24D89A068923705BA0083BA48ED24549 /* RoundedView.swift in Sources */, 394 | ); 395 | runOnlyForDeploymentPostprocessing = 0; 396 | }; 397 | /* End PBXSourcesBuildPhase section */ 398 | 399 | /* Begin PBXTargetDependency section */ 400 | 49102452D44E38B5550DF2FF288A499E /* PBXTargetDependency */ = { 401 | isa = PBXTargetDependency; 402 | name = "Pods-PrioritizedTabBar_Example"; 403 | target = 13C37D1DAD9B3ED0510E2CDB51133364 /* Pods-PrioritizedTabBar_Example */; 404 | targetProxy = 05CBA632587C85B83B2875D33657076D /* PBXContainerItemProxy */; 405 | }; 406 | F6799CC2BCA92D048D1FA5D2BC34E99E /* PBXTargetDependency */ = { 407 | isa = PBXTargetDependency; 408 | name = PrioritizedTabBar; 409 | target = 40DF759656896F63C58DC85AD1F00150 /* PrioritizedTabBar */; 410 | targetProxy = B95C9E43281A058165FEEA66B1DD8191 /* PBXContainerItemProxy */; 411 | }; 412 | /* End PBXTargetDependency section */ 413 | 414 | /* Begin XCBuildConfiguration section */ 415 | 196DFA3E4A09A28224918543529A1885 /* Debug */ = { 416 | isa = XCBuildConfiguration; 417 | buildSettings = { 418 | ALWAYS_SEARCH_USER_PATHS = NO; 419 | CLANG_ANALYZER_NONNULL = YES; 420 | CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; 421 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; 422 | CLANG_CXX_LIBRARY = "libc++"; 423 | CLANG_ENABLE_MODULES = YES; 424 | CLANG_ENABLE_OBJC_ARC = YES; 425 | CLANG_ENABLE_OBJC_WEAK = YES; 426 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 427 | CLANG_WARN_BOOL_CONVERSION = YES; 428 | CLANG_WARN_COMMA = YES; 429 | CLANG_WARN_CONSTANT_CONVERSION = YES; 430 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 431 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 432 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 433 | CLANG_WARN_EMPTY_BODY = YES; 434 | CLANG_WARN_ENUM_CONVERSION = YES; 435 | CLANG_WARN_INFINITE_RECURSION = YES; 436 | CLANG_WARN_INT_CONVERSION = YES; 437 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 438 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 439 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 440 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 441 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 442 | CLANG_WARN_STRICT_PROTOTYPES = YES; 443 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 444 | CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; 445 | CLANG_WARN_UNREACHABLE_CODE = YES; 446 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 447 | COPY_PHASE_STRIP = NO; 448 | DEBUG_INFORMATION_FORMAT = dwarf; 449 | ENABLE_STRICT_OBJC_MSGSEND = YES; 450 | ENABLE_TESTABILITY = YES; 451 | GCC_C_LANGUAGE_STANDARD = gnu11; 452 | GCC_DYNAMIC_NO_PIC = NO; 453 | GCC_NO_COMMON_BLOCKS = YES; 454 | GCC_OPTIMIZATION_LEVEL = 0; 455 | GCC_PREPROCESSOR_DEFINITIONS = ( 456 | "POD_CONFIGURATION_DEBUG=1", 457 | "DEBUG=1", 458 | "$(inherited)", 459 | ); 460 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 461 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 462 | GCC_WARN_UNDECLARED_SELECTOR = YES; 463 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 464 | GCC_WARN_UNUSED_FUNCTION = YES; 465 | GCC_WARN_UNUSED_VARIABLE = YES; 466 | IPHONEOS_DEPLOYMENT_TARGET = 10.0; 467 | MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; 468 | MTL_FAST_MATH = YES; 469 | ONLY_ACTIVE_ARCH = YES; 470 | PRODUCT_NAME = "$(TARGET_NAME)"; 471 | STRIP_INSTALLED_PRODUCT = NO; 472 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; 473 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; 474 | SWIFT_VERSION = 5.0; 475 | SYMROOT = "${SRCROOT}/../build"; 476 | }; 477 | name = Debug; 478 | }; 479 | 62CB5487F3D2BF983E6B8FB5601DEC86 /* Debug */ = { 480 | isa = XCBuildConfiguration; 481 | baseConfigurationReference = 5305CB9957048974B7BB0A48FEBAB581 /* PrioritizedTabBar.xcconfig */; 482 | buildSettings = { 483 | CLANG_ENABLE_OBJC_WEAK = NO; 484 | CODE_SIGN_IDENTITY = ""; 485 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 486 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 487 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 488 | CURRENT_PROJECT_VERSION = 1; 489 | DEFINES_MODULE = YES; 490 | DYLIB_COMPATIBILITY_VERSION = 1; 491 | DYLIB_CURRENT_VERSION = 1; 492 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 493 | GCC_PREFIX_HEADER = "Target Support Files/PrioritizedTabBar/PrioritizedTabBar-prefix.pch"; 494 | INFOPLIST_FILE = "Target Support Files/PrioritizedTabBar/PrioritizedTabBar-Info.plist"; 495 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 496 | IPHONEOS_DEPLOYMENT_TARGET = 11.0; 497 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 498 | MODULEMAP_FILE = "Target Support Files/PrioritizedTabBar/PrioritizedTabBar.modulemap"; 499 | PRODUCT_MODULE_NAME = PrioritizedTabBar; 500 | PRODUCT_NAME = PrioritizedTabBar; 501 | SDKROOT = iphoneos; 502 | SKIP_INSTALL = YES; 503 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; 504 | SWIFT_VERSION = 4.0; 505 | TARGETED_DEVICE_FAMILY = "1,2"; 506 | VERSIONING_SYSTEM = "apple-generic"; 507 | VERSION_INFO_PREFIX = ""; 508 | }; 509 | name = Debug; 510 | }; 511 | 64607B6661E63ADAE11A1C3896C01327 /* Release */ = { 512 | isa = XCBuildConfiguration; 513 | baseConfigurationReference = 46AEBD3C0636BC0F02FDA3403104E2F9 /* Pods-PrioritizedTabBar_Tests.release.xcconfig */; 514 | buildSettings = { 515 | ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; 516 | CLANG_ENABLE_OBJC_WEAK = NO; 517 | CODE_SIGN_IDENTITY = ""; 518 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 519 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 520 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 521 | CURRENT_PROJECT_VERSION = 1; 522 | DEFINES_MODULE = YES; 523 | DYLIB_COMPATIBILITY_VERSION = 1; 524 | DYLIB_CURRENT_VERSION = 1; 525 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 526 | INFOPLIST_FILE = "Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests-Info.plist"; 527 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 528 | IPHONEOS_DEPLOYMENT_TARGET = 10.0; 529 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 530 | MACH_O_TYPE = staticlib; 531 | MODULEMAP_FILE = "Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests.modulemap"; 532 | OTHER_LDFLAGS = ""; 533 | OTHER_LIBTOOLFLAGS = ""; 534 | PODS_ROOT = "$(SRCROOT)"; 535 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; 536 | PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; 537 | SDKROOT = iphoneos; 538 | SKIP_INSTALL = YES; 539 | TARGETED_DEVICE_FAMILY = "1,2"; 540 | VALIDATE_PRODUCT = YES; 541 | VERSIONING_SYSTEM = "apple-generic"; 542 | VERSION_INFO_PREFIX = ""; 543 | }; 544 | name = Release; 545 | }; 546 | B01D14FDC83DCF9D4BE53066BEA96D05 /* Release */ = { 547 | isa = XCBuildConfiguration; 548 | buildSettings = { 549 | ALWAYS_SEARCH_USER_PATHS = NO; 550 | CLANG_ANALYZER_NONNULL = YES; 551 | CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; 552 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; 553 | CLANG_CXX_LIBRARY = "libc++"; 554 | CLANG_ENABLE_MODULES = YES; 555 | CLANG_ENABLE_OBJC_ARC = YES; 556 | CLANG_ENABLE_OBJC_WEAK = YES; 557 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 558 | CLANG_WARN_BOOL_CONVERSION = YES; 559 | CLANG_WARN_COMMA = YES; 560 | CLANG_WARN_CONSTANT_CONVERSION = YES; 561 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 562 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 563 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 564 | CLANG_WARN_EMPTY_BODY = YES; 565 | CLANG_WARN_ENUM_CONVERSION = YES; 566 | CLANG_WARN_INFINITE_RECURSION = YES; 567 | CLANG_WARN_INT_CONVERSION = YES; 568 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 569 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 570 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 571 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 572 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 573 | CLANG_WARN_STRICT_PROTOTYPES = YES; 574 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 575 | CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; 576 | CLANG_WARN_UNREACHABLE_CODE = YES; 577 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 578 | COPY_PHASE_STRIP = NO; 579 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 580 | ENABLE_NS_ASSERTIONS = NO; 581 | ENABLE_STRICT_OBJC_MSGSEND = YES; 582 | GCC_C_LANGUAGE_STANDARD = gnu11; 583 | GCC_NO_COMMON_BLOCKS = YES; 584 | GCC_PREPROCESSOR_DEFINITIONS = ( 585 | "POD_CONFIGURATION_RELEASE=1", 586 | "$(inherited)", 587 | ); 588 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 589 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 590 | GCC_WARN_UNDECLARED_SELECTOR = YES; 591 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 592 | GCC_WARN_UNUSED_FUNCTION = YES; 593 | GCC_WARN_UNUSED_VARIABLE = YES; 594 | IPHONEOS_DEPLOYMENT_TARGET = 10.0; 595 | MTL_ENABLE_DEBUG_INFO = NO; 596 | MTL_FAST_MATH = YES; 597 | PRODUCT_NAME = "$(TARGET_NAME)"; 598 | STRIP_INSTALLED_PRODUCT = NO; 599 | SWIFT_COMPILATION_MODE = wholemodule; 600 | SWIFT_OPTIMIZATION_LEVEL = "-O"; 601 | SWIFT_VERSION = 5.0; 602 | SYMROOT = "${SRCROOT}/../build"; 603 | }; 604 | name = Release; 605 | }; 606 | D201ED945E2A383EF005B48DE16F8B8B /* Release */ = { 607 | isa = XCBuildConfiguration; 608 | baseConfigurationReference = EFE3E27D9AAAEA62432134FE139ECEC8 /* Pods-PrioritizedTabBar_Example.release.xcconfig */; 609 | buildSettings = { 610 | ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; 611 | CLANG_ENABLE_OBJC_WEAK = NO; 612 | CODE_SIGN_IDENTITY = ""; 613 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 614 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 615 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 616 | CURRENT_PROJECT_VERSION = 1; 617 | DEFINES_MODULE = YES; 618 | DYLIB_COMPATIBILITY_VERSION = 1; 619 | DYLIB_CURRENT_VERSION = 1; 620 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 621 | INFOPLIST_FILE = "Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example-Info.plist"; 622 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 623 | IPHONEOS_DEPLOYMENT_TARGET = 10.0; 624 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 625 | MACH_O_TYPE = staticlib; 626 | MODULEMAP_FILE = "Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example.modulemap"; 627 | OTHER_LDFLAGS = ""; 628 | OTHER_LIBTOOLFLAGS = ""; 629 | PODS_ROOT = "$(SRCROOT)"; 630 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; 631 | PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; 632 | SDKROOT = iphoneos; 633 | SKIP_INSTALL = YES; 634 | TARGETED_DEVICE_FAMILY = "1,2"; 635 | VALIDATE_PRODUCT = YES; 636 | VERSIONING_SYSTEM = "apple-generic"; 637 | VERSION_INFO_PREFIX = ""; 638 | }; 639 | name = Release; 640 | }; 641 | D83564B97AA09087CB5628FEB6377170 /* Debug */ = { 642 | isa = XCBuildConfiguration; 643 | baseConfigurationReference = 3E5963855B46E7C5CA1762802914683F /* Pods-PrioritizedTabBar_Example.debug.xcconfig */; 644 | buildSettings = { 645 | ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; 646 | CLANG_ENABLE_OBJC_WEAK = NO; 647 | CODE_SIGN_IDENTITY = ""; 648 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 649 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 650 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 651 | CURRENT_PROJECT_VERSION = 1; 652 | DEFINES_MODULE = YES; 653 | DYLIB_COMPATIBILITY_VERSION = 1; 654 | DYLIB_CURRENT_VERSION = 1; 655 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 656 | INFOPLIST_FILE = "Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example-Info.plist"; 657 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 658 | IPHONEOS_DEPLOYMENT_TARGET = 10.0; 659 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 660 | MACH_O_TYPE = staticlib; 661 | MODULEMAP_FILE = "Target Support Files/Pods-PrioritizedTabBar_Example/Pods-PrioritizedTabBar_Example.modulemap"; 662 | OTHER_LDFLAGS = ""; 663 | OTHER_LIBTOOLFLAGS = ""; 664 | PODS_ROOT = "$(SRCROOT)"; 665 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; 666 | PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; 667 | SDKROOT = iphoneos; 668 | SKIP_INSTALL = YES; 669 | TARGETED_DEVICE_FAMILY = "1,2"; 670 | VERSIONING_SYSTEM = "apple-generic"; 671 | VERSION_INFO_PREFIX = ""; 672 | }; 673 | name = Debug; 674 | }; 675 | DB70D91EE60D1E927FF9AA3DB9239707 /* Release */ = { 676 | isa = XCBuildConfiguration; 677 | baseConfigurationReference = 5305CB9957048974B7BB0A48FEBAB581 /* PrioritizedTabBar.xcconfig */; 678 | buildSettings = { 679 | CLANG_ENABLE_OBJC_WEAK = NO; 680 | CODE_SIGN_IDENTITY = ""; 681 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 682 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 683 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 684 | CURRENT_PROJECT_VERSION = 1; 685 | DEFINES_MODULE = YES; 686 | DYLIB_COMPATIBILITY_VERSION = 1; 687 | DYLIB_CURRENT_VERSION = 1; 688 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 689 | GCC_PREFIX_HEADER = "Target Support Files/PrioritizedTabBar/PrioritizedTabBar-prefix.pch"; 690 | INFOPLIST_FILE = "Target Support Files/PrioritizedTabBar/PrioritizedTabBar-Info.plist"; 691 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 692 | IPHONEOS_DEPLOYMENT_TARGET = 11.0; 693 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 694 | MODULEMAP_FILE = "Target Support Files/PrioritizedTabBar/PrioritizedTabBar.modulemap"; 695 | PRODUCT_MODULE_NAME = PrioritizedTabBar; 696 | PRODUCT_NAME = PrioritizedTabBar; 697 | SDKROOT = iphoneos; 698 | SKIP_INSTALL = YES; 699 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; 700 | SWIFT_VERSION = 4.0; 701 | TARGETED_DEVICE_FAMILY = "1,2"; 702 | VALIDATE_PRODUCT = YES; 703 | VERSIONING_SYSTEM = "apple-generic"; 704 | VERSION_INFO_PREFIX = ""; 705 | }; 706 | name = Release; 707 | }; 708 | ED15332792E048DD611B0DA621AEFFB9 /* Debug */ = { 709 | isa = XCBuildConfiguration; 710 | baseConfigurationReference = DAEA432BEF1544979AAFBD8F3D583B80 /* Pods-PrioritizedTabBar_Tests.debug.xcconfig */; 711 | buildSettings = { 712 | ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; 713 | CLANG_ENABLE_OBJC_WEAK = NO; 714 | CODE_SIGN_IDENTITY = ""; 715 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 716 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 717 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 718 | CURRENT_PROJECT_VERSION = 1; 719 | DEFINES_MODULE = YES; 720 | DYLIB_COMPATIBILITY_VERSION = 1; 721 | DYLIB_CURRENT_VERSION = 1; 722 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 723 | INFOPLIST_FILE = "Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests-Info.plist"; 724 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 725 | IPHONEOS_DEPLOYMENT_TARGET = 10.0; 726 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 727 | MACH_O_TYPE = staticlib; 728 | MODULEMAP_FILE = "Target Support Files/Pods-PrioritizedTabBar_Tests/Pods-PrioritizedTabBar_Tests.modulemap"; 729 | OTHER_LDFLAGS = ""; 730 | OTHER_LIBTOOLFLAGS = ""; 731 | PODS_ROOT = "$(SRCROOT)"; 732 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; 733 | PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; 734 | SDKROOT = iphoneos; 735 | SKIP_INSTALL = YES; 736 | TARGETED_DEVICE_FAMILY = "1,2"; 737 | VERSIONING_SYSTEM = "apple-generic"; 738 | VERSION_INFO_PREFIX = ""; 739 | }; 740 | name = Debug; 741 | }; 742 | /* End XCBuildConfiguration section */ 743 | 744 | /* Begin XCConfigurationList section */ 745 | 2448F2D4D0475CB27B23F28C5869DF3F /* Build configuration list for PBXNativeTarget "PrioritizedTabBar" */ = { 746 | isa = XCConfigurationList; 747 | buildConfigurations = ( 748 | 62CB5487F3D2BF983E6B8FB5601DEC86 /* Debug */, 749 | DB70D91EE60D1E927FF9AA3DB9239707 /* Release */, 750 | ); 751 | defaultConfigurationIsVisible = 0; 752 | defaultConfigurationName = Release; 753 | }; 754 | 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { 755 | isa = XCConfigurationList; 756 | buildConfigurations = ( 757 | 196DFA3E4A09A28224918543529A1885 /* Debug */, 758 | B01D14FDC83DCF9D4BE53066BEA96D05 /* Release */, 759 | ); 760 | defaultConfigurationIsVisible = 0; 761 | defaultConfigurationName = Release; 762 | }; 763 | 4BC19F42722A378E7D57A3ED4D743B4A /* Build configuration list for PBXNativeTarget "Pods-PrioritizedTabBar_Example" */ = { 764 | isa = XCConfigurationList; 765 | buildConfigurations = ( 766 | D83564B97AA09087CB5628FEB6377170 /* Debug */, 767 | D201ED945E2A383EF005B48DE16F8B8B /* Release */, 768 | ); 769 | defaultConfigurationIsVisible = 0; 770 | defaultConfigurationName = Release; 771 | }; 772 | 7C2636CABBDB6E5570AFD4EF8ABD5126 /* Build configuration list for PBXNativeTarget "Pods-PrioritizedTabBar_Tests" */ = { 773 | isa = XCConfigurationList; 774 | buildConfigurations = ( 775 | ED15332792E048DD611B0DA621AEFFB9 /* Debug */, 776 | 64607B6661E63ADAE11A1C3896C01327 /* Release */, 777 | ); 778 | defaultConfigurationIsVisible = 0; 779 | defaultConfigurationName = Release; 780 | }; 781 | /* End XCConfigurationList section */ 782 | }; 783 | rootObject = BFDFE7DC352907FC980B868725387E98 /* Project object */; 784 | } 785 | --------------------------------------------------------------------------------