├── Pod ├── Assets │ ├── .gitkeep │ ├── arrrow_left.png │ └── arrrow_right.png └── Classes │ ├── .gitkeep │ ├── ZRScrollableTabBar.h │ └── ZRScrollableTabBar.m ├── Example ├── Tests │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── Tests.m │ ├── Tests-Prefix.pch │ └── Tests-Info.plist ├── Pods │ ├── Target Support Files │ │ ├── Pods-Tests-ZRScrollableTabBar │ │ │ ├── Pods-Tests-ZRScrollableTabBar.xcconfig │ │ │ ├── Pods-Tests-ZRScrollableTabBar-prefix.pch │ │ │ ├── Pods-Tests-ZRScrollableTabBar-dummy.m │ │ │ └── Pods-Tests-ZRScrollableTabBar-Private.xcconfig │ │ ├── Pods-ZRScrollableTabBar-ZRScrollableTabBar │ │ │ ├── Pods-ZRScrollableTabBar-ZRScrollableTabBar.xcconfig │ │ │ ├── Pods-ZRScrollableTabBar-ZRScrollableTabBar-prefix.pch │ │ │ ├── Pods-ZRScrollableTabBar-ZRScrollableTabBar-dummy.m │ │ │ └── Pods-ZRScrollableTabBar-ZRScrollableTabBar-Private.xcconfig │ │ ├── Pods-Tests │ │ │ ├── Pods-Tests-dummy.m │ │ │ ├── Pods-Tests.debug.xcconfig │ │ │ ├── Pods-Tests.release.xcconfig │ │ │ ├── Pods-Tests-environment.h │ │ │ ├── Pods-Tests-acknowledgements.markdown │ │ │ ├── Pods-Tests-acknowledgements.plist │ │ │ └── Pods-Tests-resources.sh │ │ └── Pods-ZRScrollableTabBar │ │ │ ├── Pods-ZRScrollableTabBar-dummy.m │ │ │ ├── Pods-ZRScrollableTabBar.debug.xcconfig │ │ │ ├── Pods-ZRScrollableTabBar.release.xcconfig │ │ │ ├── Pods-ZRScrollableTabBar-environment.h │ │ │ ├── Pods-ZRScrollableTabBar-acknowledgements.markdown │ │ │ ├── Pods-ZRScrollableTabBar-acknowledgements.plist │ │ │ └── Pods-ZRScrollableTabBar-resources.sh │ ├── Manifest.lock │ ├── Local Podspecs │ │ └── ZRScrollableTabBar.podspec │ └── Pods.xcodeproj │ │ └── project.pbxproj ├── ZRScrollableTabBar │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── Screenshot1.png │ ├── Screenshot2.png │ ├── Screenshot3.png │ ├── ZRViewController.h │ ├── ZRAppDelegate.h │ ├── main.m │ ├── ZRScrollableTabBar-Prefix.pch │ ├── Images.xcassets │ │ ├── LaunchImage.launchimage │ │ │ └── Contents.json │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── ZRScrollableTabBar-Info.plist │ ├── Base.lproj │ │ ├── Main_iPad.storyboard │ │ └── Main_iPhone.storyboard │ ├── ZRViewController.m │ └── ZRAppDelegate.m ├── ZRScrollableTabBar.xcodeproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ ├── xcshareddata │ │ └── xcschemes │ │ │ └── ZRScrollableTabBar-Example.xcscheme │ └── project.pbxproj ├── Podfile ├── Podfile.lock └── ZRScrollableTabBar.xcworkspace │ └── contents.xcworkspacedata ├── .travis.yml ├── .gitignore ├── LICENSE ├── ZRScrollableTabBar.podspec └── README.md /Pod/Assets/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Pod/Classes/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Example/Tests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests-ZRScrollableTabBar/Pods-Tests-ZRScrollableTabBar.xcconfig: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Pod/Assets/arrrow_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raihan/ZRScrollableTabBar/HEAD/Pod/Assets/arrrow_left.png -------------------------------------------------------------------------------- /Pod/Assets/arrrow_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raihan/ZRScrollableTabBar/HEAD/Pod/Assets/arrrow_right.png -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-ZRScrollableTabBar-ZRScrollableTabBar/Pods-ZRScrollableTabBar-ZRScrollableTabBar.xcconfig: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/Screenshot1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raihan/ZRScrollableTabBar/HEAD/Example/ZRScrollableTabBar/Screenshot1.png -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/Screenshot2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raihan/ZRScrollableTabBar/HEAD/Example/ZRScrollableTabBar/Screenshot2.png -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/Screenshot3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raihan/ZRScrollableTabBar/HEAD/Example/ZRScrollableTabBar/Screenshot3.png -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests-ZRScrollableTabBar/Pods-Tests-ZRScrollableTabBar-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | #import "Pods-Tests-environment.h" 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_Tests : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_Tests 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Tests/Tests.m: -------------------------------------------------------------------------------- 1 | // 2 | // ZRScrollableTabBarTests.m 3 | // ZRScrollableTabBarTests 4 | // 5 | // Created by raihan on 02/03/2015. 6 | // Copyright (c) 2014 raihan. All rights reserved. 7 | // 8 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-ZRScrollableTabBar-ZRScrollableTabBar/Pods-ZRScrollableTabBar-ZRScrollableTabBar-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | #import "Pods-ZRScrollableTabBar-environment.h" 6 | -------------------------------------------------------------------------------- /Example/Tests/Tests-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every test case source file. 5 | // 6 | 7 | #ifdef __OBJC__ 8 | 9 | 10 | 11 | #endif 12 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-ZRScrollableTabBar/Pods-ZRScrollableTabBar-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_ZRScrollableTabBar : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_ZRScrollableTabBar 5 | @end 6 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests-ZRScrollableTabBar/Pods-Tests-ZRScrollableTabBar-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_Tests_ZRScrollableTabBar : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_Tests_ZRScrollableTabBar 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Podfile: -------------------------------------------------------------------------------- 1 | source 'https://github.com/CocoaPods/Specs.git' 2 | 3 | target 'ZRScrollableTabBar', :exclusive => true do 4 | pod "ZRScrollableTabBar", :path => "../" 5 | end 6 | 7 | target 'Tests', :exclusive => true do 8 | pod "ZRScrollableTabBar", :path => "../" 9 | 10 | 11 | end 12 | -------------------------------------------------------------------------------- /Example/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - ZRScrollableTabBar (0.1.0) 3 | 4 | DEPENDENCIES: 5 | - ZRScrollableTabBar (from `../`) 6 | 7 | EXTERNAL SOURCES: 8 | ZRScrollableTabBar: 9 | :path: ../ 10 | 11 | SPEC CHECKSUMS: 12 | ZRScrollableTabBar: de274d1df522e3053c5a8b19d0e9c40e83365c9d 13 | 14 | COCOAPODS: 0.35.0 15 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-ZRScrollableTabBar-ZRScrollableTabBar/Pods-ZRScrollableTabBar-ZRScrollableTabBar-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_ZRScrollableTabBar_ZRScrollableTabBar : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_ZRScrollableTabBar_ZRScrollableTabBar 5 | @end 6 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/ZRViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ZRViewController.h 3 | // ZRScrollableTabBar 4 | // 5 | // Created by raihan on 02/03/2015. 6 | // Copyright (c) 2014 raihan. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ZRViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Example/Pods/Manifest.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - ZRScrollableTabBar (0.1.0) 3 | 4 | DEPENDENCIES: 5 | - ZRScrollableTabBar (from `../`) 6 | 7 | EXTERNAL SOURCES: 8 | ZRScrollableTabBar: 9 | :path: ../ 10 | 11 | SPEC CHECKSUMS: 12 | ZRScrollableTabBar: de274d1df522e3053c5a8b19d0e9c40e83365c9d 13 | 14 | COCOAPODS: 0.35.0 15 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/ZRAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // ZRAppDelegate.h 3 | // ZRScrollableTabBar 4 | // 5 | // Created by CocoaPods on 02/03/2015. 6 | // Copyright (c) 2014 raihan. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ZRAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests-ZRScrollableTabBar/Pods-Tests-ZRScrollableTabBar-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-Tests-ZRScrollableTabBar.xcconfig" 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Build" "${PODS_ROOT}/Headers/Build/ZRScrollableTabBar" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/ZRScrollableTabBar" 4 | OTHER_LDFLAGS = -ObjC 5 | PODS_ROOT = ${SRCROOT} -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // ZRScrollableTabBar 4 | // 5 | // Created by raihan on 02/03/2015. 6 | // Copyright (c) 2014 raihan. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "ZRAppDelegate.h" 12 | 13 | int main(int argc, char * argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([ZRAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/ZRScrollableTabBar-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | #endif 17 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests.debug.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/ZRScrollableTabBar" 3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/ZRScrollableTabBar" 4 | OTHER_LDFLAGS = -ObjC -l"Pods-Tests-ZRScrollableTabBar" 5 | OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) 6 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-ZRScrollableTabBar-ZRScrollableTabBar/Pods-ZRScrollableTabBar-ZRScrollableTabBar-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-ZRScrollableTabBar-ZRScrollableTabBar.xcconfig" 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Build" "${PODS_ROOT}/Headers/Build/ZRScrollableTabBar" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/ZRScrollableTabBar" 4 | OTHER_LDFLAGS = -ObjC 5 | PODS_ROOT = ${SRCROOT} -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests.release.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/ZRScrollableTabBar" 3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/ZRScrollableTabBar" 4 | OTHER_LDFLAGS = -ObjC -l"Pods-Tests-ZRScrollableTabBar" 5 | OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) 6 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-ZRScrollableTabBar/Pods-ZRScrollableTabBar.debug.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/ZRScrollableTabBar" 3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/ZRScrollableTabBar" 4 | OTHER_LDFLAGS = -ObjC -l"Pods-ZRScrollableTabBar-ZRScrollableTabBar" 5 | OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) 6 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-ZRScrollableTabBar/Pods-ZRScrollableTabBar.release.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/ZRScrollableTabBar" 3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/ZRScrollableTabBar" 4 | OTHER_LDFLAGS = -ObjC -l"Pods-ZRScrollableTabBar-ZRScrollableTabBar" 5 | OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) 6 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests-environment.h: -------------------------------------------------------------------------------- 1 | 2 | // To check if a library is compiled with CocoaPods you 3 | // can use the `COCOAPODS` macro definition which is 4 | // defined in the xcconfigs so it is available in 5 | // headers also when they are imported in the client 6 | // project. 7 | 8 | 9 | // ZRScrollableTabBar 10 | #define COCOAPODS_POD_AVAILABLE_ZRScrollableTabBar 11 | #define COCOAPODS_VERSION_MAJOR_ZRScrollableTabBar 0 12 | #define COCOAPODS_VERSION_MINOR_ZRScrollableTabBar 1 13 | #define COCOAPODS_VERSION_PATCH_ZRScrollableTabBar 0 14 | 15 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-ZRScrollableTabBar/Pods-ZRScrollableTabBar-environment.h: -------------------------------------------------------------------------------- 1 | 2 | // To check if a library is compiled with CocoaPods you 3 | // can use the `COCOAPODS` macro definition which is 4 | // defined in the xcconfigs so it is available in 5 | // headers also when they are imported in the client 6 | // project. 7 | 8 | 9 | // ZRScrollableTabBar 10 | #define COCOAPODS_POD_AVAILABLE_ZRScrollableTabBar 11 | #define COCOAPODS_VERSION_MAJOR_ZRScrollableTabBar 0 12 | #define COCOAPODS_VERSION_MINOR_ZRScrollableTabBar 1 13 | #define COCOAPODS_VERSION_PATCH_ZRScrollableTabBar 0 14 | 15 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # references: 2 | # * http://www.objc.io/issue-6/travis-ci.html 3 | # * https://github.com/supermarin/xcpretty#usage 4 | 5 | language: objective-c 6 | # cache: cocoapods 7 | # podfile: Example/Podfile 8 | # before_install: 9 | # - gem install cocoapods # Since Travis is not always on latest version 10 | # - pod install --project-directory=Example 11 | install: 12 | - gem install xcpretty --no-rdoc --no-ri --no-document --quiet 13 | script: 14 | - set -o pipefail && xcodebuild test -workspace Example/ZRScrollableTabBar.xcworkspace -scheme ZRScrollableTabBar-Example -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO | xcpretty -c 15 | - pod lib lint --quick 16 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # OS X 2 | .DS_Store 3 | 4 | # Xcode 5 | build/ 6 | *.pbxuser 7 | !default.pbxuser 8 | *.mode1v3 9 | !default.mode1v3 10 | *.mode2v3 11 | !default.mode2v3 12 | *.perspectivev3 13 | !default.perspectivev3 14 | xcuserdata 15 | *.xccheckout 16 | profile 17 | *.moved-aside 18 | DerivedData 19 | *.hmap 20 | *.ipa 21 | 22 | # Bundler 23 | .bundle 24 | 25 | # We recommend against adding the Pods directory to your .gitignore. However 26 | # you should judge for yourself, the pros and cons are mentioned at: 27 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 28 | # 29 | # Note: if you ignore the Pods directory, make sure to uncomment 30 | # `pod install` in .travis.yml 31 | # 32 | # Pods/ 33 | -------------------------------------------------------------------------------- /Example/Tests/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 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015 raihan 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "orientation" : "portrait", 20 | "idiom" : "ipad", 21 | "extent" : "full-screen", 22 | "minimum-system-version" : "7.0", 23 | "scale" : "1x" 24 | }, 25 | { 26 | "orientation" : "landscape", 27 | "idiom" : "ipad", 28 | "extent" : "full-screen", 29 | "minimum-system-version" : "7.0", 30 | "scale" : "1x" 31 | }, 32 | { 33 | "orientation" : "portrait", 34 | "idiom" : "ipad", 35 | "extent" : "full-screen", 36 | "minimum-system-version" : "7.0", 37 | "scale" : "2x" 38 | }, 39 | { 40 | "orientation" : "landscape", 41 | "idiom" : "ipad", 42 | "extent" : "full-screen", 43 | "minimum-system-version" : "7.0", 44 | "scale" : "2x" 45 | } 46 | ], 47 | "info" : { 48 | "version" : 1, 49 | "author" : "xcode" 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | 4 | ## ZRScrollableTabBar 5 | 6 | Copyright (c) 2015 raihan 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 - http://cocoapods.org 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-ZRScrollableTabBar/Pods-ZRScrollableTabBar-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | 4 | ## ZRScrollableTabBar 5 | 6 | Copyright (c) 2015 raihan 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 - http://cocoapods.org 27 | -------------------------------------------------------------------------------- /Pod/Classes/ZRScrollableTabBar.h: -------------------------------------------------------------------------------- 1 | // 2 | // ZRScrollableTabBar.h 3 | // ZRScrollableTabBar 4 | // 5 | // Created by Abdullah Md. Zubair on 2/2/15. 6 | // Copyright (c) 2015 Abdullah Md. Zubair. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @protocol ZRScrollableTabBarDelegate; 12 | 13 | @interface ZRScrollableTabBar : UIView { 14 | __unsafe_unretained id scrollableTabBarDelegate; 15 | NSMutableArray *tabBars; 16 | UIButton *nextButton; 17 | UIButton *previousButton; 18 | __strong UIScrollView *tabScrollView; 19 | } 20 | 21 | @property (nonatomic, assign) __unsafe_unretained id scrollableTabBarDelegate; 22 | @property (nonatomic, retain) NSMutableArray *tabBars; 23 | @property (nonatomic, retain) UIButton *nextButton; 24 | @property (nonatomic, retain) UIButton *previousButton; 25 | @property (nonatomic, strong) __strong UIScrollView *tabScrollView; 26 | 27 | - (id)initWithItems:(NSArray *)items; 28 | - (void)setItems:(NSArray *)items animated:(BOOL)animated; 29 | - (int)currentTabBarTag; 30 | - (int)selectedItemTag; 31 | - (BOOL)scrollToTabBarWithTag:(int)tag animated:(BOOL)animated; 32 | - (BOOL)selectItemWithTag:(int)tag; 33 | 34 | -(void)goToNextTabBar; 35 | -(void)goToPreviousTabBar; 36 | 37 | 38 | @end 39 | 40 | @protocol ZRScrollableTabBarDelegate 41 | - (void)scrollableTabBar:(ZRScrollableTabBar *)tabBar didSelectItemWithTag:(int)tag; 42 | @end 43 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "ipad", 35 | "size" : "29x29", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "ipad", 40 | "size" : "29x29", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "40x40", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "ipad", 50 | "size" : "40x40", 51 | "scale" : "2x" 52 | }, 53 | { 54 | "idiom" : "ipad", 55 | "size" : "76x76", 56 | "scale" : "1x" 57 | }, 58 | { 59 | "idiom" : "ipad", 60 | "size" : "76x76", 61 | "scale" : "2x" 62 | }, 63 | { 64 | "idiom" : "ipad", 65 | "size" : "83.5x83.5", 66 | "scale" : "2x" 67 | } 68 | ], 69 | "info" : { 70 | "version" : 1, 71 | "author" : "xcode" 72 | } 73 | } -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/ZRScrollableTabBar-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIMainStoryboardFile 28 | Main_iPhone 29 | UIMainStoryboardFile~ipad 30 | Main_iPad 31 | UIRequiredDeviceCapabilities 32 | 33 | armv7 34 | 35 | UISupportedInterfaceOrientations 36 | 37 | UIInterfaceOrientationPortrait 38 | UIInterfaceOrientationLandscapeLeft 39 | UIInterfaceOrientationLandscapeRight 40 | 41 | UISupportedInterfaceOrientations~ipad 42 | 43 | UIInterfaceOrientationPortrait 44 | UIInterfaceOrientationPortraitUpsideDown 45 | UIInterfaceOrientationLandscapeLeft 46 | UIInterfaceOrientationLandscapeRight 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /ZRScrollableTabBar.podspec: -------------------------------------------------------------------------------- 1 | # 2 | # Be sure to run `pod lib lint ZRScrollableTabBar.podspec' to ensure this is a 3 | # valid spec and remove all comments before submitting the spec. 4 | # 5 | # Any lines starting with a # are optional, but encouraged 6 | # 7 | # To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html 8 | # 9 | 10 | Pod::Spec.new do |s| 11 | s.name = "ZRScrollableTabBar" 12 | s.version = "0.1.5" 13 | s.summary = "ZRScrollableTabBar is a native tab bar with unlimited items without more button." 14 | s.description = "Normally tabbar shows more tab if there is more then 5 tab in a tab bar controller. To overcome this problem you can use ZRScrollableTabBar which will allow you to put as many tab as you want and they are scrollable" 15 | s.homepage = "https://github.com/raihan/ZRScrollableTabBar" 16 | # s.screenshots = "https://github.com/raihan/ZRScrollableTabBar/blob/master/Example/ZRScrollableTabBar/Screenshot1.png", "https://github.com/raihan/ZRScrollableTabBar/blob/master/Example/ZRScrollableTabBar/Screenshot2.png", "https://github.com/raihan/ZRScrollableTabBar/blob/master/Example/ZRScrollableTabBar/Screenshot3.png" 17 | s.license = 'MIT' 18 | s.author = { "raihan" => "raihan.zbr@gmail.com" } 19 | s.source = { :git => "https://github.com/raihan/ZRScrollableTabBar.git", :tag => s.version.to_s } 20 | # s.social_media_url = 'https://twitter.com/raihan49','https://www.facebook.com/raihan.zbr' 21 | 22 | s.platform = :ios, '7.0' 23 | s.requires_arc = true 24 | 25 | s.source_files = 'Pod/Classes/**/*' 26 | s.ios.resource_bundle = { 'ZRScrollableTabBar' => 'ZRScrollableTabBar/Resources/*.png' } 27 | 28 | # s.public_header_files = 'Pod/Classes/**/*.h' 29 | # s.frameworks = 'UIKit' 30 | end 31 | -------------------------------------------------------------------------------- /Example/Pods/Local Podspecs/ZRScrollableTabBar.podspec: -------------------------------------------------------------------------------- 1 | # 2 | # Be sure to run `pod lib lint ZRScrollableTabBar.podspec' to ensure this is a 3 | # valid spec and remove all comments before submitting the spec. 4 | # 5 | # Any lines starting with a # are optional, but encouraged 6 | # 7 | # To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html 8 | # 9 | 10 | Pod::Spec.new do |s| 11 | s.name = "ZRScrollableTabBar" 12 | s.version = "0.1.1" 13 | s.summary = "ZRScrollableTabBar is a native tab bar with unlimited items without more button." 14 | s.description = "Normally tabbar shows more tab if there is more then 5 tab in a tab bar controller. To overcome this problem you can use ZRScrollableTabBar which will allow you to put as many tab as you want and they are scrollable" 15 | s.homepage = "https://github.com/raihan/ZRScrollableTabBar" 16 | # s.screenshots = "https://github.com/raihan/ZRScrollableTabBar/blob/master/Example/ZRScrollableTabBar/Screenshot1.png", "https://github.com/raihan/ZRScrollableTabBar/blob/master/Example/ZRScrollableTabBar/Screenshot2.png", "https://github.com/raihan/ZRScrollableTabBar/blob/master/Example/ZRScrollableTabBar/Screenshot3.png" 17 | s.license = 'MIT' 18 | s.author = { "raihan" => "raihan.zbr@gmail.com" } 19 | s.source = { :git => "https://github.com/raihan/ZRScrollableTabBar.git", :tag => s.version.to_s } 20 | # s.social_media_url = 'https://twitter.com/raihan49','https://www.facebook.com/raihan.zbr' 21 | 22 | s.platform = :ios, '7.0' 23 | s.requires_arc = true 24 | 25 | s.source_files = 'Pod/Classes/**/*' 26 | s.resource_bundles = { 27 | 'ZRScrollableTabBar' => ['Pod/Assets/*.png'] 28 | } 29 | 30 | # s.public_header_files = 'Pod/Classes/**/*.h' 31 | # s.frameworks = 'UIKit' 32 | end 33 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/Base.lproj/Main_iPad.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 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/ZRViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ZRViewController.m 3 | // ZRScrollableTabBar 4 | // 5 | // Created by raihan on 02/03/2015. 6 | // Copyright (c) 2014 raihan. All rights reserved. 7 | // 8 | 9 | #import "ZRViewController.h" 10 | #import "ZRScrollableTabBar.h" 11 | 12 | @interface ZRViewController () 13 | 14 | @end 15 | 16 | @implementation ZRViewController 17 | 18 | - (void)viewDidLoad 19 | { 20 | [super viewDidLoad]; 21 | // Do any additional setup after loading the view, typically from a nib. 22 | [self initScrollableTabbar]; 23 | } 24 | 25 | -(void)initScrollableTabbar 26 | { 27 | // Tab bar 28 | UITabBarItem *item1 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemBookmarks tag:1]; 29 | UITabBarItem *item2 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemContacts tag:2]; 30 | UITabBarItem *item3 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemDownloads tag:3]; 31 | UITabBarItem *item4 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemFeatured tag:4]; 32 | UITabBarItem *item5 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemRecents tag:5]; 33 | UITabBarItem *item6 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemTopRated tag:6]; 34 | UITabBarItem *item7 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemRecents tag:7]; 35 | UITabBarItem *item8 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemContacts tag:8]; 36 | UITabBarItem *item9 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemBookmarks tag:9]; 37 | 38 | ZRScrollableTabBar *tabBar = [[ZRScrollableTabBar alloc] initWithItems:[NSArray arrayWithObjects: item1, item2, item3, item4, item5, item6, item7, item8, item9, nil]]; 39 | tabBar.scrollableTabBarDelegate = self; 40 | 41 | [self.view addSubview:tabBar]; 42 | } 43 | 44 | - (void)scrollableTabBar:(ZRScrollableTabBar *)tabBar didSelectItemWithTag:(int)tag 45 | { 46 | } 47 | 48 | - (void)didReceiveMemoryWarning 49 | { 50 | [super didReceiveMemoryWarning]; 51 | // Dispose of any resources that can be recreated. 52 | } 53 | 54 | @end -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/ZRAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // ZRAppDelegate.m 3 | // ZRScrollableTabBar 4 | // 5 | // Created by CocoaPods on 02/03/2015. 6 | // Copyright (c) 2014 raihan. All rights reserved. 7 | // 8 | 9 | #import "ZRAppDelegate.h" 10 | 11 | @implementation ZRAppDelegate 12 | 13 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 14 | { 15 | // Override point for customization after application launch. 16 | return YES; 17 | } 18 | 19 | - (void)applicationWillResignActive:(UIApplication *)application 20 | { 21 | // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 22 | // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. 23 | } 24 | 25 | - (void)applicationDidEnterBackground:(UIApplication *)application 26 | { 27 | // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 28 | // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. 29 | } 30 | 31 | - (void)applicationWillEnterForeground:(UIApplication *)application 32 | { 33 | // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. 34 | } 35 | 36 | - (void)applicationDidBecomeActive:(UIApplication *)application 37 | { 38 | // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. 39 | } 40 | 41 | - (void)applicationWillTerminate:(UIApplication *)application 42 | { 43 | // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 44 | } 45 | 46 | @end 47 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-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 | Copyright (c) 2015 raihan <raihan.zbr@gmail.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 | Title 38 | ZRScrollableTabBar 39 | Type 40 | PSGroupSpecifier 41 | 42 | 43 | FooterText 44 | Generated by CocoaPods - http://cocoapods.org 45 | Title 46 | 47 | Type 48 | PSGroupSpecifier 49 | 50 | 51 | StringsTable 52 | Acknowledgements 53 | Title 54 | Acknowledgements 55 | 56 | 57 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-ZRScrollableTabBar/Pods-ZRScrollableTabBar-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) 2015 raihan <raihan.zbr@gmail.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 | Title 38 | ZRScrollableTabBar 39 | Type 40 | PSGroupSpecifier 41 | 42 | 43 | FooterText 44 | Generated by CocoaPods - http://cocoapods.org 45 | Title 46 | 47 | Type 48 | PSGroupSpecifier 49 | 50 | 51 | StringsTable 52 | Acknowledgements 53 | Title 54 | Acknowledgements 55 | 56 | 57 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar/Base.lproj/Main_iPhone.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | Lorem ipsum dolor sit er elit lamet, consectetaur cillium adipisicing pecu, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Nam liber te conscient to factor tum poen legum odioque civiuda. 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests-resources.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 5 | 6 | RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt 7 | > "$RESOURCES_TO_COPY" 8 | 9 | install_resource() 10 | { 11 | case $1 in 12 | *.storyboard) 13 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 14 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 15 | ;; 16 | *.xib) 17 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 18 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 19 | ;; 20 | *.framework) 21 | echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 22 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 23 | echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 24 | rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 25 | ;; 26 | *.xcdatamodel) 27 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" 28 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" 29 | ;; 30 | *.xcdatamodeld) 31 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" 32 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" 33 | ;; 34 | *.xcmappingmodel) 35 | echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\"" 36 | xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm" 37 | ;; 38 | *.xcassets) 39 | ;; 40 | /*) 41 | echo "$1" 42 | echo "$1" >> "$RESOURCES_TO_COPY" 43 | ;; 44 | *) 45 | echo "${PODS_ROOT}/$1" 46 | echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" 47 | ;; 48 | esac 49 | } 50 | install_resource "${BUILT_PRODUCTS_DIR}/ZRScrollableTabBar.bundle" 51 | 52 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 53 | if [[ "${ACTION}" == "install" ]]; then 54 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 55 | fi 56 | rm -f "$RESOURCES_TO_COPY" 57 | 58 | if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ `find . -name '*.xcassets' | wc -l` -ne 0 ] 59 | then 60 | case "${TARGETED_DEVICE_FAMILY}" in 61 | 1,2) 62 | TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" 63 | ;; 64 | 1) 65 | TARGET_DEVICE_ARGS="--target-device iphone" 66 | ;; 67 | 2) 68 | TARGET_DEVICE_ARGS="--target-device ipad" 69 | ;; 70 | *) 71 | TARGET_DEVICE_ARGS="--target-device mac" 72 | ;; 73 | esac 74 | find "${PWD}" -name "*.xcassets" -print0 | xargs -0 actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 75 | fi 76 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-ZRScrollableTabBar/Pods-ZRScrollableTabBar-resources.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 5 | 6 | RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt 7 | > "$RESOURCES_TO_COPY" 8 | 9 | install_resource() 10 | { 11 | case $1 in 12 | *.storyboard) 13 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 14 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 15 | ;; 16 | *.xib) 17 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 18 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 19 | ;; 20 | *.framework) 21 | echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 22 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 23 | echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 24 | rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 25 | ;; 26 | *.xcdatamodel) 27 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" 28 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" 29 | ;; 30 | *.xcdatamodeld) 31 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" 32 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" 33 | ;; 34 | *.xcmappingmodel) 35 | echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\"" 36 | xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm" 37 | ;; 38 | *.xcassets) 39 | ;; 40 | /*) 41 | echo "$1" 42 | echo "$1" >> "$RESOURCES_TO_COPY" 43 | ;; 44 | *) 45 | echo "${PODS_ROOT}/$1" 46 | echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" 47 | ;; 48 | esac 49 | } 50 | install_resource "${BUILT_PRODUCTS_DIR}/ZRScrollableTabBar.bundle" 51 | 52 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 53 | if [[ "${ACTION}" == "install" ]]; then 54 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 55 | fi 56 | rm -f "$RESOURCES_TO_COPY" 57 | 58 | if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ `find . -name '*.xcassets' | wc -l` -ne 0 ] 59 | then 60 | case "${TARGETED_DEVICE_FAMILY}" in 61 | 1,2) 62 | TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" 63 | ;; 64 | 1) 65 | TARGET_DEVICE_ARGS="--target-device iphone" 66 | ;; 67 | 2) 68 | TARGET_DEVICE_ARGS="--target-device ipad" 69 | ;; 70 | *) 71 | TARGET_DEVICE_ARGS="--target-device mac" 72 | ;; 73 | esac 74 | find "${PWD}" -name "*.xcassets" -print0 | xargs -0 actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 75 | fi 76 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ZRScrollableTabBar 2 | 3 | [![CI Status](http://img.shields.io/travis/raihan/ZRScrollableTabBar.svg?style=flat)](https://travis-ci.org/raihan/ZRScrollableTabBar) 4 | [![Version](https://img.shields.io/cocoapods/v/ZRScrollableTabBar.svg?style=flat)](http://cocoadocs.org/docsets/ZRScrollableTabBar) 5 | [![License](https://img.shields.io/cocoapods/l/ZRScrollableTabBar.svg?style=flat)](http://cocoadocs.org/docsets/ZRScrollableTabBar) 6 | [![Platform](https://img.shields.io/cocoapods/p/ZRScrollableTabBar.svg?style=flat)](http://cocoadocs.org/docsets/ZRScrollableTabBar) 7 | 8 | Normally tabbar shows more tab if there is more then 5 tab in a tab bar controller. To overcome this problem you can use ZRScrollableTabBar which will allow you to put as many tab as you want and they are scrollable 9 | 10 | **Sample screenshots** 11 | 12 | 13 | 14 | 15 | ## Usage 16 | 17 | To run the example project, clone the repo, and run `pod install` from the Example directory first. 18 | 19 | **Usage sample** 20 | 21 | ``` 22 | -(void)initScrollableTabbar 23 | { 24 | // Tab bar 25 | UITabBarItem *item1 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemBookmarks tag:1]; 26 | UITabBarItem *item2 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemContacts tag:2]; 27 | UITabBarItem *item3 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemDownloads tag:3]; 28 | UITabBarItem *item4 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemFeatured tag:4]; 29 | UITabBarItem *item5 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemRecents tag:5]; 30 | UITabBarItem *item6 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemTopRated tag:6]; 31 | UITabBarItem *item7 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemRecents tag:7]; 32 | UITabBarItem *item8 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemContacts tag:8]; 33 | UITabBarItem *item9 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemBookmarks tag:9]; 34 | 35 | ZRScrollableTabBar *tabBar = [[ZRScrollableTabBar alloc] initWithItems:[NSArray arrayWithObjects: item1, item2, item3, item4, item5, item6, item7, item8, item9, nil]]; 36 | tabBar.scrollableTabBarDelegate = self; 37 | 38 | [self.view addSubview:tabBar]; 39 | } 40 | 41 | ``` 42 | 43 | You will get the tabbar with selected index on delegate method 44 | 45 | ``` 46 | - (void)scrollableTabBar:(ZRScrollableTabBar *)tabBar didSelectItemWithTag:(int)tag 47 | { 48 | .... 49 | } 50 | ```` 51 | ## Requirements 52 | 53 | iOS 7+, Compitable on both iPhone and iPad 54 | 55 | ## Installation 56 | 57 | ZRScrollableTabBar is available through [CocoaPods](http://cocoapods.org). To install 58 | it, simply add the following line to your Podfile: 59 | 60 | pod "ZRScrollableTabBar" 61 | 62 | ## Author 63 | 64 | Abdullah Md. Zubair, raihan.zbr@gmail.com 65 | 66 | ## License 67 | (The MIT License) 68 | 69 | Copyright (c) 2015 Abdullah Md. Zubair 70 | 71 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 72 | 73 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 74 | 75 | THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 76 | -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar.xcodeproj/xcshareddata/xcschemes/ZRScrollableTabBar-Example.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 42 | 43 | 49 | 50 | 51 | 52 | 53 | 54 | 64 | 66 | 72 | 73 | 74 | 75 | 76 | 77 | 83 | 85 | 91 | 92 | 93 | 94 | 96 | 97 | 100 | 101 | 102 | -------------------------------------------------------------------------------- /Pod/Classes/ZRScrollableTabBar.m: -------------------------------------------------------------------------------- 1 | // 2 | // ZRScrollableTabBar.m 3 | // ZRScrollableTabBar 4 | // 5 | // Created by Abdullah Md. Zubair on 2/2/15. 6 | // Copyright (c) 2015 Abdullah Md. Zubair. All rights reserved. 7 | // 8 | 9 | #import "ZRScrollableTabBar.h" 10 | 11 | #define ButtonNoPerTab 5.0 12 | #define TabHeight 49.0 13 | #define TabWidth [[UIScreen mainScreen] bounds].size.width-20 14 | 15 | @interface ZRScrollableTabBar () 16 | { 17 | CGFloat screenWidth; 18 | CGFloat screenHeight; 19 | } 20 | 21 | @end 22 | 23 | @implementation ZRScrollableTabBar 24 | 25 | @synthesize scrollableTabBarDelegate; 26 | @synthesize tabBars; 27 | @synthesize nextButton; 28 | @synthesize previousButton; 29 | @synthesize tabScrollView; 30 | 31 | - (id)initWithItems:(NSArray *)items { 32 | screenWidth = [[UIScreen mainScreen] bounds].size.width; 33 | screenHeight = [[UIScreen mainScreen] bounds].size.height; 34 | self = [super initWithFrame:CGRectMake(0.0, screenHeight-TabHeight, screenWidth, TabHeight)]; 35 | if (self) 36 | { 37 | tabScrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(10.0, 0.0, TabWidth, TabHeight)]; 38 | previousButton = [UIButton buttonWithType:UIButtonTypeCustom]; 39 | [previousButton setFrame:CGRectMake(2, 14, 10, 21)]; 40 | nextButton = [UIButton buttonWithType:UIButtonTypeCustom]; 41 | [nextButton setFrame:CGRectMake(TabWidth + 8, 14, 10, 21)]; 42 | [nextButton addTarget:self action:@selector(goToNextTabBar) forControlEvents:UIControlEventTouchUpInside]; 43 | [previousButton addTarget:self action:@selector(goToPreviousTabBar) forControlEvents:UIControlEventTouchUpInside]; 44 | [previousButton setImage:nil forState:UIControlStateNormal]; 45 | [nextButton setImage:[UIImage imageNamed:@"arrrow_right.png"] forState:UIControlStateNormal]; 46 | [self setBackgroundColor:[UIColor colorWithRed:246.0/255 green:246.0/255 blue:246.0/255 alpha:1.0]]; 47 | [nextButton setBackgroundColor:[UIColor colorWithRed:246.0/255 green:246.0/255 blue:246.0/255 alpha:1.0]]; 48 | [previousButton setBackgroundColor:[UIColor colorWithRed:246.0/255 green:246.0/255 blue:246.0/255 alpha:1.0]]; 49 | [self addSubview:nextButton]; 50 | [self addSubview:previousButton]; 51 | tabScrollView.pagingEnabled = YES; 52 | tabScrollView.delegate = self; 53 | tabScrollView.showsHorizontalScrollIndicator = NO; 54 | tabScrollView.bounces = NO; 55 | 56 | self.tabBars = [[NSMutableArray alloc] init]; 57 | 58 | float x = 0.0; 59 | 60 | for (double d = 0; d < ceil(items.count / ButtonNoPerTab); d ++) 61 | { 62 | UITabBar *tabBar = [[UITabBar alloc] initWithFrame:CGRectMake(x, 0.0, TabWidth, TabHeight)]; 63 | tabBar.delegate = self; 64 | int len = 0; 65 | 66 | for (int i = d * ButtonNoPerTab; i < d * ButtonNoPerTab + ButtonNoPerTab; i ++) 67 | if (i < items.count) 68 | len ++; 69 | 70 | tabBar.items = [items objectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(d * ButtonNoPerTab, len)]]; 71 | 72 | [self.tabScrollView addSubview:tabBar]; 73 | 74 | [self.tabBars addObject:tabBar]; 75 | [self addSubview:tabScrollView]; 76 | 77 | x += TabWidth; 78 | } 79 | [self selectItemWithTag:(int)[(UITabBarItem *)[items firstObject] tag]]; 80 | [self.tabScrollView setContentSize:CGSizeMake(x, TabHeight)]; 81 | 82 | } 83 | 84 | return self; 85 | } 86 | 87 | -(void)goToNextTabBar 88 | { 89 | CGFloat pageWidth = self.frame.size.width; 90 | int page = floor((tabScrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1; 91 | [self scrollToPage:page+1 animation:YES]; 92 | } 93 | 94 | -(void)goToPreviousTabBar 95 | { 96 | CGFloat pageWidth = self.frame.size.width; 97 | int page = floor((tabScrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1; 98 | [self scrollToPage:page-1 animation:YES]; 99 | } 100 | 101 | - (void)setItems:(NSArray *)items animated:(BOOL)animated { 102 | for (UITabBar *tabBar in self.tabBars) { 103 | int len = 0; 104 | 105 | for (int i = [self.tabBars indexOfObject:tabBar] * ButtonNoPerTab; i < [self.tabBars indexOfObject:tabBar] * ButtonNoPerTab + ButtonNoPerTab; i ++) 106 | if (i < items.count) 107 | len ++; 108 | 109 | [tabBar setItems:[items objectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange([self.tabBars indexOfObject:tabBar] * ButtonNoPerTab, len)]] animated:animated]; 110 | } 111 | 112 | tabScrollView.contentSize = CGSizeMake(ceil(items.count / ButtonNoPerTab) * screenWidth, TabHeight); 113 | } 114 | 115 | - (int)currentTabBarTag { 116 | return tabScrollView.contentOffset.x / screenWidth; 117 | } 118 | 119 | - (int)selectedItemTag { 120 | for (UITabBar *tabBar in self.tabBars) 121 | if (tabBar.selectedItem != nil) 122 | return (int)tabBar.selectedItem.tag; 123 | 124 | // No item selected 125 | return 0; 126 | } 127 | 128 | - (BOOL)scrollToTabBarWithTag:(int)tag animated:(BOOL)animated { 129 | 130 | for (UITabBar *tabBar in self.tabBars) 131 | for (UITabBarItem *item in tabBar.items) 132 | if (item.tag == tag) { 133 | tabBar.selectedItem = item; 134 | 135 | [tabScrollView scrollRectToVisible:tabBar.frame animated:animated]; 136 | [self tabBar:tabBar didSelectItem:item]; 137 | 138 | return YES; 139 | } 140 | 141 | return NO; 142 | 143 | } 144 | 145 | - (BOOL)selectItemWithTag:(int)tag { 146 | for (UITabBar *tabBar in self.tabBars) 147 | for (UITabBarItem *item in tabBar.items) 148 | if (item.tag == tag) { 149 | tabBar.selectedItem = item; 150 | 151 | [self tabBar:tabBar didSelectItem:item]; 152 | 153 | return YES; 154 | } 155 | 156 | return NO; 157 | } 158 | 159 | - (void)scrollViewDidScroll:(UIScrollView *)scrollView 160 | { 161 | CGFloat pageWidth = tabScrollView.frame.size.width; 162 | double maxPage = ceil(tabScrollView.contentSize.width / screenWidth) - 1; 163 | int page = floor((tabScrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1; 164 | if (page == 0) 165 | { 166 | [previousButton setImage:nil forState:UIControlStateNormal]; 167 | [nextButton setImage:[UIImage imageNamed:@"arrrow_right.png"] forState:UIControlStateNormal]; 168 | } 169 | else if (page == maxPage) 170 | { 171 | [previousButton setImage:[UIImage imageNamed:@"arrrow_left.png"] forState:UIControlStateNormal]; 172 | [nextButton setImage:nil forState:UIControlStateNormal]; 173 | } 174 | else 175 | { 176 | [previousButton setImage:[UIImage imageNamed:@"arrrow_left.png"] forState:UIControlStateNormal]; 177 | [nextButton setImage:[UIImage imageNamed:@"arrrow_right.png"] forState:UIControlStateNormal]; 178 | } 179 | } 180 | 181 | - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView { 182 | 183 | } 184 | 185 | -(void)scrollToPage:(int)page animation:(BOOL)animated 186 | { 187 | CGRect frame = self.tabScrollView.frame; 188 | frame.origin.x = frame.size.width * page; 189 | frame.origin.y = 0; 190 | [tabScrollView scrollRectToVisible:frame animated:animated]; 191 | } 192 | 193 | - (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView { 194 | [self scrollViewDidEndDecelerating:scrollView]; 195 | } 196 | 197 | - (void)tabBar:(UITabBar *)cTabBar didSelectItem:(UITabBarItem *)item { 198 | // Act like a single tab bar 199 | for (UITabBar *tabBar in self.tabBars) 200 | if (tabBar != cTabBar) 201 | tabBar.selectedItem = nil; 202 | 203 | [self.scrollableTabBarDelegate scrollableTabBar:self didSelectItemWithTag:(int)item.tag]; 204 | } 205 | 206 | 207 | - (void)dealloc { 208 | } 209 | 210 | @end -------------------------------------------------------------------------------- /Example/ZRScrollableTabBar.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 2044097B1A800CE2006FF81A /* arrrow_left.png in Resources */ = {isa = PBXBuildFile; fileRef = 204409791A800CE2006FF81A /* arrrow_left.png */; }; 11 | 2044097C1A800CE2006FF81A /* arrrow_right.png in Resources */ = {isa = PBXBuildFile; fileRef = 2044097A1A800CE2006FF81A /* arrrow_right.png */; }; 12 | 204409811A801442006FF81A /* Screenshot1.png in Resources */ = {isa = PBXBuildFile; fileRef = 2044097E1A801442006FF81A /* Screenshot1.png */; }; 13 | 204409821A801442006FF81A /* Screenshot2.png in Resources */ = {isa = PBXBuildFile; fileRef = 2044097F1A801442006FF81A /* Screenshot2.png */; }; 14 | 204409831A801442006FF81A /* Screenshot3.png in Resources */ = {isa = PBXBuildFile; fileRef = 204409801A801442006FF81A /* Screenshot3.png */; }; 15 | 207225C61CDE4DCA00553208 /* ZRScrollableTabBar.m in Sources */ = {isa = PBXBuildFile; fileRef = 204409771A800CD4006FF81A /* ZRScrollableTabBar.m */; }; 16 | 6003F58E195388D20070C39A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58D195388D20070C39A /* Foundation.framework */; }; 17 | 6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58F195388D20070C39A /* CoreGraphics.framework */; }; 18 | 6003F592195388D20070C39A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F591195388D20070C39A /* UIKit.framework */; }; 19 | 6003F598195388D20070C39A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6003F596195388D20070C39A /* InfoPlist.strings */; }; 20 | 6003F59A195388D20070C39A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F599195388D20070C39A /* main.m */; }; 21 | 6003F59E195388D20070C39A /* ZRAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F59D195388D20070C39A /* ZRAppDelegate.m */; }; 22 | 6003F5A1195388D20070C39A /* Main_iPhone.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6003F59F195388D20070C39A /* Main_iPhone.storyboard */; }; 23 | 6003F5A4195388D20070C39A /* Main_iPad.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5A2195388D20070C39A /* Main_iPad.storyboard */; }; 24 | 6003F5A7195388D20070C39A /* ZRViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F5A6195388D20070C39A /* ZRViewController.m */; }; 25 | 6003F5A9195388D20070C39A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5A8195388D20070C39A /* Images.xcassets */; }; 26 | 6003F5B0195388D20070C39A /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F5AF195388D20070C39A /* XCTest.framework */; }; 27 | 6003F5B1195388D20070C39A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58D195388D20070C39A /* Foundation.framework */; }; 28 | 6003F5B2195388D20070C39A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F591195388D20070C39A /* UIKit.framework */; }; 29 | 6003F5BA195388D20070C39A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5B8195388D20070C39A /* InfoPlist.strings */; }; 30 | 6003F5BC195388D20070C39A /* Tests.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F5BB195388D20070C39A /* Tests.m */; }; 31 | 6A0AA458D8F44F3500037AF8 /* libPods-ZRScrollableTabBar.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F8AF69B9CE6414F715F49907 /* libPods-ZRScrollableTabBar.a */; }; 32 | 8D81D4B9478AC0ECB2A30CF6 /* libPods-Tests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 260C80EB0F84F998FF8330CD /* libPods-Tests.a */; }; 33 | /* End PBXBuildFile section */ 34 | 35 | /* Begin PBXContainerItemProxy section */ 36 | 6003F5B3195388D20070C39A /* PBXContainerItemProxy */ = { 37 | isa = PBXContainerItemProxy; 38 | containerPortal = 6003F582195388D10070C39A /* Project object */; 39 | proxyType = 1; 40 | remoteGlobalIDString = 6003F589195388D20070C39A; 41 | remoteInfo = ZRScrollableTabBar; 42 | }; 43 | /* End PBXContainerItemProxy section */ 44 | 45 | /* Begin PBXFileReference section */ 46 | 204409761A800CD4006FF81A /* ZRScrollableTabBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ZRScrollableTabBar.h; path = ../../Pod/Classes/ZRScrollableTabBar.h; sourceTree = ""; }; 47 | 204409771A800CD4006FF81A /* ZRScrollableTabBar.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ZRScrollableTabBar.m; path = ../../Pod/Classes/ZRScrollableTabBar.m; sourceTree = ""; }; 48 | 204409791A800CE2006FF81A /* arrrow_left.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = arrrow_left.png; path = ../../Pod/Assets/arrrow_left.png; sourceTree = ""; }; 49 | 2044097A1A800CE2006FF81A /* arrrow_right.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = arrrow_right.png; path = ../../Pod/Assets/arrrow_right.png; sourceTree = ""; }; 50 | 2044097E1A801442006FF81A /* Screenshot1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Screenshot1.png; sourceTree = ""; }; 51 | 2044097F1A801442006FF81A /* Screenshot2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Screenshot2.png; sourceTree = ""; }; 52 | 204409801A801442006FF81A /* Screenshot3.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Screenshot3.png; sourceTree = ""; }; 53 | 260C80EB0F84F998FF8330CD /* libPods-Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 54 | 3F4FF7322D0EBBD0AA999BAF /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; name = README.md; path = ../README.md; sourceTree = ""; }; 55 | 51E015A36F910214A7416939 /* Pods-Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Tests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Tests/Pods-Tests.debug.xcconfig"; sourceTree = ""; }; 56 | 59D8D3B169970C5296D6FFDC /* Pods-ZRScrollableTabBar.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZRScrollableTabBar.release.xcconfig"; path = "Pods/Target Support Files/Pods-ZRScrollableTabBar/Pods-ZRScrollableTabBar.release.xcconfig"; sourceTree = ""; }; 57 | 6003F58A195388D20070C39A /* ZRScrollableTabBar.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ZRScrollableTabBar.app; sourceTree = BUILT_PRODUCTS_DIR; }; 58 | 6003F58D195388D20070C39A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 59 | 6003F58F195388D20070C39A /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 60 | 6003F591195388D20070C39A /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 61 | 6003F595195388D20070C39A /* ZRScrollableTabBar-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "ZRScrollableTabBar-Info.plist"; sourceTree = ""; }; 62 | 6003F597195388D20070C39A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 63 | 6003F599195388D20070C39A /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 64 | 6003F59B195388D20070C39A /* ZRScrollableTabBar-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ZRScrollableTabBar-Prefix.pch"; sourceTree = ""; }; 65 | 6003F59C195388D20070C39A /* ZRAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ZRAppDelegate.h; sourceTree = ""; }; 66 | 6003F59D195388D20070C39A /* ZRAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ZRAppDelegate.m; sourceTree = ""; }; 67 | 6003F5A0195388D20070C39A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main_iPhone.storyboard; sourceTree = ""; }; 68 | 6003F5A3195388D20070C39A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main_iPad.storyboard; sourceTree = ""; }; 69 | 6003F5A5195388D20070C39A /* ZRViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ZRViewController.h; sourceTree = ""; }; 70 | 6003F5A6195388D20070C39A /* ZRViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ZRViewController.m; sourceTree = ""; }; 71 | 6003F5A8195388D20070C39A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 72 | 6003F5AE195388D20070C39A /* Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Tests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 73 | 6003F5AF195388D20070C39A /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; 74 | 6003F5B7195388D20070C39A /* Tests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Tests-Info.plist"; sourceTree = ""; }; 75 | 6003F5B9195388D20070C39A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 76 | 6003F5BB195388D20070C39A /* Tests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = Tests.m; sourceTree = ""; }; 77 | 606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Tests-Prefix.pch"; sourceTree = ""; }; 78 | AC34687A583C6C72BA6CC065 /* Pods-ZRScrollableTabBar.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZRScrollableTabBar.debug.xcconfig"; path = "Pods/Target Support Files/Pods-ZRScrollableTabBar/Pods-ZRScrollableTabBar.debug.xcconfig"; sourceTree = ""; }; 79 | C1E92185DF3E1BC48BFD33B4 /* ZRScrollableTabBar.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = ZRScrollableTabBar.podspec; path = ../ZRScrollableTabBar.podspec; sourceTree = ""; }; 80 | E3C3645DF001BB1657410BCB /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = LICENSE; path = ../LICENSE; sourceTree = ""; }; 81 | EF7CB10F2B989EAD384142D7 /* Pods-Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Tests.release.xcconfig"; path = "Pods/Target Support Files/Pods-Tests/Pods-Tests.release.xcconfig"; sourceTree = ""; }; 82 | F8AF69B9CE6414F715F49907 /* libPods-ZRScrollableTabBar.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ZRScrollableTabBar.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 83 | /* End PBXFileReference section */ 84 | 85 | /* Begin PBXFrameworksBuildPhase section */ 86 | 6003F587195388D20070C39A /* Frameworks */ = { 87 | isa = PBXFrameworksBuildPhase; 88 | buildActionMask = 2147483647; 89 | files = ( 90 | 6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */, 91 | 6003F592195388D20070C39A /* UIKit.framework in Frameworks */, 92 | 6003F58E195388D20070C39A /* Foundation.framework in Frameworks */, 93 | 6A0AA458D8F44F3500037AF8 /* libPods-ZRScrollableTabBar.a in Frameworks */, 94 | ); 95 | runOnlyForDeploymentPostprocessing = 0; 96 | }; 97 | 6003F5AB195388D20070C39A /* Frameworks */ = { 98 | isa = PBXFrameworksBuildPhase; 99 | buildActionMask = 2147483647; 100 | files = ( 101 | 6003F5B0195388D20070C39A /* XCTest.framework in Frameworks */, 102 | 6003F5B2195388D20070C39A /* UIKit.framework in Frameworks */, 103 | 6003F5B1195388D20070C39A /* Foundation.framework in Frameworks */, 104 | 8D81D4B9478AC0ECB2A30CF6 /* libPods-Tests.a in Frameworks */, 105 | ); 106 | runOnlyForDeploymentPostprocessing = 0; 107 | }; 108 | /* End PBXFrameworksBuildPhase section */ 109 | 110 | /* Begin PBXGroup section */ 111 | 2044097D1A800CEA006FF81A /* ZRScrollableTabBar */ = { 112 | isa = PBXGroup; 113 | children = ( 114 | 204409761A800CD4006FF81A /* ZRScrollableTabBar.h */, 115 | 204409771A800CD4006FF81A /* ZRScrollableTabBar.m */, 116 | 204409791A800CE2006FF81A /* arrrow_left.png */, 117 | 2044097A1A800CE2006FF81A /* arrrow_right.png */, 118 | ); 119 | name = ZRScrollableTabBar; 120 | sourceTree = ""; 121 | }; 122 | 59DDB29E25321507A4620BF3 /* Pods */ = { 123 | isa = PBXGroup; 124 | children = ( 125 | 51E015A36F910214A7416939 /* Pods-Tests.debug.xcconfig */, 126 | EF7CB10F2B989EAD384142D7 /* Pods-Tests.release.xcconfig */, 127 | AC34687A583C6C72BA6CC065 /* Pods-ZRScrollableTabBar.debug.xcconfig */, 128 | 59D8D3B169970C5296D6FFDC /* Pods-ZRScrollableTabBar.release.xcconfig */, 129 | ); 130 | name = Pods; 131 | sourceTree = ""; 132 | }; 133 | 6003F581195388D10070C39A = { 134 | isa = PBXGroup; 135 | children = ( 136 | 60FF7A9C1954A5C5007DD14C /* Podspec Metadata */, 137 | 6003F593195388D20070C39A /* ZRScrollableTabBar */, 138 | 6003F5B5195388D20070C39A /* Tests */, 139 | 6003F58C195388D20070C39A /* Frameworks */, 140 | 6003F58B195388D20070C39A /* Products */, 141 | 59DDB29E25321507A4620BF3 /* Pods */, 142 | ); 143 | sourceTree = ""; 144 | }; 145 | 6003F58B195388D20070C39A /* Products */ = { 146 | isa = PBXGroup; 147 | children = ( 148 | 6003F58A195388D20070C39A /* ZRScrollableTabBar.app */, 149 | 6003F5AE195388D20070C39A /* Tests.xctest */, 150 | ); 151 | name = Products; 152 | sourceTree = ""; 153 | }; 154 | 6003F58C195388D20070C39A /* Frameworks */ = { 155 | isa = PBXGroup; 156 | children = ( 157 | 6003F58D195388D20070C39A /* Foundation.framework */, 158 | 6003F58F195388D20070C39A /* CoreGraphics.framework */, 159 | 6003F591195388D20070C39A /* UIKit.framework */, 160 | 6003F5AF195388D20070C39A /* XCTest.framework */, 161 | 260C80EB0F84F998FF8330CD /* libPods-Tests.a */, 162 | F8AF69B9CE6414F715F49907 /* libPods-ZRScrollableTabBar.a */, 163 | ); 164 | name = Frameworks; 165 | sourceTree = ""; 166 | }; 167 | 6003F593195388D20070C39A /* ZRScrollableTabBar */ = { 168 | isa = PBXGroup; 169 | children = ( 170 | 6003F59C195388D20070C39A /* ZRAppDelegate.h */, 171 | 6003F59D195388D20070C39A /* ZRAppDelegate.m */, 172 | 6003F59F195388D20070C39A /* Main_iPhone.storyboard */, 173 | 6003F5A2195388D20070C39A /* Main_iPad.storyboard */, 174 | 6003F5A5195388D20070C39A /* ZRViewController.h */, 175 | 6003F5A6195388D20070C39A /* ZRViewController.m */, 176 | 2044097E1A801442006FF81A /* Screenshot1.png */, 177 | 2044097F1A801442006FF81A /* Screenshot2.png */, 178 | 204409801A801442006FF81A /* Screenshot3.png */, 179 | 2044097D1A800CEA006FF81A /* ZRScrollableTabBar */, 180 | 6003F5A8195388D20070C39A /* Images.xcassets */, 181 | 6003F594195388D20070C39A /* Supporting Files */, 182 | ); 183 | path = ZRScrollableTabBar; 184 | sourceTree = ""; 185 | }; 186 | 6003F594195388D20070C39A /* Supporting Files */ = { 187 | isa = PBXGroup; 188 | children = ( 189 | 6003F595195388D20070C39A /* ZRScrollableTabBar-Info.plist */, 190 | 6003F596195388D20070C39A /* InfoPlist.strings */, 191 | 6003F599195388D20070C39A /* main.m */, 192 | 6003F59B195388D20070C39A /* ZRScrollableTabBar-Prefix.pch */, 193 | ); 194 | name = "Supporting Files"; 195 | sourceTree = ""; 196 | }; 197 | 6003F5B5195388D20070C39A /* Tests */ = { 198 | isa = PBXGroup; 199 | children = ( 200 | 6003F5BB195388D20070C39A /* Tests.m */, 201 | 6003F5B6195388D20070C39A /* Supporting Files */, 202 | ); 203 | path = Tests; 204 | sourceTree = ""; 205 | }; 206 | 6003F5B6195388D20070C39A /* Supporting Files */ = { 207 | isa = PBXGroup; 208 | children = ( 209 | 6003F5B7195388D20070C39A /* Tests-Info.plist */, 210 | 6003F5B8195388D20070C39A /* InfoPlist.strings */, 211 | 606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */, 212 | ); 213 | name = "Supporting Files"; 214 | sourceTree = ""; 215 | }; 216 | 60FF7A9C1954A5C5007DD14C /* Podspec Metadata */ = { 217 | isa = PBXGroup; 218 | children = ( 219 | C1E92185DF3E1BC48BFD33B4 /* ZRScrollableTabBar.podspec */, 220 | 3F4FF7322D0EBBD0AA999BAF /* README.md */, 221 | E3C3645DF001BB1657410BCB /* LICENSE */, 222 | ); 223 | name = "Podspec Metadata"; 224 | sourceTree = ""; 225 | }; 226 | /* End PBXGroup section */ 227 | 228 | /* Begin PBXNativeTarget section */ 229 | 6003F589195388D20070C39A /* ZRScrollableTabBar */ = { 230 | isa = PBXNativeTarget; 231 | buildConfigurationList = 6003F5BF195388D20070C39A /* Build configuration list for PBXNativeTarget "ZRScrollableTabBar" */; 232 | buildPhases = ( 233 | C317E636B0371E33B5C71AEA /* Check Pods Manifest.lock */, 234 | 6003F586195388D20070C39A /* Sources */, 235 | 6003F587195388D20070C39A /* Frameworks */, 236 | 6003F588195388D20070C39A /* Resources */, 237 | 6FB2651E3844132F5D27AAF2 /* Copy Pods Resources */, 238 | ); 239 | buildRules = ( 240 | ); 241 | dependencies = ( 242 | ); 243 | name = ZRScrollableTabBar; 244 | productName = ZRScrollableTabBar; 245 | productReference = 6003F58A195388D20070C39A /* ZRScrollableTabBar.app */; 246 | productType = "com.apple.product-type.application"; 247 | }; 248 | 6003F5AD195388D20070C39A /* Tests */ = { 249 | isa = PBXNativeTarget; 250 | buildConfigurationList = 6003F5C2195388D20070C39A /* Build configuration list for PBXNativeTarget "Tests" */; 251 | buildPhases = ( 252 | 6377ECC52A50E8DC43CC9892 /* Check Pods Manifest.lock */, 253 | 6003F5AA195388D20070C39A /* Sources */, 254 | 6003F5AB195388D20070C39A /* Frameworks */, 255 | 6003F5AC195388D20070C39A /* Resources */, 256 | CCC34C46BD573A2D6A41FA1F /* Copy Pods Resources */, 257 | ); 258 | buildRules = ( 259 | ); 260 | dependencies = ( 261 | 6003F5B4195388D20070C39A /* PBXTargetDependency */, 262 | ); 263 | name = Tests; 264 | productName = ZRScrollableTabBarTests; 265 | productReference = 6003F5AE195388D20070C39A /* Tests.xctest */; 266 | productType = "com.apple.product-type.bundle.unit-test"; 267 | }; 268 | /* End PBXNativeTarget section */ 269 | 270 | /* Begin PBXProject section */ 271 | 6003F582195388D10070C39A /* Project object */ = { 272 | isa = PBXProject; 273 | attributes = { 274 | CLASSPREFIX = ZR; 275 | LastUpgradeCheck = 0730; 276 | ORGANIZATIONNAME = raihan; 277 | TargetAttributes = { 278 | 6003F5AD195388D20070C39A = { 279 | TestTargetID = 6003F589195388D20070C39A; 280 | }; 281 | }; 282 | }; 283 | buildConfigurationList = 6003F585195388D10070C39A /* Build configuration list for PBXProject "ZRScrollableTabBar" */; 284 | compatibilityVersion = "Xcode 3.2"; 285 | developmentRegion = English; 286 | hasScannedForEncodings = 0; 287 | knownRegions = ( 288 | en, 289 | Base, 290 | ); 291 | mainGroup = 6003F581195388D10070C39A; 292 | productRefGroup = 6003F58B195388D20070C39A /* Products */; 293 | projectDirPath = ""; 294 | projectRoot = ""; 295 | targets = ( 296 | 6003F589195388D20070C39A /* ZRScrollableTabBar */, 297 | 6003F5AD195388D20070C39A /* Tests */, 298 | ); 299 | }; 300 | /* End PBXProject section */ 301 | 302 | /* Begin PBXResourcesBuildPhase section */ 303 | 6003F588195388D20070C39A /* Resources */ = { 304 | isa = PBXResourcesBuildPhase; 305 | buildActionMask = 2147483647; 306 | files = ( 307 | 204409831A801442006FF81A /* Screenshot3.png in Resources */, 308 | 204409811A801442006FF81A /* Screenshot1.png in Resources */, 309 | 2044097B1A800CE2006FF81A /* arrrow_left.png in Resources */, 310 | 204409821A801442006FF81A /* Screenshot2.png in Resources */, 311 | 6003F5A4195388D20070C39A /* Main_iPad.storyboard in Resources */, 312 | 6003F5A9195388D20070C39A /* Images.xcassets in Resources */, 313 | 2044097C1A800CE2006FF81A /* arrrow_right.png in Resources */, 314 | 6003F5A1195388D20070C39A /* Main_iPhone.storyboard in Resources */, 315 | 6003F598195388D20070C39A /* InfoPlist.strings in Resources */, 316 | ); 317 | runOnlyForDeploymentPostprocessing = 0; 318 | }; 319 | 6003F5AC195388D20070C39A /* Resources */ = { 320 | isa = PBXResourcesBuildPhase; 321 | buildActionMask = 2147483647; 322 | files = ( 323 | 6003F5BA195388D20070C39A /* InfoPlist.strings in Resources */, 324 | ); 325 | runOnlyForDeploymentPostprocessing = 0; 326 | }; 327 | /* End PBXResourcesBuildPhase section */ 328 | 329 | /* Begin PBXShellScriptBuildPhase section */ 330 | 6377ECC52A50E8DC43CC9892 /* Check Pods Manifest.lock */ = { 331 | isa = PBXShellScriptBuildPhase; 332 | buildActionMask = 2147483647; 333 | files = ( 334 | ); 335 | inputPaths = ( 336 | ); 337 | name = "Check Pods Manifest.lock"; 338 | outputPaths = ( 339 | ); 340 | runOnlyForDeploymentPostprocessing = 0; 341 | shellPath = /bin/sh; 342 | shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; 343 | showEnvVarsInLog = 0; 344 | }; 345 | 6FB2651E3844132F5D27AAF2 /* Copy Pods Resources */ = { 346 | isa = PBXShellScriptBuildPhase; 347 | buildActionMask = 2147483647; 348 | files = ( 349 | ); 350 | inputPaths = ( 351 | ); 352 | name = "Copy Pods Resources"; 353 | outputPaths = ( 354 | ); 355 | runOnlyForDeploymentPostprocessing = 0; 356 | shellPath = /bin/sh; 357 | shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-ZRScrollableTabBar/Pods-ZRScrollableTabBar-resources.sh\"\n"; 358 | showEnvVarsInLog = 0; 359 | }; 360 | C317E636B0371E33B5C71AEA /* Check Pods Manifest.lock */ = { 361 | isa = PBXShellScriptBuildPhase; 362 | buildActionMask = 2147483647; 363 | files = ( 364 | ); 365 | inputPaths = ( 366 | ); 367 | name = "Check Pods Manifest.lock"; 368 | outputPaths = ( 369 | ); 370 | runOnlyForDeploymentPostprocessing = 0; 371 | shellPath = /bin/sh; 372 | shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; 373 | showEnvVarsInLog = 0; 374 | }; 375 | CCC34C46BD573A2D6A41FA1F /* Copy Pods Resources */ = { 376 | isa = PBXShellScriptBuildPhase; 377 | buildActionMask = 2147483647; 378 | files = ( 379 | ); 380 | inputPaths = ( 381 | ); 382 | name = "Copy Pods Resources"; 383 | outputPaths = ( 384 | ); 385 | runOnlyForDeploymentPostprocessing = 0; 386 | shellPath = /bin/sh; 387 | shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Tests/Pods-Tests-resources.sh\"\n"; 388 | showEnvVarsInLog = 0; 389 | }; 390 | /* End PBXShellScriptBuildPhase section */ 391 | 392 | /* Begin PBXSourcesBuildPhase section */ 393 | 6003F586195388D20070C39A /* Sources */ = { 394 | isa = PBXSourcesBuildPhase; 395 | buildActionMask = 2147483647; 396 | files = ( 397 | 207225C61CDE4DCA00553208 /* ZRScrollableTabBar.m in Sources */, 398 | 6003F59E195388D20070C39A /* ZRAppDelegate.m in Sources */, 399 | 6003F5A7195388D20070C39A /* ZRViewController.m in Sources */, 400 | 6003F59A195388D20070C39A /* main.m in Sources */, 401 | ); 402 | runOnlyForDeploymentPostprocessing = 0; 403 | }; 404 | 6003F5AA195388D20070C39A /* Sources */ = { 405 | isa = PBXSourcesBuildPhase; 406 | buildActionMask = 2147483647; 407 | files = ( 408 | 6003F5BC195388D20070C39A /* Tests.m in Sources */, 409 | ); 410 | runOnlyForDeploymentPostprocessing = 0; 411 | }; 412 | /* End PBXSourcesBuildPhase section */ 413 | 414 | /* Begin PBXTargetDependency section */ 415 | 6003F5B4195388D20070C39A /* PBXTargetDependency */ = { 416 | isa = PBXTargetDependency; 417 | target = 6003F589195388D20070C39A /* ZRScrollableTabBar */; 418 | targetProxy = 6003F5B3195388D20070C39A /* PBXContainerItemProxy */; 419 | }; 420 | /* End PBXTargetDependency section */ 421 | 422 | /* Begin PBXVariantGroup section */ 423 | 6003F596195388D20070C39A /* InfoPlist.strings */ = { 424 | isa = PBXVariantGroup; 425 | children = ( 426 | 6003F597195388D20070C39A /* en */, 427 | ); 428 | name = InfoPlist.strings; 429 | sourceTree = ""; 430 | }; 431 | 6003F59F195388D20070C39A /* Main_iPhone.storyboard */ = { 432 | isa = PBXVariantGroup; 433 | children = ( 434 | 6003F5A0195388D20070C39A /* Base */, 435 | ); 436 | name = Main_iPhone.storyboard; 437 | sourceTree = ""; 438 | }; 439 | 6003F5A2195388D20070C39A /* Main_iPad.storyboard */ = { 440 | isa = PBXVariantGroup; 441 | children = ( 442 | 6003F5A3195388D20070C39A /* Base */, 443 | ); 444 | name = Main_iPad.storyboard; 445 | sourceTree = ""; 446 | }; 447 | 6003F5B8195388D20070C39A /* InfoPlist.strings */ = { 448 | isa = PBXVariantGroup; 449 | children = ( 450 | 6003F5B9195388D20070C39A /* en */, 451 | ); 452 | name = InfoPlist.strings; 453 | sourceTree = ""; 454 | }; 455 | /* End PBXVariantGroup section */ 456 | 457 | /* Begin XCBuildConfiguration section */ 458 | 6003F5BD195388D20070C39A /* Debug */ = { 459 | isa = XCBuildConfiguration; 460 | buildSettings = { 461 | ALWAYS_SEARCH_USER_PATHS = NO; 462 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 463 | CLANG_CXX_LIBRARY = "libc++"; 464 | CLANG_ENABLE_MODULES = YES; 465 | CLANG_ENABLE_OBJC_ARC = YES; 466 | CLANG_WARN_BOOL_CONVERSION = YES; 467 | CLANG_WARN_CONSTANT_CONVERSION = YES; 468 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 469 | CLANG_WARN_EMPTY_BODY = YES; 470 | CLANG_WARN_ENUM_CONVERSION = YES; 471 | CLANG_WARN_INT_CONVERSION = YES; 472 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 473 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 474 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 475 | COPY_PHASE_STRIP = NO; 476 | ENABLE_TESTABILITY = YES; 477 | GCC_C_LANGUAGE_STANDARD = gnu99; 478 | GCC_DYNAMIC_NO_PIC = NO; 479 | GCC_OPTIMIZATION_LEVEL = 0; 480 | GCC_PREPROCESSOR_DEFINITIONS = ( 481 | "DEBUG=1", 482 | "$(inherited)", 483 | ); 484 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 485 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 486 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 487 | GCC_WARN_UNDECLARED_SELECTOR = YES; 488 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 489 | GCC_WARN_UNUSED_FUNCTION = YES; 490 | GCC_WARN_UNUSED_VARIABLE = YES; 491 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 492 | ONLY_ACTIVE_ARCH = YES; 493 | SDKROOT = iphoneos; 494 | TARGETED_DEVICE_FAMILY = "1,2"; 495 | }; 496 | name = Debug; 497 | }; 498 | 6003F5BE195388D20070C39A /* Release */ = { 499 | isa = XCBuildConfiguration; 500 | buildSettings = { 501 | ALWAYS_SEARCH_USER_PATHS = NO; 502 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 503 | CLANG_CXX_LIBRARY = "libc++"; 504 | CLANG_ENABLE_MODULES = YES; 505 | CLANG_ENABLE_OBJC_ARC = YES; 506 | CLANG_WARN_BOOL_CONVERSION = YES; 507 | CLANG_WARN_CONSTANT_CONVERSION = YES; 508 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 509 | CLANG_WARN_EMPTY_BODY = YES; 510 | CLANG_WARN_ENUM_CONVERSION = YES; 511 | CLANG_WARN_INT_CONVERSION = YES; 512 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 513 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 514 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 515 | COPY_PHASE_STRIP = YES; 516 | ENABLE_NS_ASSERTIONS = NO; 517 | GCC_C_LANGUAGE_STANDARD = gnu99; 518 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 519 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 520 | GCC_WARN_UNDECLARED_SELECTOR = YES; 521 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 522 | GCC_WARN_UNUSED_FUNCTION = YES; 523 | GCC_WARN_UNUSED_VARIABLE = YES; 524 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 525 | SDKROOT = iphoneos; 526 | TARGETED_DEVICE_FAMILY = "1,2"; 527 | VALIDATE_PRODUCT = YES; 528 | }; 529 | name = Release; 530 | }; 531 | 6003F5C0195388D20070C39A /* Debug */ = { 532 | isa = XCBuildConfiguration; 533 | baseConfigurationReference = AC34687A583C6C72BA6CC065 /* Pods-ZRScrollableTabBar.debug.xcconfig */; 534 | buildSettings = { 535 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 536 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; 537 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 538 | GCC_PREFIX_HEADER = "ZRScrollableTabBar/ZRScrollableTabBar-Prefix.pch"; 539 | INFOPLIST_FILE = "ZRScrollableTabBar/ZRScrollableTabBar-Info.plist"; 540 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier}"; 541 | PRODUCT_NAME = "$(TARGET_NAME)"; 542 | WRAPPER_EXTENSION = app; 543 | }; 544 | name = Debug; 545 | }; 546 | 6003F5C1195388D20070C39A /* Release */ = { 547 | isa = XCBuildConfiguration; 548 | baseConfigurationReference = 59D8D3B169970C5296D6FFDC /* Pods-ZRScrollableTabBar.release.xcconfig */; 549 | buildSettings = { 550 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 551 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; 552 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 553 | GCC_PREFIX_HEADER = "ZRScrollableTabBar/ZRScrollableTabBar-Prefix.pch"; 554 | INFOPLIST_FILE = "ZRScrollableTabBar/ZRScrollableTabBar-Info.plist"; 555 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier}"; 556 | PRODUCT_NAME = "$(TARGET_NAME)"; 557 | WRAPPER_EXTENSION = app; 558 | }; 559 | name = Release; 560 | }; 561 | 6003F5C3195388D20070C39A /* Debug */ = { 562 | isa = XCBuildConfiguration; 563 | baseConfigurationReference = 51E015A36F910214A7416939 /* Pods-Tests.debug.xcconfig */; 564 | buildSettings = { 565 | BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/ZRScrollableTabBar.app/ZRScrollableTabBar"; 566 | FRAMEWORK_SEARCH_PATHS = ( 567 | "$(SDKROOT)/Developer/Library/Frameworks", 568 | "$(inherited)", 569 | "$(DEVELOPER_FRAMEWORKS_DIR)", 570 | ); 571 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 572 | GCC_PREFIX_HEADER = "Tests/Tests-Prefix.pch"; 573 | GCC_PREPROCESSOR_DEFINITIONS = ( 574 | "DEBUG=1", 575 | "$(inherited)", 576 | ); 577 | INFOPLIST_FILE = "Tests/Tests-Info.plist"; 578 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier}"; 579 | PRODUCT_NAME = "$(TARGET_NAME)"; 580 | TEST_HOST = "$(BUNDLE_LOADER)"; 581 | WRAPPER_EXTENSION = xctest; 582 | }; 583 | name = Debug; 584 | }; 585 | 6003F5C4195388D20070C39A /* Release */ = { 586 | isa = XCBuildConfiguration; 587 | baseConfigurationReference = EF7CB10F2B989EAD384142D7 /* Pods-Tests.release.xcconfig */; 588 | buildSettings = { 589 | BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/ZRScrollableTabBar.app/ZRScrollableTabBar"; 590 | FRAMEWORK_SEARCH_PATHS = ( 591 | "$(SDKROOT)/Developer/Library/Frameworks", 592 | "$(inherited)", 593 | "$(DEVELOPER_FRAMEWORKS_DIR)", 594 | ); 595 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 596 | GCC_PREFIX_HEADER = "Tests/Tests-Prefix.pch"; 597 | INFOPLIST_FILE = "Tests/Tests-Info.plist"; 598 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier}"; 599 | PRODUCT_NAME = "$(TARGET_NAME)"; 600 | TEST_HOST = "$(BUNDLE_LOADER)"; 601 | WRAPPER_EXTENSION = xctest; 602 | }; 603 | name = Release; 604 | }; 605 | /* End XCBuildConfiguration section */ 606 | 607 | /* Begin XCConfigurationList section */ 608 | 6003F585195388D10070C39A /* Build configuration list for PBXProject "ZRScrollableTabBar" */ = { 609 | isa = XCConfigurationList; 610 | buildConfigurations = ( 611 | 6003F5BD195388D20070C39A /* Debug */, 612 | 6003F5BE195388D20070C39A /* Release */, 613 | ); 614 | defaultConfigurationIsVisible = 0; 615 | defaultConfigurationName = Release; 616 | }; 617 | 6003F5BF195388D20070C39A /* Build configuration list for PBXNativeTarget "ZRScrollableTabBar" */ = { 618 | isa = XCConfigurationList; 619 | buildConfigurations = ( 620 | 6003F5C0195388D20070C39A /* Debug */, 621 | 6003F5C1195388D20070C39A /* Release */, 622 | ); 623 | defaultConfigurationIsVisible = 0; 624 | defaultConfigurationName = Release; 625 | }; 626 | 6003F5C2195388D20070C39A /* Build configuration list for PBXNativeTarget "Tests" */ = { 627 | isa = XCConfigurationList; 628 | buildConfigurations = ( 629 | 6003F5C3195388D20070C39A /* Debug */, 630 | 6003F5C4195388D20070C39A /* Release */, 631 | ); 632 | defaultConfigurationIsVisible = 0; 633 | defaultConfigurationName = Release; 634 | }; 635 | /* End XCConfigurationList section */ 636 | }; 637 | rootObject = 6003F582195388D10070C39A /* Project object */; 638 | } 639 | -------------------------------------------------------------------------------- /Example/Pods/Pods.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | archiveVersion 6 | 1 7 | classes 8 | 9 | objectVersion 10 | 46 11 | objects 12 | 13 | 04CFFA6BC789C057BBC6ED1C 14 | 15 | includeInIndex 16 | 1 17 | isa 18 | PBXFileReference 19 | lastKnownFileType 20 | text 21 | name 22 | Podfile 23 | path 24 | ../Podfile 25 | sourceTree 26 | SOURCE_ROOT 27 | xcLanguageSpecificationIdentifier 28 | xcode.lang.ruby 29 | 30 | 09A1342208C397C4EE2D0CA3 31 | 32 | buildConfigurations 33 | 34 | 4CBCCDAB38E28A8B9B89C338 35 | FF2214C35CFC7BC1FE89850C 36 | 37 | defaultConfigurationIsVisible 38 | 0 39 | defaultConfigurationName 40 | Release 41 | isa 42 | XCConfigurationList 43 | 44 | 0DE4839500D245C5553A966A 45 | 46 | explicitFileType 47 | archive.ar 48 | includeInIndex 49 | 0 50 | isa 51 | PBXFileReference 52 | path 53 | libPods-Tests-ZRScrollableTabBar.a 54 | sourceTree 55 | BUILT_PRODUCTS_DIR 56 | 57 | 0E03B8B5E5CECFB4F75CEE38 58 | 59 | children 60 | 61 | F60CA6A7E8B389DA50653CE3 62 | 7BF6E192A3E261B14B3CF026 63 | 3030E8146BDA082232EE5B10 64 | E0145412B72868740196EA70 65 | 714C2F46758ADD05E42B022C 66 | AB1EB9AE232FBCA4EFE3F728 67 | FDEB38B50C58F4A7174C01C1 68 | 69 | isa 70 | PBXGroup 71 | name 72 | Pods-Tests 73 | path 74 | Target Support Files/Pods-Tests 75 | sourceTree 76 | <group> 77 | 78 | 0FF6A3AC64AEA5AB9CADD907 79 | 80 | buildActionMask 81 | 2147483647 82 | files 83 | 84 | 30ED598EE0F20896E708EBD1 85 | 86 | isa 87 | PBXSourcesBuildPhase 88 | runOnlyForDeploymentPostprocessing 89 | 0 90 | 91 | 14AB29EE5B47AC61BC63CAB8 92 | 93 | includeInIndex 94 | 1 95 | isa 96 | PBXFileReference 97 | lastKnownFileType 98 | text 99 | path 100 | Pods-ZRScrollableTabBar-acknowledgements.markdown 101 | sourceTree 102 | <group> 103 | 104 | 15B20E85506DAB2E2D5A8D40 105 | 106 | children 107 | 108 | 04CFFA6BC789C057BBC6ED1C 109 | A399E9106924858DC35BE08A 110 | 98F96C998D5D350B452F5A7F 111 | B807CC10EE18FD5FEF519A77 112 | BF18845484A0A1BF5A96F6B6 113 | 114 | isa 115 | PBXGroup 116 | sourceTree 117 | <group> 118 | 119 | 199E498EE58AA7D48510DDB1 120 | 121 | containerPortal 122 | C4A2F7BBB96B97E7FD8E2FC4 123 | isa 124 | PBXContainerItemProxy 125 | proxyType 126 | 1 127 | remoteGlobalIDString 128 | 746F4E95B9FD089D7DD091D4 129 | remoteInfo 130 | Pods-ZRScrollableTabBar-ZRScrollableTabBar 131 | 132 | 1DAD045C5DB49F3B31F67783 133 | 134 | includeInIndex 135 | 1 136 | isa 137 | PBXFileReference 138 | lastKnownFileType 139 | text.xcconfig 140 | name 141 | Pods-ZRScrollableTabBar-ZRScrollableTabBar.xcconfig 142 | path 143 | ../Pods-ZRScrollableTabBar-ZRScrollableTabBar/Pods-ZRScrollableTabBar-ZRScrollableTabBar.xcconfig 144 | sourceTree 145 | <group> 146 | 147 | 1DC708608E1DEB1144FA51FC 148 | 149 | explicitFileType 150 | archive.ar 151 | includeInIndex 152 | 0 153 | isa 154 | PBXFileReference 155 | path 156 | libPods-ZRScrollableTabBar-ZRScrollableTabBar.a 157 | sourceTree 158 | BUILT_PRODUCTS_DIR 159 | 160 | 2186BA1D201D072931527D99 161 | 162 | includeInIndex 163 | 1 164 | isa 165 | PBXFileReference 166 | lastKnownFileType 167 | sourcecode.c.h 168 | name 169 | Pods-ZRScrollableTabBar-ZRScrollableTabBar-prefix.pch 170 | path 171 | ../Pods-ZRScrollableTabBar-ZRScrollableTabBar/Pods-ZRScrollableTabBar-ZRScrollableTabBar-prefix.pch 172 | sourceTree 173 | <group> 174 | 175 | 2862260E97DC2413F2249356 176 | 177 | buildActionMask 178 | 2147483647 179 | files 180 | 181 | 62581B2816372DDF766D3410 182 | 183 | isa 184 | PBXFrameworksBuildPhase 185 | runOnlyForDeploymentPostprocessing 186 | 0 187 | 188 | 2A1B7B59B80325ED46492113 189 | 190 | fileRef 191 | 2D0585013A1CFB546C6AF39F 192 | isa 193 | PBXBuildFile 194 | 195 | 2D0585013A1CFB546C6AF39F 196 | 197 | isa 198 | PBXFileReference 199 | lastKnownFileType 200 | wrapper.framework 201 | name 202 | Foundation.framework 203 | path 204 | Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/Foundation.framework 205 | sourceTree 206 | DEVELOPER_DIR 207 | 208 | 2D44D45ABBDCADFB204645B6 209 | 210 | includeInIndex 211 | 1 212 | isa 213 | PBXFileReference 214 | lastKnownFileType 215 | sourcecode.c.objc 216 | path 217 | Pods-ZRScrollableTabBar-dummy.m 218 | sourceTree 219 | <group> 220 | 221 | 2EFE5B147C4EEA6F55E5CEEF 222 | 223 | explicitFileType 224 | wrapper.cfbundle 225 | includeInIndex 226 | 0 227 | isa 228 | PBXFileReference 229 | path 230 | ZRScrollableTabBar.bundle 231 | sourceTree 232 | BUILT_PRODUCTS_DIR 233 | 234 | 3030E8146BDA082232EE5B10 235 | 236 | includeInIndex 237 | 1 238 | isa 239 | PBXFileReference 240 | lastKnownFileType 241 | sourcecode.c.objc 242 | path 243 | Pods-Tests-dummy.m 244 | sourceTree 245 | <group> 246 | 247 | 30ED598EE0F20896E708EBD1 248 | 249 | fileRef 250 | 967D37A6731F1A26C495CC5B 251 | isa 252 | PBXBuildFile 253 | 254 | 4049821A98CAF90D5D63186A 255 | 256 | children 257 | 258 | 14AB29EE5B47AC61BC63CAB8 259 | C06F0D197FC63AE2C3D4ABDD 260 | 2D44D45ABBDCADFB204645B6 261 | 4817F459E829B4B09A00172A 262 | F826166D3B6E1A4B8F3155D4 263 | FBB466E96547E52BEE8E6236 264 | E0AC861BD38929D9410E465F 265 | 266 | isa 267 | PBXGroup 268 | name 269 | Pods-ZRScrollableTabBar 270 | path 271 | Target Support Files/Pods-ZRScrollableTabBar 272 | sourceTree 273 | <group> 274 | 275 | 4817F459E829B4B09A00172A 276 | 277 | includeInIndex 278 | 1 279 | isa 280 | PBXFileReference 281 | lastKnownFileType 282 | sourcecode.c.h 283 | path 284 | Pods-ZRScrollableTabBar-environment.h 285 | sourceTree 286 | <group> 287 | 288 | 496627A5F45D625056767895 289 | 290 | isa 291 | PBXTargetDependency 292 | name 293 | ZRScrollableTabBar 294 | target 295 | BC1220E5E83A0ED46E59EBF1 296 | targetProxy 297 | BB5EE94EAA1049A537A66B75 298 | 299 | 49F1CF72BBBCB3B984161140 300 | 301 | children 302 | 303 | 2D0585013A1CFB546C6AF39F 304 | 305 | isa 306 | PBXGroup 307 | name 308 | iOS 309 | sourceTree 310 | <group> 311 | 312 | 4CBCCDAB38E28A8B9B89C338 313 | 314 | baseConfigurationReference 315 | C76FA83398B12A4E973AD3BC 316 | buildSettings 317 | 318 | ALWAYS_SEARCH_USER_PATHS 319 | NO 320 | COPY_PHASE_STRIP 321 | NO 322 | DSTROOT 323 | /tmp/xcodeproj.dst 324 | GCC_DYNAMIC_NO_PIC 325 | NO 326 | GCC_OPTIMIZATION_LEVEL 327 | 0 328 | GCC_PRECOMPILE_PREFIX_HEADER 329 | YES 330 | GCC_PREFIX_HEADER 331 | Target Support Files/Pods-ZRScrollableTabBar-ZRScrollableTabBar/Pods-ZRScrollableTabBar-ZRScrollableTabBar-prefix.pch 332 | GCC_PREPROCESSOR_DEFINITIONS 333 | 334 | DEBUG=1 335 | $(inherited) 336 | 337 | GCC_SYMBOLS_PRIVATE_EXTERN 338 | NO 339 | INSTALL_PATH 340 | $(BUILT_PRODUCTS_DIR) 341 | IPHONEOS_DEPLOYMENT_TARGET 342 | 7.1 343 | OTHER_LDFLAGS 344 | 345 | OTHER_LIBTOOLFLAGS 346 | 347 | PRODUCT_NAME 348 | $(TARGET_NAME) 349 | PUBLIC_HEADERS_FOLDER_PATH 350 | $(TARGET_NAME) 351 | SDKROOT 352 | iphoneos 353 | SKIP_INSTALL 354 | YES 355 | 356 | isa 357 | XCBuildConfiguration 358 | name 359 | Debug 360 | 361 | 53810F3F65F3385781D5C99B 362 | 363 | includeInIndex 364 | 1 365 | isa 366 | PBXFileReference 367 | lastKnownFileType 368 | sourcecode.c.h 369 | path 370 | Pods-Tests-ZRScrollableTabBar-prefix.pch 371 | sourceTree 372 | <group> 373 | 374 | 62581B2816372DDF766D3410 375 | 376 | fileRef 377 | 2D0585013A1CFB546C6AF39F 378 | isa 379 | PBXBuildFile 380 | 381 | 634AB313C5BC7045C8525165 382 | 383 | buildSettings 384 | 385 | ALWAYS_SEARCH_USER_PATHS 386 | NO 387 | CLANG_CXX_LANGUAGE_STANDARD 388 | gnu++0x 389 | CLANG_CXX_LIBRARY 390 | libc++ 391 | CLANG_ENABLE_MODULES 392 | YES 393 | CLANG_ENABLE_OBJC_ARC 394 | YES 395 | CLANG_WARN_BOOL_CONVERSION 396 | YES 397 | CLANG_WARN_CONSTANT_CONVERSION 398 | YES 399 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE 400 | YES 401 | CLANG_WARN_EMPTY_BODY 402 | YES 403 | CLANG_WARN_ENUM_CONVERSION 404 | YES 405 | CLANG_WARN_INT_CONVERSION 406 | YES 407 | CLANG_WARN_OBJC_ROOT_CLASS 408 | YES 409 | COPY_PHASE_STRIP 410 | NO 411 | ENABLE_NS_ASSERTIONS 412 | NO 413 | GCC_C_LANGUAGE_STANDARD 414 | gnu99 415 | GCC_PREPROCESSOR_DEFINITIONS 416 | 417 | RELEASE=1 418 | 419 | GCC_WARN_64_TO_32_BIT_CONVERSION 420 | YES 421 | GCC_WARN_ABOUT_RETURN_TYPE 422 | YES 423 | GCC_WARN_UNDECLARED_SELECTOR 424 | YES 425 | GCC_WARN_UNINITIALIZED_AUTOS 426 | YES 427 | GCC_WARN_UNUSED_FUNCTION 428 | YES 429 | GCC_WARN_UNUSED_VARIABLE 430 | YES 431 | IPHONEOS_DEPLOYMENT_TARGET 432 | 7.1 433 | STRIP_INSTALLED_PRODUCT 434 | NO 435 | VALIDATE_PRODUCT 436 | YES 437 | 438 | isa 439 | XCBuildConfiguration 440 | name 441 | Release 442 | 443 | 64ABB16999465D2693CE1BDE 444 | 445 | buildActionMask 446 | 2147483647 447 | files 448 | 449 | isa 450 | PBXFrameworksBuildPhase 451 | runOnlyForDeploymentPostprocessing 452 | 0 453 | 454 | 65D18916416DAB5A0DD06852 455 | 456 | baseConfigurationReference 457 | B481123D95ED45694AB684FD 458 | buildSettings 459 | 460 | ALWAYS_SEARCH_USER_PATHS 461 | NO 462 | COPY_PHASE_STRIP 463 | NO 464 | DSTROOT 465 | /tmp/xcodeproj.dst 466 | GCC_DYNAMIC_NO_PIC 467 | NO 468 | GCC_OPTIMIZATION_LEVEL 469 | 0 470 | GCC_PRECOMPILE_PREFIX_HEADER 471 | YES 472 | GCC_PREFIX_HEADER 473 | Target Support Files/Pods-Tests-ZRScrollableTabBar/Pods-Tests-ZRScrollableTabBar-prefix.pch 474 | GCC_PREPROCESSOR_DEFINITIONS 475 | 476 | DEBUG=1 477 | $(inherited) 478 | 479 | GCC_SYMBOLS_PRIVATE_EXTERN 480 | NO 481 | INSTALL_PATH 482 | $(BUILT_PRODUCTS_DIR) 483 | IPHONEOS_DEPLOYMENT_TARGET 484 | 7.1 485 | OTHER_LDFLAGS 486 | 487 | OTHER_LIBTOOLFLAGS 488 | 489 | PRODUCT_NAME 490 | $(TARGET_NAME) 491 | PUBLIC_HEADERS_FOLDER_PATH 492 | $(TARGET_NAME) 493 | SDKROOT 494 | iphoneos 495 | SKIP_INSTALL 496 | YES 497 | 498 | isa 499 | XCBuildConfiguration 500 | name 501 | Debug 502 | 503 | 683F6FEAAFDED43BE4FAC8AA 504 | 505 | baseConfigurationReference 506 | FBB466E96547E52BEE8E6236 507 | buildSettings 508 | 509 | ALWAYS_SEARCH_USER_PATHS 510 | NO 511 | COPY_PHASE_STRIP 512 | NO 513 | DSTROOT 514 | /tmp/xcodeproj.dst 515 | GCC_DYNAMIC_NO_PIC 516 | NO 517 | GCC_OPTIMIZATION_LEVEL 518 | 0 519 | GCC_PRECOMPILE_PREFIX_HEADER 520 | YES 521 | GCC_PREPROCESSOR_DEFINITIONS 522 | 523 | DEBUG=1 524 | $(inherited) 525 | 526 | GCC_SYMBOLS_PRIVATE_EXTERN 527 | NO 528 | INSTALL_PATH 529 | $(BUILT_PRODUCTS_DIR) 530 | IPHONEOS_DEPLOYMENT_TARGET 531 | 7.1 532 | OTHER_LDFLAGS 533 | 534 | OTHER_LIBTOOLFLAGS 535 | 536 | PRODUCT_NAME 537 | $(TARGET_NAME) 538 | PUBLIC_HEADERS_FOLDER_PATH 539 | $(TARGET_NAME) 540 | SDKROOT 541 | iphoneos 542 | SKIP_INSTALL 543 | YES 544 | 545 | isa 546 | XCBuildConfiguration 547 | name 548 | Debug 549 | 550 | 69B47400CF31F831F9F12CF9 551 | 552 | fileRef 553 | 2D44D45ABBDCADFB204645B6 554 | isa 555 | PBXBuildFile 556 | 557 | 6C012856567E39E9FDFC9B58 558 | 559 | buildActionMask 560 | 2147483647 561 | files 562 | 563 | C681E6F4B041D71C99C82532 564 | 565 | isa 566 | PBXSourcesBuildPhase 567 | runOnlyForDeploymentPostprocessing 568 | 0 569 | 570 | 6E6EB3EE49B3B4C3B9F8EE5B 571 | 572 | baseConfigurationReference 573 | B481123D95ED45694AB684FD 574 | buildSettings 575 | 576 | ALWAYS_SEARCH_USER_PATHS 577 | NO 578 | COPY_PHASE_STRIP 579 | YES 580 | DSTROOT 581 | /tmp/xcodeproj.dst 582 | GCC_PRECOMPILE_PREFIX_HEADER 583 | YES 584 | GCC_PREFIX_HEADER 585 | Target Support Files/Pods-Tests-ZRScrollableTabBar/Pods-Tests-ZRScrollableTabBar-prefix.pch 586 | INSTALL_PATH 587 | $(BUILT_PRODUCTS_DIR) 588 | IPHONEOS_DEPLOYMENT_TARGET 589 | 7.1 590 | OTHER_CFLAGS 591 | 592 | -DNS_BLOCK_ASSERTIONS=1 593 | $(inherited) 594 | 595 | OTHER_CPLUSPLUSFLAGS 596 | 597 | -DNS_BLOCK_ASSERTIONS=1 598 | $(inherited) 599 | 600 | OTHER_LDFLAGS 601 | 602 | OTHER_LIBTOOLFLAGS 603 | 604 | PRODUCT_NAME 605 | $(TARGET_NAME) 606 | PUBLIC_HEADERS_FOLDER_PATH 607 | $(TARGET_NAME) 608 | SDKROOT 609 | iphoneos 610 | SKIP_INSTALL 611 | YES 612 | VALIDATE_PRODUCT 613 | YES 614 | 615 | isa 616 | XCBuildConfiguration 617 | name 618 | Release 619 | 620 | 70DF198E802445A317CABCDB 621 | 622 | buildSettings 623 | 624 | ALWAYS_SEARCH_USER_PATHS 625 | NO 626 | CLANG_CXX_LANGUAGE_STANDARD 627 | gnu++0x 628 | CLANG_CXX_LIBRARY 629 | libc++ 630 | CLANG_ENABLE_MODULES 631 | YES 632 | CLANG_ENABLE_OBJC_ARC 633 | YES 634 | CLANG_WARN_BOOL_CONVERSION 635 | YES 636 | CLANG_WARN_CONSTANT_CONVERSION 637 | YES 638 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE 639 | YES 640 | CLANG_WARN_EMPTY_BODY 641 | YES 642 | CLANG_WARN_ENUM_CONVERSION 643 | YES 644 | CLANG_WARN_INT_CONVERSION 645 | YES 646 | CLANG_WARN_OBJC_ROOT_CLASS 647 | YES 648 | COPY_PHASE_STRIP 649 | YES 650 | GCC_C_LANGUAGE_STANDARD 651 | gnu99 652 | GCC_DYNAMIC_NO_PIC 653 | NO 654 | GCC_OPTIMIZATION_LEVEL 655 | 0 656 | GCC_PREPROCESSOR_DEFINITIONS 657 | 658 | DEBUG=1 659 | $(inherited) 660 | 661 | GCC_SYMBOLS_PRIVATE_EXTERN 662 | NO 663 | GCC_WARN_64_TO_32_BIT_CONVERSION 664 | YES 665 | GCC_WARN_ABOUT_RETURN_TYPE 666 | YES 667 | GCC_WARN_UNDECLARED_SELECTOR 668 | YES 669 | GCC_WARN_UNINITIALIZED_AUTOS 670 | YES 671 | GCC_WARN_UNUSED_FUNCTION 672 | YES 673 | GCC_WARN_UNUSED_VARIABLE 674 | YES 675 | IPHONEOS_DEPLOYMENT_TARGET 676 | 7.1 677 | ONLY_ACTIVE_ARCH 678 | YES 679 | STRIP_INSTALLED_PRODUCT 680 | NO 681 | 682 | isa 683 | XCBuildConfiguration 684 | name 685 | Debug 686 | 687 | 714C2F46758ADD05E42B022C 688 | 689 | includeInIndex 690 | 1 691 | isa 692 | PBXFileReference 693 | lastKnownFileType 694 | text.script.sh 695 | path 696 | Pods-Tests-resources.sh 697 | sourceTree 698 | <group> 699 | 700 | 72469CAE8305E509A12D2972 701 | 702 | fileRef 703 | 2D0585013A1CFB546C6AF39F 704 | isa 705 | PBXBuildFile 706 | 707 | 746F4E95B9FD089D7DD091D4 708 | 709 | buildConfigurationList 710 | 09A1342208C397C4EE2D0CA3 711 | buildPhases 712 | 713 | E5ECFFC892858BB45D6384CB 714 | 87CBEB3ABC61514D87212790 715 | 716 | buildRules 717 | 718 | dependencies 719 | 720 | E64A47208578BA4023B197C5 721 | 722 | isa 723 | PBXNativeTarget 724 | name 725 | Pods-ZRScrollableTabBar-ZRScrollableTabBar 726 | productName 727 | Pods-ZRScrollableTabBar-ZRScrollableTabBar 728 | productReference 729 | 1DC708608E1DEB1144FA51FC 730 | productType 731 | com.apple.product-type.library.static 732 | 733 | 7577F75DD4D3DFA805753652 734 | 735 | isa 736 | PBXTargetDependency 737 | name 738 | Pods-Tests-ZRScrollableTabBar 739 | target 740 | A57E94562C3805A90357240A 741 | targetProxy 742 | 9BD60B0214558A44D7477D9B 743 | 744 | 7BF6E192A3E261B14B3CF026 745 | 746 | includeInIndex 747 | 1 748 | isa 749 | PBXFileReference 750 | lastKnownFileType 751 | text.plist.xml 752 | path 753 | Pods-Tests-acknowledgements.plist 754 | sourceTree 755 | <group> 756 | 757 | 81CD3475CF93F562C1E5BD30 758 | 759 | explicitFileType 760 | archive.ar 761 | includeInIndex 762 | 0 763 | isa 764 | PBXFileReference 765 | path 766 | libPods-ZRScrollableTabBar.a 767 | sourceTree 768 | BUILT_PRODUCTS_DIR 769 | 770 | 87CBEB3ABC61514D87212790 771 | 772 | buildActionMask 773 | 2147483647 774 | files 775 | 776 | 72469CAE8305E509A12D2972 777 | 778 | isa 779 | PBXFrameworksBuildPhase 780 | runOnlyForDeploymentPostprocessing 781 | 0 782 | 783 | 896A3D07CD0C0F809B2CE883 784 | 785 | buildConfigurations 786 | 787 | 65D18916416DAB5A0DD06852 788 | 6E6EB3EE49B3B4C3B9F8EE5B 789 | 790 | defaultConfigurationIsVisible 791 | 0 792 | defaultConfigurationName 793 | Release 794 | isa 795 | XCConfigurationList 796 | 797 | 89E87975D5C6847A628A8693 798 | 799 | fileRef 800 | 2D0585013A1CFB546C6AF39F 801 | isa 802 | PBXBuildFile 803 | 804 | 8C3069A6AC55B38BF59D75EB 805 | 806 | baseConfigurationReference 807 | FDEB38B50C58F4A7174C01C1 808 | buildSettings 809 | 810 | ALWAYS_SEARCH_USER_PATHS 811 | NO 812 | COPY_PHASE_STRIP 813 | YES 814 | DSTROOT 815 | /tmp/xcodeproj.dst 816 | GCC_PRECOMPILE_PREFIX_HEADER 817 | YES 818 | INSTALL_PATH 819 | $(BUILT_PRODUCTS_DIR) 820 | IPHONEOS_DEPLOYMENT_TARGET 821 | 7.1 822 | OTHER_CFLAGS 823 | 824 | -DNS_BLOCK_ASSERTIONS=1 825 | $(inherited) 826 | 827 | OTHER_CPLUSPLUSFLAGS 828 | 829 | -DNS_BLOCK_ASSERTIONS=1 830 | $(inherited) 831 | 832 | OTHER_LDFLAGS 833 | 834 | OTHER_LIBTOOLFLAGS 835 | 836 | PRODUCT_NAME 837 | $(TARGET_NAME) 838 | PUBLIC_HEADERS_FOLDER_PATH 839 | $(TARGET_NAME) 840 | SDKROOT 841 | iphoneos 842 | SKIP_INSTALL 843 | YES 844 | VALIDATE_PRODUCT 845 | YES 846 | 847 | isa 848 | XCBuildConfiguration 849 | name 850 | Release 851 | 852 | 8D5D8BB83598757D4D18AB4C 853 | 854 | buildConfigurations 855 | 856 | DF6F73778DC63EF62AFE0379 857 | 93F7B7EA7F22FE34889AAE56 858 | 859 | defaultConfigurationIsVisible 860 | 0 861 | defaultConfigurationName 862 | Release 863 | isa 864 | XCConfigurationList 865 | 866 | 92EB914882EC41901386FF31 867 | 868 | buildActionMask 869 | 2147483647 870 | files 871 | 872 | isa 873 | PBXSourcesBuildPhase 874 | runOnlyForDeploymentPostprocessing 875 | 0 876 | 877 | 93F7B7EA7F22FE34889AAE56 878 | 879 | buildSettings 880 | 881 | PRODUCT_NAME 882 | $(TARGET_NAME) 883 | SDKROOT 884 | iphoneos 885 | SKIP_INSTALL 886 | YES 887 | WRAPPER_EXTENSION 888 | bundle 889 | 890 | isa 891 | XCBuildConfiguration 892 | name 893 | Release 894 | 895 | 967D37A6731F1A26C495CC5B 896 | 897 | includeInIndex 898 | 1 899 | isa 900 | PBXFileReference 901 | lastKnownFileType 902 | sourcecode.c.objc 903 | path 904 | Pods-Tests-ZRScrollableTabBar-dummy.m 905 | sourceTree 906 | <group> 907 | 908 | 98F96C998D5D350B452F5A7F 909 | 910 | children 911 | 912 | 49F1CF72BBBCB3B984161140 913 | 914 | isa 915 | PBXGroup 916 | name 917 | Frameworks 918 | sourceTree 919 | <group> 920 | 921 | 9A91B7CE0A8DBB233CDE8974 922 | 923 | children 924 | 925 | D971136CA3D8C8EF555C7526 926 | 927 | isa 928 | PBXGroup 929 | name 930 | ZRScrollableTabBar 931 | path 932 | ../.. 933 | sourceTree 934 | <group> 935 | 936 | 9BD60B0214558A44D7477D9B 937 | 938 | containerPortal 939 | C4A2F7BBB96B97E7FD8E2FC4 940 | isa 941 | PBXContainerItemProxy 942 | proxyType 943 | 1 944 | remoteGlobalIDString 945 | A57E94562C3805A90357240A 946 | remoteInfo 947 | Pods-Tests-ZRScrollableTabBar 948 | 949 | A399E9106924858DC35BE08A 950 | 951 | children 952 | 953 | 9A91B7CE0A8DBB233CDE8974 954 | 955 | isa 956 | PBXGroup 957 | name 958 | Development Pods 959 | sourceTree 960 | <group> 961 | 962 | A57E94562C3805A90357240A 963 | 964 | buildConfigurationList 965 | 896A3D07CD0C0F809B2CE883 966 | buildPhases 967 | 968 | 0FF6A3AC64AEA5AB9CADD907 969 | CB6D5EACFCCC6CB70EABEA84 970 | 971 | buildRules 972 | 973 | dependencies 974 | 975 | 496627A5F45D625056767895 976 | 977 | isa 978 | PBXNativeTarget 979 | name 980 | Pods-Tests-ZRScrollableTabBar 981 | productName 982 | Pods-Tests-ZRScrollableTabBar 983 | productReference 984 | 0DE4839500D245C5553A966A 985 | productType 986 | com.apple.product-type.library.static 987 | 988 | A856E08EDAED445BAD04AB92 989 | 990 | baseConfigurationReference 991 | E0AC861BD38929D9410E465F 992 | buildSettings 993 | 994 | ALWAYS_SEARCH_USER_PATHS 995 | NO 996 | COPY_PHASE_STRIP 997 | YES 998 | DSTROOT 999 | /tmp/xcodeproj.dst 1000 | GCC_PRECOMPILE_PREFIX_HEADER 1001 | YES 1002 | INSTALL_PATH 1003 | $(BUILT_PRODUCTS_DIR) 1004 | IPHONEOS_DEPLOYMENT_TARGET 1005 | 7.1 1006 | OTHER_CFLAGS 1007 | 1008 | -DNS_BLOCK_ASSERTIONS=1 1009 | $(inherited) 1010 | 1011 | OTHER_CPLUSPLUSFLAGS 1012 | 1013 | -DNS_BLOCK_ASSERTIONS=1 1014 | $(inherited) 1015 | 1016 | OTHER_LDFLAGS 1017 | 1018 | OTHER_LIBTOOLFLAGS 1019 | 1020 | PRODUCT_NAME 1021 | $(TARGET_NAME) 1022 | PUBLIC_HEADERS_FOLDER_PATH 1023 | $(TARGET_NAME) 1024 | SDKROOT 1025 | iphoneos 1026 | SKIP_INSTALL 1027 | YES 1028 | VALIDATE_PRODUCT 1029 | YES 1030 | 1031 | isa 1032 | XCBuildConfiguration 1033 | name 1034 | Release 1035 | 1036 | A91FE8294DDC3CA1DCA464FC 1037 | 1038 | buildConfigurations 1039 | 1040 | 683F6FEAAFDED43BE4FAC8AA 1041 | A856E08EDAED445BAD04AB92 1042 | 1043 | defaultConfigurationIsVisible 1044 | 0 1045 | defaultConfigurationName 1046 | Release 1047 | isa 1048 | XCConfigurationList 1049 | 1050 | AB1EB9AE232FBCA4EFE3F728 1051 | 1052 | includeInIndex 1053 | 1 1054 | isa 1055 | PBXFileReference 1056 | lastKnownFileType 1057 | text.xcconfig 1058 | path 1059 | Pods-Tests.debug.xcconfig 1060 | sourceTree 1061 | <group> 1062 | 1063 | ADA5C83B9ED9B07D6647DBCD 1064 | 1065 | buildActionMask 1066 | 2147483647 1067 | files 1068 | 1069 | 69B47400CF31F831F9F12CF9 1070 | 1071 | isa 1072 | PBXSourcesBuildPhase 1073 | runOnlyForDeploymentPostprocessing 1074 | 0 1075 | 1076 | AF6CC4664F335A4FD6B6917B 1077 | 1078 | buildConfigurationList 1079 | F9C850B4D93406C56A9D48D7 1080 | buildPhases 1081 | 1082 | 6C012856567E39E9FDFC9B58 1083 | CD3BED8C7758DF632B04DCED 1084 | 1085 | buildRules 1086 | 1087 | dependencies 1088 | 1089 | 7577F75DD4D3DFA805753652 1090 | 1091 | isa 1092 | PBXNativeTarget 1093 | name 1094 | Pods-Tests 1095 | productName 1096 | Pods-Tests 1097 | productReference 1098 | F04CE0A69DBECC3D7FD4A2E0 1099 | productType 1100 | com.apple.product-type.library.static 1101 | 1102 | AF884E8BCDACB96646183FE7 1103 | 1104 | baseConfigurationReference 1105 | AB1EB9AE232FBCA4EFE3F728 1106 | buildSettings 1107 | 1108 | ALWAYS_SEARCH_USER_PATHS 1109 | NO 1110 | COPY_PHASE_STRIP 1111 | NO 1112 | DSTROOT 1113 | /tmp/xcodeproj.dst 1114 | GCC_DYNAMIC_NO_PIC 1115 | NO 1116 | GCC_OPTIMIZATION_LEVEL 1117 | 0 1118 | GCC_PRECOMPILE_PREFIX_HEADER 1119 | YES 1120 | GCC_PREPROCESSOR_DEFINITIONS 1121 | 1122 | DEBUG=1 1123 | $(inherited) 1124 | 1125 | GCC_SYMBOLS_PRIVATE_EXTERN 1126 | NO 1127 | INSTALL_PATH 1128 | $(BUILT_PRODUCTS_DIR) 1129 | IPHONEOS_DEPLOYMENT_TARGET 1130 | 7.1 1131 | OTHER_LDFLAGS 1132 | 1133 | OTHER_LIBTOOLFLAGS 1134 | 1135 | PRODUCT_NAME 1136 | $(TARGET_NAME) 1137 | PUBLIC_HEADERS_FOLDER_PATH 1138 | $(TARGET_NAME) 1139 | SDKROOT 1140 | iphoneos 1141 | SKIP_INSTALL 1142 | YES 1143 | 1144 | isa 1145 | XCBuildConfiguration 1146 | name 1147 | Debug 1148 | 1149 | B26945FF60D0CDC9814BD957 1150 | 1151 | includeInIndex 1152 | 1 1153 | isa 1154 | PBXFileReference 1155 | lastKnownFileType 1156 | sourcecode.c.objc 1157 | name 1158 | Pods-ZRScrollableTabBar-ZRScrollableTabBar-dummy.m 1159 | path 1160 | ../Pods-ZRScrollableTabBar-ZRScrollableTabBar/Pods-ZRScrollableTabBar-ZRScrollableTabBar-dummy.m 1161 | sourceTree 1162 | <group> 1163 | 1164 | B481123D95ED45694AB684FD 1165 | 1166 | includeInIndex 1167 | 1 1168 | isa 1169 | PBXFileReference 1170 | lastKnownFileType 1171 | text.xcconfig 1172 | path 1173 | Pods-Tests-ZRScrollableTabBar-Private.xcconfig 1174 | sourceTree 1175 | <group> 1176 | 1177 | B807CC10EE18FD5FEF519A77 1178 | 1179 | children 1180 | 1181 | 2EFE5B147C4EEA6F55E5CEEF 1182 | F04CE0A69DBECC3D7FD4A2E0 1183 | 0DE4839500D245C5553A966A 1184 | 81CD3475CF93F562C1E5BD30 1185 | 1DC708608E1DEB1144FA51FC 1186 | 1187 | isa 1188 | PBXGroup 1189 | name 1190 | Products 1191 | sourceTree 1192 | <group> 1193 | 1194 | BB5EE94EAA1049A537A66B75 1195 | 1196 | containerPortal 1197 | C4A2F7BBB96B97E7FD8E2FC4 1198 | isa 1199 | PBXContainerItemProxy 1200 | proxyType 1201 | 1 1202 | remoteGlobalIDString 1203 | BC1220E5E83A0ED46E59EBF1 1204 | remoteInfo 1205 | ZRScrollableTabBar 1206 | 1207 | BC1220E5E83A0ED46E59EBF1 1208 | 1209 | buildConfigurationList 1210 | 8D5D8BB83598757D4D18AB4C 1211 | buildPhases 1212 | 1213 | 92EB914882EC41901386FF31 1214 | 64ABB16999465D2693CE1BDE 1215 | FB93B2A9808E082D29BE41A6 1216 | 1217 | buildRules 1218 | 1219 | dependencies 1220 | 1221 | isa 1222 | PBXNativeTarget 1223 | name 1224 | ZRScrollableTabBar 1225 | productName 1226 | ZRScrollableTabBar 1227 | productReference 1228 | 2EFE5B147C4EEA6F55E5CEEF 1229 | productType 1230 | com.apple.product-type.bundle 1231 | 1232 | BF18845484A0A1BF5A96F6B6 1233 | 1234 | children 1235 | 1236 | 0E03B8B5E5CECFB4F75CEE38 1237 | 4049821A98CAF90D5D63186A 1238 | 1239 | isa 1240 | PBXGroup 1241 | name 1242 | Targets Support Files 1243 | sourceTree 1244 | <group> 1245 | 1246 | BF5319D7F7BBB28D4E97C583 1247 | 1248 | buildConfigurationList 1249 | A91FE8294DDC3CA1DCA464FC 1250 | buildPhases 1251 | 1252 | ADA5C83B9ED9B07D6647DBCD 1253 | 2862260E97DC2413F2249356 1254 | 1255 | buildRules 1256 | 1257 | dependencies 1258 | 1259 | F2F02DD346765AC0EBD35716 1260 | 1261 | isa 1262 | PBXNativeTarget 1263 | name 1264 | Pods-ZRScrollableTabBar 1265 | productName 1266 | Pods-ZRScrollableTabBar 1267 | productReference 1268 | 81CD3475CF93F562C1E5BD30 1269 | productType 1270 | com.apple.product-type.library.static 1271 | 1272 | C06F0D197FC63AE2C3D4ABDD 1273 | 1274 | includeInIndex 1275 | 1 1276 | isa 1277 | PBXFileReference 1278 | lastKnownFileType 1279 | text.plist.xml 1280 | path 1281 | Pods-ZRScrollableTabBar-acknowledgements.plist 1282 | sourceTree 1283 | <group> 1284 | 1285 | C4A2F7BBB96B97E7FD8E2FC4 1286 | 1287 | attributes 1288 | 1289 | LastUpgradeCheck 1290 | 0510 1291 | 1292 | buildConfigurationList 1293 | CDFCF2DDF941D96E0A428422 1294 | compatibilityVersion 1295 | Xcode 3.2 1296 | developmentRegion 1297 | English 1298 | hasScannedForEncodings 1299 | 0 1300 | isa 1301 | PBXProject 1302 | knownRegions 1303 | 1304 | en 1305 | 1306 | mainGroup 1307 | 15B20E85506DAB2E2D5A8D40 1308 | productRefGroup 1309 | B807CC10EE18FD5FEF519A77 1310 | projectDirPath 1311 | 1312 | projectReferences 1313 | 1314 | projectRoot 1315 | 1316 | targets 1317 | 1318 | AF6CC4664F335A4FD6B6917B 1319 | A57E94562C3805A90357240A 1320 | BF5319D7F7BBB28D4E97C583 1321 | 746F4E95B9FD089D7DD091D4 1322 | BC1220E5E83A0ED46E59EBF1 1323 | 1324 | 1325 | C681E6F4B041D71C99C82532 1326 | 1327 | fileRef 1328 | 3030E8146BDA082232EE5B10 1329 | isa 1330 | PBXBuildFile 1331 | 1332 | C76FA83398B12A4E973AD3BC 1333 | 1334 | includeInIndex 1335 | 1 1336 | isa 1337 | PBXFileReference 1338 | lastKnownFileType 1339 | text.xcconfig 1340 | name 1341 | Pods-ZRScrollableTabBar-ZRScrollableTabBar-Private.xcconfig 1342 | path 1343 | ../Pods-ZRScrollableTabBar-ZRScrollableTabBar/Pods-ZRScrollableTabBar-ZRScrollableTabBar-Private.xcconfig 1344 | sourceTree 1345 | <group> 1346 | 1347 | CB6D5EACFCCC6CB70EABEA84 1348 | 1349 | buildActionMask 1350 | 2147483647 1351 | files 1352 | 1353 | 2A1B7B59B80325ED46492113 1354 | 1355 | isa 1356 | PBXFrameworksBuildPhase 1357 | runOnlyForDeploymentPostprocessing 1358 | 0 1359 | 1360 | CD3BED8C7758DF632B04DCED 1361 | 1362 | buildActionMask 1363 | 2147483647 1364 | files 1365 | 1366 | 89E87975D5C6847A628A8693 1367 | 1368 | isa 1369 | PBXFrameworksBuildPhase 1370 | runOnlyForDeploymentPostprocessing 1371 | 0 1372 | 1373 | CDFCF2DDF941D96E0A428422 1374 | 1375 | buildConfigurations 1376 | 1377 | 70DF198E802445A317CABCDB 1378 | 634AB313C5BC7045C8525165 1379 | 1380 | defaultConfigurationIsVisible 1381 | 0 1382 | defaultConfigurationName 1383 | Release 1384 | isa 1385 | XCConfigurationList 1386 | 1387 | D971136CA3D8C8EF555C7526 1388 | 1389 | children 1390 | 1391 | F17BA02A89C381C8E871E2F9 1392 | B481123D95ED45694AB684FD 1393 | 967D37A6731F1A26C495CC5B 1394 | 53810F3F65F3385781D5C99B 1395 | 1DAD045C5DB49F3B31F67783 1396 | C76FA83398B12A4E973AD3BC 1397 | B26945FF60D0CDC9814BD957 1398 | 2186BA1D201D072931527D99 1399 | 1400 | isa 1401 | PBXGroup 1402 | name 1403 | Support Files 1404 | path 1405 | Example/Pods/Target Support Files/Pods-Tests-ZRScrollableTabBar 1406 | sourceTree 1407 | <group> 1408 | 1409 | DF6F73778DC63EF62AFE0379 1410 | 1411 | buildSettings 1412 | 1413 | PRODUCT_NAME 1414 | $(TARGET_NAME) 1415 | SDKROOT 1416 | iphoneos 1417 | SKIP_INSTALL 1418 | YES 1419 | WRAPPER_EXTENSION 1420 | bundle 1421 | 1422 | isa 1423 | XCBuildConfiguration 1424 | name 1425 | Debug 1426 | 1427 | E0145412B72868740196EA70 1428 | 1429 | includeInIndex 1430 | 1 1431 | isa 1432 | PBXFileReference 1433 | lastKnownFileType 1434 | sourcecode.c.h 1435 | path 1436 | Pods-Tests-environment.h 1437 | sourceTree 1438 | <group> 1439 | 1440 | E0AC861BD38929D9410E465F 1441 | 1442 | includeInIndex 1443 | 1 1444 | isa 1445 | PBXFileReference 1446 | lastKnownFileType 1447 | text.xcconfig 1448 | path 1449 | Pods-ZRScrollableTabBar.release.xcconfig 1450 | sourceTree 1451 | <group> 1452 | 1453 | E5ECFFC892858BB45D6384CB 1454 | 1455 | buildActionMask 1456 | 2147483647 1457 | files 1458 | 1459 | FC02427FF56025B6B1583BB1 1460 | 1461 | isa 1462 | PBXSourcesBuildPhase 1463 | runOnlyForDeploymentPostprocessing 1464 | 0 1465 | 1466 | E64A47208578BA4023B197C5 1467 | 1468 | isa 1469 | PBXTargetDependency 1470 | name 1471 | ZRScrollableTabBar 1472 | target 1473 | BC1220E5E83A0ED46E59EBF1 1474 | targetProxy 1475 | F6D0591D9FB657CF0E14435C 1476 | 1477 | F04CE0A69DBECC3D7FD4A2E0 1478 | 1479 | explicitFileType 1480 | archive.ar 1481 | includeInIndex 1482 | 0 1483 | isa 1484 | PBXFileReference 1485 | path 1486 | libPods-Tests.a 1487 | sourceTree 1488 | BUILT_PRODUCTS_DIR 1489 | 1490 | F17BA02A89C381C8E871E2F9 1491 | 1492 | includeInIndex 1493 | 1 1494 | isa 1495 | PBXFileReference 1496 | lastKnownFileType 1497 | text.xcconfig 1498 | path 1499 | Pods-Tests-ZRScrollableTabBar.xcconfig 1500 | sourceTree 1501 | <group> 1502 | 1503 | F2F02DD346765AC0EBD35716 1504 | 1505 | isa 1506 | PBXTargetDependency 1507 | name 1508 | Pods-ZRScrollableTabBar-ZRScrollableTabBar 1509 | target 1510 | 746F4E95B9FD089D7DD091D4 1511 | targetProxy 1512 | 199E498EE58AA7D48510DDB1 1513 | 1514 | F60CA6A7E8B389DA50653CE3 1515 | 1516 | includeInIndex 1517 | 1 1518 | isa 1519 | PBXFileReference 1520 | lastKnownFileType 1521 | text 1522 | path 1523 | Pods-Tests-acknowledgements.markdown 1524 | sourceTree 1525 | <group> 1526 | 1527 | F6D0591D9FB657CF0E14435C 1528 | 1529 | containerPortal 1530 | C4A2F7BBB96B97E7FD8E2FC4 1531 | isa 1532 | PBXContainerItemProxy 1533 | proxyType 1534 | 1 1535 | remoteGlobalIDString 1536 | BC1220E5E83A0ED46E59EBF1 1537 | remoteInfo 1538 | ZRScrollableTabBar 1539 | 1540 | F826166D3B6E1A4B8F3155D4 1541 | 1542 | includeInIndex 1543 | 1 1544 | isa 1545 | PBXFileReference 1546 | lastKnownFileType 1547 | text.script.sh 1548 | path 1549 | Pods-ZRScrollableTabBar-resources.sh 1550 | sourceTree 1551 | <group> 1552 | 1553 | F9C850B4D93406C56A9D48D7 1554 | 1555 | buildConfigurations 1556 | 1557 | AF884E8BCDACB96646183FE7 1558 | 8C3069A6AC55B38BF59D75EB 1559 | 1560 | defaultConfigurationIsVisible 1561 | 0 1562 | defaultConfigurationName 1563 | Release 1564 | isa 1565 | XCConfigurationList 1566 | 1567 | FB93B2A9808E082D29BE41A6 1568 | 1569 | buildActionMask 1570 | 2147483647 1571 | files 1572 | 1573 | isa 1574 | PBXResourcesBuildPhase 1575 | runOnlyForDeploymentPostprocessing 1576 | 0 1577 | 1578 | FBB466E96547E52BEE8E6236 1579 | 1580 | includeInIndex 1581 | 1 1582 | isa 1583 | PBXFileReference 1584 | lastKnownFileType 1585 | text.xcconfig 1586 | path 1587 | Pods-ZRScrollableTabBar.debug.xcconfig 1588 | sourceTree 1589 | <group> 1590 | 1591 | FC02427FF56025B6B1583BB1 1592 | 1593 | fileRef 1594 | B26945FF60D0CDC9814BD957 1595 | isa 1596 | PBXBuildFile 1597 | 1598 | FDEB38B50C58F4A7174C01C1 1599 | 1600 | includeInIndex 1601 | 1 1602 | isa 1603 | PBXFileReference 1604 | lastKnownFileType 1605 | text.xcconfig 1606 | path 1607 | Pods-Tests.release.xcconfig 1608 | sourceTree 1609 | <group> 1610 | 1611 | FF2214C35CFC7BC1FE89850C 1612 | 1613 | baseConfigurationReference 1614 | C76FA83398B12A4E973AD3BC 1615 | buildSettings 1616 | 1617 | ALWAYS_SEARCH_USER_PATHS 1618 | NO 1619 | COPY_PHASE_STRIP 1620 | YES 1621 | DSTROOT 1622 | /tmp/xcodeproj.dst 1623 | GCC_PRECOMPILE_PREFIX_HEADER 1624 | YES 1625 | GCC_PREFIX_HEADER 1626 | Target Support Files/Pods-ZRScrollableTabBar-ZRScrollableTabBar/Pods-ZRScrollableTabBar-ZRScrollableTabBar-prefix.pch 1627 | INSTALL_PATH 1628 | $(BUILT_PRODUCTS_DIR) 1629 | IPHONEOS_DEPLOYMENT_TARGET 1630 | 7.1 1631 | OTHER_CFLAGS 1632 | 1633 | -DNS_BLOCK_ASSERTIONS=1 1634 | $(inherited) 1635 | 1636 | OTHER_CPLUSPLUSFLAGS 1637 | 1638 | -DNS_BLOCK_ASSERTIONS=1 1639 | $(inherited) 1640 | 1641 | OTHER_LDFLAGS 1642 | 1643 | OTHER_LIBTOOLFLAGS 1644 | 1645 | PRODUCT_NAME 1646 | $(TARGET_NAME) 1647 | PUBLIC_HEADERS_FOLDER_PATH 1648 | $(TARGET_NAME) 1649 | SDKROOT 1650 | iphoneos 1651 | SKIP_INSTALL 1652 | YES 1653 | VALIDATE_PRODUCT 1654 | YES 1655 | 1656 | isa 1657 | XCBuildConfiguration 1658 | name 1659 | Release 1660 | 1661 | 1662 | rootObject 1663 | C4A2F7BBB96B97E7FD8E2FC4 1664 | 1665 | 1666 | --------------------------------------------------------------------------------