Coder Social home page Coder Social logo

vhboommenubutton's Introduction

VHBoomMenuButton

Developer Cocoapods Lisense

2.0.0 Comes Finally

After the version 2.0.0 has been published on Android platform, I started developing the new version for BMB on iOS platform. To be honest, it's not easy for me as a newbie in iOS-developing. I learned the Swift language to provide a Swift version of BMB and added some new features which can be found in Wiki.

And now, just enjoy BMB.

Pods

Swift

target 'Your Target Name' do
  pod "VHBoomMenuButton/Swift"
  use_frameworks!
end

Objective C

target 'Your Target Name' do
  pod "VHBoomMenuButton/ObjC"
  use_frameworks!
end

Wiki

Check the wiki to use BMB.

Documentation Chapters

  1. Basic Usage
    How to use BMB in just several lines of code?
  2. Simple Circle Button
    Add simple circle buttons with just an image for each to BMB.
  3. Text Inside Circle Button
    Add text inside circle buttons with a text and image inside for each to BMB.
  4. Text Outside Circle Button
    Add text outside circle buttons with a text outside and an image inside for each to BMB.
  5. Ham Button
    Add ham buttons with with a text, sub-text and image inside for each to BMB.
  6. Share Style
    Make a share-style BMB.
  7. Custom Position
    Customize the number and positions of pieces and boom-buttons.
  8. Button Place Alignments
    Place all the buttons to anywhere on screen.
  9. Different Ways to Boom
    Different animations when the buttons boom or re-boom.
  10. Ease Animations for Buttons
    Use different and cute ease-animations for buttons.
  11. Different Order for Buttons
    Different order enum for boom-buttons.
  12. Other Animations Attributes for Buttons
    Delay, duration, rotate-degrees, frames...
  13. Click Event and Listener
    Listener for clicking each button or animation-states.
  14. Control BMB
    Boom or re-boom BMB programmatically.
  15. Use BMB in Navigation Bar
    How to put BMB in navigation bar?
  16. Use BMB in Table View
    Attentions when you need a BMB in table-view.
  17. Attributes for BMB or Pieces on BMB
    How to change the size or margins of dots on BMB?
  18. Cache Optimization & Boom Area
    What if I want BMB to boom in just its parent-view?
  19. Change Boom Buttons Dynamically
    Change boom-buttons dynamically.
  20. Blur Background & Tip
    Blur background when booming.
  21. Fade Views
    Add faded views on BMB.
  22. Structure of BMB
  23. Version History

Issues & Feedbacks

Try to tell me the bugs or enhancements about BMB, or contact me with [email protected] / [email protected]. Before doing that, having a careful read on readme, wiki and issues is really helpful.

vhboommenubutton's People

Contributors

nightonke avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vhboommenubutton's Issues

@IBInspectable in error with Xcode 9

I saw in the log that there is a fix for the next error:
@IBInspectable public var shadowPathRect: CGRect!

But, it seems that the fix was not upload to the GitHub repository.

Can you look that ?

Thanks

Issue with draggable floating icon

Hi,

This is a great demonstration of a boom button. I am using the "isDraggable" property of boom button(BoomMenuButton class), this property works on simulator but not working properly on physical device.

Can you please help me with the issue.

Thanks.

VHBoomDelegate in Swift 3

How to properly implement VHBoomDelegate in Swift?

I've tried override class func onBoomClicked(index: Int32) -> Void and override class func onBoomClicked(index: Int) and even with annotation @objc(onBoomClicked:) override class func onBoomClicked(index: Int)

XCode still says "Method doesn't override any method from its superclass"

Error "@IBInspectable"

i installed pod 'VHBoomMenuButton/Swift', '2.0.0' in xcode 9 with swift 4 and also #import <BoomMenuButton/BoomMenuButton.h> in Bridging File.But now i got two Error like "Property cannot be marked @IBInspectable " And "Property cannot be marked " in BoomMenuButton.swift FIle.

iPhone has denied to launch app

Hello

I'm new at iOS development so far. For now, i'm using Xcode 10.1 on MacBook Air'13 with apple developer id and iOS 12.1 on iPhone7. App is crashing when it is launched and displays the message "iPhone has denied to launch the app."

Previously i was using macOS High Sierra but now when I've updated to Mojave 10.14.1 and reinstalled Xcode 10.1, it's still showing the same error.
Moreover, I've tried all the other solutions available on Google but nothing is worth it!
Is there any way to cope with this problem?

IBInspectable error

I installed the library using CocoaPods. Here is my Podfile.

platform :ios, '9.0'

target 'BMBDemo' do
  use_frameworks!

  pod 'VHBoomMenuButton/Swift', '2.0.0'

end

It installs the project successfully but when I build it in Xcode 9.1, it fails with the following compile error.

/Users/Admin/Developer/Xcode Projects/Swift/BMBDemo/Pods/VHBoomMenuButton/VHBoomMenuButtonSwift/BoomMenuButton/BoomMenuButton.swift:536:31: Property cannot be marked @IBInspectable because its type cannot be represented in Objective-C

