diff --git a/CHANGELOG.md b/CHANGELOG.md index d83fd2f..12ecf7f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,41 @@ # Change Log All notable changes to XLPagerTabStrip will be documented in this file. -### [1.0.0](https://github.com/xmartlabs/XLPagerTabStrip/releases/tag/1.0.0) +### [4.0.0](https://github.com/xmartlabs/XLPagerTabStrip/releases/tag/4.0.0) -* This is the initial version. +* Base code migration from obj-c to swift. +* Removed XL prefix from all types. -[xmartlabs]: https://xmartlabs.com +### [3.0.0](https://github.com/xmartlabs/XLPagerTabStrip/releases/tag/3.0.0) + +* `selectedBarAlignment` added to `XLButtonBarView`. +* `shouldCellsFillAvailableWidth` added to `XLButtonBarView`. +* Bug fixes and Stability improvements. + +### [2.0.0](https://github.com/xmartlabs/XLPagerTabStrip/releases/tag/v2.0.0) + +* Added ability to change look and feel of selected tab. +* `changeCurrentIndexProgressiveBlock` added to `XLButtonBarPagerTabStripViewController`. +* `changeCurrentIndexBlock` added to `XLButtonBarPagerTabStripViewController`. +* indxWasChanged parameter was added to `-(void)pagerTabStripViewController:(XLPagerTabStripViewController *)pagerTabStripViewController updateIndicatorFromIndex:(NSInteger)fromIndex toIndex:(NSInteger)toIndex withProgressPercentage:(CGFloat)progressPercentage indexWasChanged:(BOOL)indexWasChanged;` +* Bug Fix Issue #45: When the current tab is tapped by the user, and later swiping to another tab, the indicator now changes as expected. +* Bug Fix: When scrolling between tabs with progressive indicator, the indicator now scrolls swiftly. It used to jump for an instant. +* Bug Fix Issue #54: Twitter PagerTabStrip wasn't loading the navigation title correctly. +* Bug Fix Issue #32: Demo for Nav Button Bar Example fix. +* Bug Fix Issue #32: Twitter Pager white dots that mark which tab is currently selected is non selectable now. +* Bug Fix Issue #22: moveToViewControllerAtIndex: in viewDidLoad or viewWillAppear is not reflected in buttonBarView. + +### [1.1.1](https://github.com/xmartlabs/XLPagerTabStrip/releases/tag/v1.1.1) + +* Nav Button example added +* Support for iOS 7.0 and above + +### [1.1.0](https://github.com/xmartlabs/XLPagerTabStrip/releases/tag/v1.1.0) + +* Twitter pager added +* Bug fixes and stability improvements + +### [1.0.0](https://github.com/xmartlabs/XLPagerTabStrip/releases/tag/v1.0.0) + +* Initial release diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e69de29..1b058b5 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -0,0 +1,61 @@ +Contributing Guidelines +-------------------------------------------------- + +This document provides general guidelines about how to contribute to the project. Keep in mind these important things before you start contributing. + +### Asking Questions + +We do not use github issues for general library support. We think this questions should be posted on stack overflow using [XlPagerTabStrip](http://http://stackoverflow.com/questions/tagged/xlpagertabstrip) tag. + +### Reporting issues + +* Use [github issues](https://github.com/xmartlabs/XLPagerTabStrip/issues) to report a bug. +* Before creating a new issue: + * Make sure you are using the [latest release](https://github.com/xmartlabs/XLPagerTabStrip/releases). + * Check if the issue was [already reported or fixed](https://github.com/xmartlabs/XLPagerTabStrip/issues?utf8=%E2%9C%93&q=is%3Aissue). Notice that it may not be released yet. + * If you found a match add a brief comment "I have the same problem" or "+1". This helps prioritize the issues addressing the most common and critical first. If possible add additional information to help us reproduce and fix the issue. Please use your best judgement. +* Reporting issues: + * Please include the following information to help maintainers to fix the problem faster: + * Xcode version you are using. + * iOS version you are targeting. + * Full Xcode console output of stack trace or code compilation error. + * Any other additional detail you think it would be useful to understand and solve the problem. + + +### Pull requests + +The easiest way to start contributing is searching open issues by `help wanted` tag. We also add a `difficulty` tag (difficulty: easy, difficulty: moderate, difficulty: hard) in order to give an idea of how complex it can be to implement the feature according maintainers project experience. + +* Add test coverage to the feature or fix. We only accept new feature pull requests that have related test coverage. This allows us to keep the library stable as we move forward. +* Remember to document the new feature. We do not accept new feature pull requests without its associated documentation. +* In case of a new feature please update the example project showing the feature. +* Please only one fix or feature per pull request. This will increase the chances your feature will be merged. + + +###### Suggested git workflow to contribute + +1. Fork the XLPagerTabStrip repository. +2. Clone your forked project into your developer machine: `git clone git@github.com:/XLPagerTabStrip.git` +3. Add the original project repo as upstream repository in your forked project: `git remote add upstream git@github.com:xmartlabs/XLPagerTabStrip.git` +4. Before starting a new feature make sure your forked master branch is synchronized upstream master branch. Considering you do not mere your pull request into master you can run: `git checkout master` and then `git pull upstream master`. Optionally `git push origin master`. +5. Create a new branch. Note that the starting point is the upstream master branch HEAD. `git checkout -b my-feature-name` +6. Stage all your changes `git add .` and commit them `git commit -m "Your commit message"` +7. Make sure your branch is up to date with upstream master, `git pull --rebase upstream master`, resolve conflicts if necessary. This will move your commit to the top of git stack. +8. Squash your commits into one commit. `git rebase -i HEAD~6` considering you did 6 commits. +9. Push your branch into your forked remote repository. +10. Create a new pull request adding any useful comment. + + +###### Code style and conventions + +We try to follow our [swift style guide](https://github.com/xmartlabs/Swift-Style-Guide). Following it is not strictly necessary to contribute and to have a pull request accepted but project maintainers try to follow it. We would love to hear your ideas to improve our code style and conventions. Feel free to contribute. + + +### Feature proposal + +We would love to hear your ideas and make a discussions about it. + +* Use github issues to make feature proposals. +* We use `type: feature request` label to mark all [feature request issues](https://github.com/xmartlabs/XLPagerTabStrip/labels/type%3A%20feature%20request). +* Before submitting your proposal make sure there is no similar feature request. If you found a match feel free to join the discussion or just add a brief "+1" if you think the feature is worth implementing. +* Be as specific as possible providing a precise explanation of feature request so anyone can understand the problem and the benefits of solving it. diff --git a/README.md b/README.md index 8cb4cb2..a539ff2 100644 --- a/README.md +++ b/README.md @@ -5,26 +5,42 @@ Platform iOS Swift 2 compatible Carthage compatible -CocoaPods compatible +CocoaPods compatible License: MIT

