Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Ramotion/preview-transition
:octocat: PreviewTransition is a simple preview gallery UI controller with animated tranisitions. Swift UI library made by @Ramotion
https://github.com/Ramotion/preview-transition
ios library swift
Last synced: 2 months ago
JSON representation
:octocat: PreviewTransition is a simple preview gallery UI controller with animated tranisitions. Swift UI library made by @Ramotion
- Host: GitHub
- URL: https://github.com/Ramotion/preview-transition
- Owner: Ramotion
- License: mit
- Created: 2016-04-04T12:28:00.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2020-04-06T07:00:09.000Z (almost 5 years ago)
- Last Synced: 2024-10-29T17:47:10.682Z (4 months ago)
- Topics: ios, library, swift
- Language: Swift
- Homepage: https://www.ramotion.com/preview-transition/
- Size: 30.4 MB
- Stars: 2,083
- Watchers: 64
- Forks: 205
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-ios - preview-transition - PreviewTransition is a simple preview gallery controller (UI / Table View / Collection View)
- awesome-ios-star - preview-transition - PreviewTransition is a simple preview gallery controller (UI / Table View / Collection View)
- awesome-ios - preview-transition - SPreviewTransition is a simple preview gallery UI controller with animated tranisitions. Swift UI library. [•](https://raw.githubusercontent.com/Ramotion/preview-transition/master/preview-transition.gif) (Content / Controller)
README
PREVIEW TRANSITION
Preview Transition is a simple preview gallery UI controller with animated tranisitions
___
We specialize in the designing and coding of custom UI for Mobile Apps and Websites.
![]()
Stay tuned for the latest updates:
![]()
[](http://twitter.com/Ramotion)
[](https://travis-ci.org/Ramotion/preview-transition.svg?branch=master)
[](https://github.com/Ramotion/preview-transition)
[](https://cocoapods.org/pods/PreviewTransition)
[](http://cocoapods.org/pods/PreviewTransition)
[](https://codebeat.co/projects/github-com-ramotion-preview-transition)
[](https://paypal.me/Ramotion)## About
This project is maintained by Ramotion, Inc.
We specialize in the designing and coding of custom UI for Mobile Apps and Websites.**Looking for developers for your project?**
This project is maintained by Ramotion, Inc. We specialize in the designing and coding of custom UI for Mobile Apps and Websites.## Requirements
- iOS 9.0+
- Xcode 9## Licence
Preview-transition is released under the MIT license.
See [LICENSE](./LICENSE) for details.## Installation
Just add the Source folder to your project or use [CocoaPods](https://cocoapods.org) like this:
``` ruby
pod "PreviewTransition"
```or [Carthage](https://github.com/Carthage/Carthage) users can simply add to their `Cartfile`:
```
github "Ramotion/preview-transition"```
## Usage
1) ``` import PreviewTransition ```
2) Create UITableViewController inherit, inheriting from ```PTTableViewController```
3) Add UITableViewDelegate methods
```swift
public override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return
}public override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
return tableView.dequeueReusableCellWithIdentifier(, forIndexPath: indexPath)
}
```4) add a ParallaxCell
storyboards:
create a cell and inherit from ```ParallaxCell```; don't forget set the identifier ``````or programmatically:
register a cell in viewDidLoad ```tableView.registerClass(ParallaxCell, forCellReuseIdentifier:)```5) set cell height
6) create image names (image sizes must be equal to screen size or bigger)
```swift
let images = [image_name, image_name, image_name, image_name, image_name] // image names
```7) set image and text for ParallaxCell
```swift
public override func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) {guard let cell = cell as? ParallaxCell else {
return
}let imageName = images[indexPath.row]
if let image = UIImage(named: imageName) {
cell.setImage(image, title: )
}
}
```
your tableViewController should look like [DemoTableViewController](https://github.com/Ramotion/preview-transition/blob/master/PreviewTransitionDemo/PreviewTransitionDemo/ViewController/DemoTableViewController.swift)Method ```public override func tableView(tableView: didSelectRowAtIndexPath indexPath:)``` we will add later. (step 10)
8) Create UIViewController, inheriting from ```PTDetailViewController```
9) Add action for backButton and call ```popViewController()```
```swift
func backButtonHandler() {
popViewController()
}
```10) Push this UIViewController in UITableViewController. Add method
```swift
public override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {// create viewController
let = storyboard?.instantiateViewControllerWithIdentifier()
if case let viewController as = viewController {
pushViewController(viewController)
}
}
```11) Configure UINavigationBar
```swift
// transparent background
UINavigationBar.appearance().setBackgroundImage(UIImage(), forBarMetrics: .Default)
UINavigationBar.appearance().shadowImage = UIImage()
UINavigationBar.appearance().translucent = true
UINavigationBar.appearance().tintColor = .whiteColor()// set font
if let font = UIFont(name: , size: 18) {
UINavigationBar.appearance().titleTextAttributes = [
NSForegroundColorAttributeName : UIColor.whiteColor(),
NSFontAttributeName : font
]
}
```## 📄 License
Preview Transition is released under the MIT license.
See [LICENSE](./LICENSE) for details.This library is a part of a selection of our best UI open-source projects.
If you use the open-source library in your project, please make sure to credit and backlink to https://www.ramotion.com/
## 📱 Get the Showroom App for iOS to give it a try
Try this UI component and more like this in our iOS app. Contact us if interested.