Here is a demo project demonstrating the issue.

Animation flickering

Hello,

while using this menu I encountered a strange animation flickering. For example when you open menu and then decide to close, you can see flickering button layers on top of the "pieces" (for example using CircleMenu).

Not Showing in iPhone 5s iOS 12 - Auto Layout

    var bmb = VHBoomMenuButton.init(frame: CGRect.init(x: 0, y: 0, width: 60, height: 60))
    bmb.buttonEnum = .ham
    bmb.piecePlaceEnum = .HAM_5
    bmb.buttonPlaceEnum = .HAM_5
    
    for _ in 0..<bmb.pieceNumber() {
        let builder = VHHamButtonBuilder.init()
        builder.normalImageName = "butterfly"
        builder.normalText = "Text"
        builder.normalSubText = "Sub Text"
        bmb.add(builder)
    }
    
    I added it but its not showing. When I use "bmb.boom()" screen lock. It already is not showing anything. 
 Swift 4

Simulating behavior of a simple button

In some cases, we need BoomMenuButton to behave as a simple button, i.e. don't display any animations.
After looking around in the code, I wasn't able to find a way to do that ๐Ÿ˜ซ.

I suggest that we adjust these two BoomDelegate methods from:

func boomMenuButtonWillBoom(boomMenuButton bmb: BoomMenuButton)
func boomMenuButtonWillReboom(boomMenuButton bmb: BoomMenuButton)

to

/// If delegate method returns `false` then boom won't even start
func boomMenuButtonWillBoom(boomMenuButton bmb: BoomMenuButton) -> Bool
/// If delegate method returns `false` then reboom won't start
func boomMenuButtonWillReboom(boomMenuButton bmb: BoomMenuButton) -> Bool

Not working on ipad for ios 12.0

The boommenu click functionality is not working on any ipad variation on ios 12.0 and onwards.
The logs show no errors and even the menu initialization happens smoothly.

Only the click functionality is not working hence no menu appears.

Failed to render auto layout

I got this error :

"Main.storyboard: error: IB Designables: Failed to render and update auto layout status for ProjectName (5gh-n2-sjS): dlopen(VHBoomMenuButton.framework, 1): no suitable image found..."

Main story board always crashes when i enable vhboommenubutton, what can i do?

How do you grab clicked button's frame?

I've implemented BMB successfully in my app. What I'd like to do is capture the clicked button's frame as the origination for an animated view controller transition.

I've implemented BoomDelegate.

func boomMenuButton(_ bmb: BoomMenuButton, didClickBoomButtonOfBuilder builder: BoomButtonBuilder, at index: Int) {
        loggingPrint(bmb.frame)
        loggingPrint(builder.imageFrame)
        
        let rect = builder.imageFrame
        let currentRect = convert(rect, to: bmb.superview)
        
        loggingPrint(currentRect)
    }
}

This delegate method returns the following in the console:

HeaderView.swift boomMenuButton(:didClickBoomButtonOfBuilder:at:)[315]: (317.0, 8.0, 50.0, 50.0)
HeaderView.swift boomMenuButton(
:didClickBoomButtonOfBuilder:at:)[316]: (10.0, 10.0, 30.0, 30.0)
HeaderView.swift boomMenuButton(_:didClickBoomButtonOfBuilder:at:)[317]: (10.0, 10.0, 30.0, 30.0)

This return is not giving me anything useful. Any help would be appreciated. Thank you.

crash issue in Xcode 10

I updated my Xcode9 to xcode10, My app is crashing when I tap on button.

App is crashing here

assert(bmb.buttonEnum != .unknown, "[BMB] Unknown button enum!")
assert(bmb.piecePlaceEnum.rawValue < PiecePlaceEnum.count, "[BMB] Unknown piece-place-enum!")
assert(bmb.buttonPlaceEnum.rawValue < ButtonPlaceEnum.count, "[BMB] Unknown button-place-enum!")
assert(bmb.boomEnum.rawValue < BoomEnum.count, "[BMB] Unknown boom-enum!")
assert(builders.count > 0, "[BMB] Empty builders!")

Boommenu open at startup

Great work, thank you!

how can I do to boom at startup?

i mean call boom() method on viewDidLoad. Any help?

'shared' is unavailable: Use view controller based solutions where appropriate instead.

Hello
I am using this component easily but i added OneSignal component to my Xcode project and get this error:

'shared' is unavailable: Use view controller based solutions where appropriate instead.

in BoomMenuButton.swift in line 1504.

in this method:

    private func parentView() -> UIView? {
        if isBoomInWholeScreen {
            if let delegate = UIApplication.shared.delegate {
                if let window = delegate.window {
                    return window!
                } else {
                    return nil
                }
            } else {
                return nil
            }
        } else {
            return superview
        }
    }

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.