-By [Xmartlabs SRL](http://xmartlabs.com). +Made with ❤️ By [Xmartlabs](http://xmartlabs.com). -## Inroduction +Android [PagerTabStrip](http://developer.android.com/reference/android/support/v4/view/PagerTabStrip.html) for iOS! -XLPagerTabStrip is a library to ....... +**XLPagerTabStrip** is a *Container View Controller* that allows us to switch easily among a collection of view controllers. Pan gesture can be used to move on to next or previous view controller. It shows a interactive indicator of the current, previous, next child view controllers. - +![Screenshot of native Calendar Event Example](XLPagerTabStrip/Demo/PagerSlidingTabStrip.gif) ## Usage +In order to use the library we just need to provide the list of child view controllers to show, these view controller should provide the information (title or image) to show in the associated indicator. + +Let's see how to do this: + +The fist step is select the way we want to show the indicator. The library provides As you may have noticed the library provides differents ways to show + +Using XLPagerTabStrip is as easy as following these steps: + +1. Import the library + ```swift import XLPagerTabStrip -.. -. ``` +2. + + + + + + + ## Requirements * iOS 8.0+ @@ -55,7 +71,7 @@ You can also experiment and learn with the *XLPagerTabStrip Playground* which is To install XLPagerTabStrip, simply add the following line to your Podfile: ```ruby -pod 'XLPagerTabStrip', '~> 1.0' +pod 'XLPagerTabStrip', '~> 4.0' ``` #### Carthage diff --git a/XLPagerTabStrip.podspec b/XLPagerTabStrip.podspec index e4b3b27..d94c73e 100644 --- a/XLPagerTabStrip.podspec +++ b/XLPagerTabStrip.podspec @@ -1,15 +1,15 @@ Pod::Spec.new do |s| s.name = "XLPagerTabStrip" - s.version = "1.0.0" + s.version = "4.0.0" s.summary = "A short description of XLPagerTabStrip." s.homepage = "https://github.com/xmartlabs/XLPagerTabStrip" s.license = { type: 'MIT', file: 'LICENSE' } - s.author = { "Xmartlabs SRL" => "swift@xmartlabs.com" } + s.author = { "Martin Barreto" => "martin@xmartlabs.com" } s.source = { git: "https://github.com/xmartlabs/XLPagerTabStrip.git", tag: s.version.to_s } s.social_media_url = 'https://twitter.com/xmartlabs' s.ios.deployment_target = '8.0' s.requires_arc = true s.ios.source_files = 'Sources/**/*' - # s.ios.frameworks = 'UIKit', 'Foundation' - # s.dependency 'Eureka', '~> 1.0' + s.ios.frameworks = 'UIKit', 'Foundation' + s.resource_bundles = { 'XLPagerTabStrip' => ['Sources/ButtonCell.xib'] } end