Home

Awesome

<img src="./Images/header.png" width="400" alt="SwiftFortuneWheel"/>

CI Status Swift Version Version Support Platform Documentation

The ultimate spinning wheel control that supports dynamic content and rich customization.

Main Features
๐ŸตDynamic content, supports texts, images, and lines
๐ŸŽฏAdaptive text size with support multiline, alignment and line break mode
๐ŸŽ‡Supports background Image for each Slice (sector)
๐ŸงฎSupports vertical and horizontal text orientation
๐ŸŒˆAppearance customization
๐Ÿ”ŠSounds and haptic feedback
๐ŸŒ‹Collision callbacks and effects
๐ŸŽจDrawn and animated using CoreGraphics, CoreAnimations
๐Ÿ”‹High performance, low memory usage

Layout Preview

<img src="./Images/screens/simple.png" width="250"/><img src="./Images/screens/spike.png" width="250"/>

<img src="./Images/screens/podium.png" width="250"/><img src="./Images/screens/jackpot.png" width="250"/>

Taken from example projects

Dynamic Content and Rotation Preview

<img src="./Images/layout.gif" width="250"/><img src="./Images/rotation.gif" width="250"/>

Taken from example projects

Collision Effect Preview

<img src="./Images/collision_01.gif" width="250"/><img src="./Images/collision_02.gif" width="235"/>

Taken from example projects

Screenshots

<details> <summary>from iOS Example Project</summary> <img src="./Images/screenshots/1.png" width="250"/><img src="./Images/screenshots/2.png" width="250"/><img src="./Images/screenshots/3.png" width="250"/><img src="./Images/screenshots/8.png" width="250"/><img src="./Images/screenshots/9.png" width="250"/><img src="./Images/screenshots/4.png" width="250"/><img src="./Images/screenshots/5.png" width="250"/><img src="./Images/screenshots/6.png" width="250"/><img src="./Images/screenshots/7.png" width="250"/> </details>
<details> <summary>from macOS Example Project</summary> <img src="./Images/screenshots/macos.png" width="450"/> </details>
<details> <summary>from tvOS Example Project</summary> <img src="./Images/screenshots/tvos.png" width="550"/> </details>

Documentation

Installation

When you are ready to install, follow the Installation Guide.

API Documentation

You can find <a href="https://sh-khashimov.github.io/SwiftFortuneWheel/" target="_blank">the docs here</a>.

Documentation is generated with jazzy and hosted on GitHub-Pages.

<a name="h_requirements"></a>

Requirements

App nameSwiftXcodePlatforms
1.1.4 - current versionSwift 5.xXcode 14iOS 9.0 / macOS 10.13 / tvOS 9.0
1.1.x - 1.4.3Swift 5.0Xcode 11iOS 9.0 / macOS 10.11 / tvOS 9.0
0.x.x - 1.0.xSwift 5.0Xcode 11iOS 9.0

Migration

Changelog

See changelog here

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

Author

Sherzod Khashimov

License

MIT