Need help with FloatingButton?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

exyte
452 Stars 32 Forks MIT License 15 Commits 0 Opened issues

Description

Easily customizable floating button menu created with SwiftUI

Services available

!
?

Need anything else?

Contributors list

FloatingButton

Easily customizable floating button menu created with SwiftUI


We are a development agency building phenomenal apps.

Travis CI Version Carthage Compatible License Platform Twitter

Usage

  1. Create main button view and a number of submenu buttons — both should be cast to
    AnyView
    type.
  2. Pass both to
    FloatingButton
    constructor:
   FloatingButton(mainButtonView: mainButton, buttons: buttons)
  1. You may also pass a binding which will determine if the menu is currently open. You may use this to close the menu on any submenu button tap for example.
    swift
    FloatingButton(mainButtonView: mainButton, buttons: buttons, isOpen: $isOpen)
    
  2. Chain
    .straight()
    or
    .circle()
    to specify desired menu type.
  3. Chain whatever you like afterwards. For example: ```swift FloatingButton(mainButtonView: mainButton, buttons: textButtons) .straight() .direction(.top) .alignment(.left) .spacing(10) .initialOffset(x: -1000) .animation(.spring())

    FloatingButton(mainButtonView: mainButton2, buttons: buttonsImage.dropLast()) .circle() .startAngle(3/2 * .pi) .endAngle(2 * .pi) .radius(70) ```

Universal options

spacing
- space between submenu buttons
initialScaling
- size multiplyer for submenu buttons when the menu is closed
initialOffset
- offset for submenu buttons when the menu is closed
initialOpacity
- opacity for submenu buttons when the menu is closed
animation
- custom SwiftUI animation like
Animation.easeInOut()
or
Animation.spring()

delays
- delay for each submenu button's animation start

Straight menu only options

direction
- position of submenu buttons relative to main menu button
alignment
- alignment of submenu buttons relative to main menu button

Circle only options

startAngle

endAngle

radius

Examples

To try out the FloatingButton examples: 1. Clone the repo

git clone [email protected]:exyte/FloatingButton.git
. 2. Open terminal and run
cd /Example
. 3. Run
pod install
to install all dependencies. 4. Run
xed .
to open project in the Xcode. 5. Try it!

Installation

CocoaPods

pod 'FloatingButton'

Carthage

github "Exyte/FloatingButton"

Manually

Drop FloatingButton.swift into your project.

Requirements

  • iOS 13+ / watchOS 13+ / tvOS 13+ / macOS 10.15+
  • Xcode 11+

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.