Floating Action Button for Android based on Material Design specification

Overview

FloatingActionButton

Yet another library for drawing Material Design promoted actions.

Features

  • Support for normal 56dp and mini 40dp buttons.

    Demo

  • Customizable background colors for normal and pressed states and icon drawable.

    Demo

  • Convenience AddFloatingActionButton class with plus icon drawn in code.

  • FloatingActionsMenu which can be expanded/collapsed to reveal multiple actions.

    Demo

  • Optional labels for buttons in FloatingActionsMenu.

    Demo

Usage

Just add the dependency to your build.gradle:

dependencies {
    compile 'com.getbase:floatingactionbutton:1.10.1'
}

To see how the buttons are added to your xml layouts, check the sample project.

Caveats

The API is extremely limited at the moment. It solves few select use cases in the app I'm working on.

Unlike some other FloatingActionButton libraries this library doesn't implement "quick return" pattern, i.e. hiding the button on scrolling down and showing it on scrolling up. That's intentional, I think that should be responsibility of another component, not the button itself.

This library is minSdkVersion=14 and if that changes, the version number will be increased, not decreased. It means that Honeycomb, Gingerbread or - gods forbid - Froyo, won't ever be supported. I won't even consider merging pull requests fully implementing support for older versions. We need to move on as Android community and focus on delivering value for 95% of users of modern Android OS instead of jumping through burning hoops to support ancient devices with ancient OS.

If you really require support for older Android versions, str4d maintains a version of this library with minSdkVersion=4.

Credits

I used FloatingActionButton library by Oleksandr Melnykov as a base for development.

Copyright and license

Copyright 2014 Zendesk

Licensed under the Apache License, Version 2.0

Comments
  • Make labels clickable

    Make labels clickable

    After showing my app to an handful of tester, I realized that most of them wanted to click on the label itself instead of the FloatingActionButton attached to it.

    It would be nice to handle it with the FloatingActionButton click/touch listener.

    help wanted 
    opened by lynfogeek 13
  • Added opportunity to set a custom icon on the menu button.

    Added opportunity to set a custom icon on the menu button.

    I changed the menu class, so that you can set a own icon for the menu button. If the menu is expanded the icon transforms into a 'x' to indicate the close action. Maybe this helps you with this issue: https://github.com/futuresimple/android-floating-action-button/issues/56

    I also added the icon function to one of the menus in the sample. Feel free to give me any feedback about this.

    opened by Poeschl 12
  • Nested FAB's in FAM won't show titles

    Nested FAB's in FAM won't show titles

    Hello,

    i try to put labels/titles beside my FAB's which are placed in a FAM just like in Google Inbox. Do I have a mistake in my xml or is this a bug? My labels won't show up.

    Thank you for this awesome library!

    <com.getbase.floatingactionbutton.FloatingActionsMenu
        android:id="@+id/party_menu"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_marginRight="24dp"
        android:layout_marginEnd="24dp"
        android:layout_marginBottom="24dp"
        app:fab_addButtonPlusIconColor="@android:color/white"
        app:fab_addButtonColorNormal="@color/accent"
        app:fab_addButtonColorPressed="@color/accent_light"
        app:fab_addButtonSize="normal">
    
        <com.getbase.floatingactionbutton.FloatingActionButton
            android:id="@+id/party_stopper"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fab_icon="@drawable/ic_action_done"
            app:fab_title="Stop the party"
            app:fab_size="mini"/>
    
        <com.getbase.floatingactionbutton.FloatingActionButton
            android:id="@+id/party_round_adder"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fab_icon="@drawable/ic_action_add"
            app:fab_title="Next go round!"
            app:fab_size="mini"/>
    
    </com.getbase.floatingactionbutton.FloatingActionsMenu>
    
    opened by davemaul 11
  • Background shadow animation

    Background shadow animation

    I'm using FloatingActionsMenu.OnFloatingActionsMenuUpdateListener(), but the problem i'm facing is, when i use this Listener it spoils the nice flow of animation in the floating buttons, any workaround to make the animation fluid....

    opened by devishankar 11
  • Label not visible even after setting by fab_title

    Label not visible even after setting by fab_title

    <com.getbase.floatingactionbutton.FloatingActionsMenu
        android:id="@+id/action_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|right"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginLeft="16dp"
        android:layout_marginStart="16dp"
        fab:fab_addButtonColorNormal="@color/brand_blue"
        fab:fab_addButtonColorPressed="@color/white"
        fab:fab_addButtonPlusIconColor="@color/white"
        fab:fab_labelsPosition="left">
    
        <com.getbase.floatingactionbutton.FloatingActionButton
            android:id="@+id/send_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            fab:fab_colorNormal="@color/brand_blue"
            fab:fab_title="Action A"
            fab:fab_colorPressed="@color/white"/>
    
        <com.getbase.floatingactionbutton.FloatingActionButton
            android:id="@+id/redeem_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            fab:fab_colorNormal="@color/brand_blue"
            fab:fab_title="Action with a very long name that won\'t fit on the screen"
            fab:fab_colorPressed="@color/white"/>
    
    </com.getbase.floatingactionbutton.FloatingActionsMenu>
    
    opened by irtefa 10
  • How to put my own views inside the

    How to put my own views inside the "FloatingActionsMenu" ?

    I've tried doing so, but then the view itself got centered with the items, so instead of this:

    ...AAAAA ........BBB ............C

    I got something like this:

    ...AAAAA .....BBB.. .......C....

    where C is the "add" button, and the others are the other views that appear above it when C is being clicked.

    I think I need to change the FloatingActionsMenu code on "onLayout" , on those lines:

    int addButtonLeft = r - l - mMaxButtonWidth + (mMaxButtonWidth - mAddButton.getMeasuredWidth()) / 2;

    child.layout(childX, childY, childX + child.getMeasuredWidth(), childY + child.getMeasuredHeight());

    What should I do? Can you please add this feature?

    opened by AndroidDeveloperLB 8
  • When setting custom drawable from code, icon is off center.

    When setting custom drawable from code, icon is off center.

    erqwm4wzgyvvdyfpfzdhbvdy4i_xuojyjimyodkqqfu w308-h1286-no

    I am opening this issue because I noticed this when trying to use this library in my app. Attached is the image of what is happening. I am using fonticon to generate the drawables. And because of that I have to set the drawable in code. The only time the image is sized right is if the size of the drawable is exactly 72dp. Any help would be appreciated.

    opened by scmyers11 8
  • Added gravity to button menu

    Added gravity to button menu

    Sets a gravity for children of the floating action menu. Children can gravitate to start, center or end of their corresponding x or y position, depending on the expand direction. The text labels automatically get changed position from left to right based on the gravity setting.

    How it looks for start and end: screenshot_2014-12-24-21-16-13

    opened by AlexKolpa 8
  • Unable to resolve dependency in build.gradle

    Unable to resolve dependency in build.gradle

    I tried adding the FAB button dependency using gradle compile
    'com.getbase:floatingactionbutton:1.10.0'
    but it did not work. I am using gradle 2.4 with Android Studio version 1.3. It keeps on giving failure to resolve dependency error. Please help.

    Thanks

    opened by pmk2429 7
  • Impossible to import the project in gradle. Error Code: 	-1073741819

    Impossible to import the project in gradle. Error Code: -1073741819

    Hello,

    I just added the project into Android studio, like many other libs with this line:

    compile 'com.getbase:floatingactionbutton:1.9.0'
    

    Error:Execution failed for task ':app:processDebugResources'.

    com.android.ide.common.internal.LoggedErrorException: Failed to run command: C:\Program Files (x86)\Android\sdk\build-tools\android-4.4W\aapt.exe package -f --no-crunch -I C:\Program Files (x86)\Android\sdk\platforms\android-21\android.jar -M C:\Users\MyApp\Google Drive\AndroidStudioProjects\MyApp\app\build\intermediates\manifests\full\debug\AndroidManifest.xml -S C:\Users\MyApp\Google Drive\AndroidStudioProjects\MyApp\app\build\intermediates\res\debug -A C:\Users\MyApp\Google Drive\AndroidStudioProjects\MyApp\app\build\intermediates\assets\debug -m -J C:\Users\MyApp\Google Drive\AndroidStudioProjects\MyApp\app\build\generated\source\r\debug -F C:\Users\MyApp\Google Drive\AndroidStudioProjects\MyApp\app\build\intermediates\res\resources-debug.ap_ --debug-mode --custom-package com.MyApp.MyApps -0 apk --output-text-symbols C:\Users\MyApp\Google Drive\AndroidStudioProjects\MyApp\app\build\intermediates\symbols\debug Error Code: -1073741819

    Any idea what could be wrong? Other libs are imported without any issue

    opened by ChristopheVersieux 7
  • NPE on click after go back to my screen.

    NPE on click after go back to my screen.

    Hi, im getting a NullPointerException after enter in fragment with a ActionsMenu, with actions added by code, go to other fragment, go back again and click in it to expand. This is the stacktrace..

    "java.lang.NullPointerException at android.view.View$3.get(View.java:18471) at android.view.View$3.get(View.java:18463) at android.animation.PropertyValuesHolder.setupSetterAndGetter(PropertyValuesHolder.java:492) at android.animation.ObjectAnimator.initAnimation(ObjectAnimator.java:459) at android.animation.ValueAnimator.setCurrentPlayTime(ValueAnimator.java:503) at android.animation.ValueAnimator.start(ValueAnimator.java:921) at android.animation.ValueAnimator.start(ValueAnimator.java:931) at android.animation.ObjectAnimator.start(ObjectAnimator.java:437) at android.animation.AnimatorSet.start(AnimatorSet.java:532) at floatingactionbutton.FloatingActionsMenu.expand(FloatingActionsMenu.java:491) at floatingactionbutton.FloatingActionsMenu.toggle(FloatingActionsMenu.java:483) at floatingactionbutton.FloatingActionsMenu$2.onClick(FloatingActionsMenu.java:166) at android.view.View.performClick(View.java:4475) at android.view.View$PerformClick.run(View.java:18786) at android.os.Handler.handleCallback(Handler.java:730) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:176) at android.app.ActivityThread.main(ActivityThread.java:5419) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:525) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1046) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:862) at dalvik.system.NativeStart.main(Native Method)"

    opened by rfermontero 7
  • Error inflating class com.getbase.floatingactionbutton.FloatingActionsMenu

    Error inflating class com.getbase.floatingactionbutton.FloatingActionsMenu

    Getting the following error with in production release and unable to trouble shoot since it is not in the dev environment.

    Device Brand: Huawei Model: Huawei Enjoy 9s Orientation: Portrait RAM free: 13.81 GB Disk free: 16.1 GB

    OS Version: 5.1 Orientation: Portrait Rooted: Yes

    Fatal Exception: android.view.InflateException: Binary XML file line #13: Error inflating class com.getbase.floatingactionbutton.FloatingActionsMenu at android.view.LayoutInflater.createView(LayoutInflater.java:633) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743) at android.view.LayoutInflater.rInflate(LayoutInflater.java:806) at android.view.LayoutInflater.parseInclude(LayoutInflater.java:916) at android.view.LayoutInflater.rInflate(LayoutInflater.java:802) at android.view.LayoutInflater.inflate(LayoutInflater.java:504) at android.view.LayoutInflater.inflate(LayoutInflater.java:414) at com.nehavin.prayercounter.ui.main.Today.onCreateView(Today.java:242) at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2699) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:320) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1199) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1368) at androidx.fragment.app.FragmentManager.moveFragmentToExpectedState(FragmentManager.java:1446) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1509) at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:447) at androidx.fragment.app.FragmentManager.executeOps(FragmentManager.java:2181) at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2004) at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1959) at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1830) at androidx.fragment.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:303) at androidx.fragment.app.FragmentStatePagerAdapter.finishUpdate(FragmentStatePagerAdapter.java:270) at androidx.viewpager.widget.ViewPager.populate(ViewPager.java:1244) at androidx.viewpager.widget.ViewPager.populate(ViewPager.java:1092) at androidx.viewpager.widget.ViewPager.onMeasure(ViewPager.java:1622) at android.view.View.measure(View.java:17547) at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:727) at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:463) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.FrameLayout.onMeasure(FrameLayout.java:436) at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:146) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436) at android.widget.LinearLayout.measureVertical(LinearLayout.java:722) at android.widget.LinearLayout.onMeasure(LinearLayout.java:613) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.FrameLayout.onMeasure(FrameLayout.java:436) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436) at android.widget.LinearLayout.measureVertical(LinearLayout.java:722) at android.widget.LinearLayout.onMeasure(LinearLayout.java:613) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.FrameLayout.onMeasure(FrameLayout.java:436) at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2615) at android.view.View.measure(View.java:17547) at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2015) at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1173) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1379) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1061) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5885) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767) at android.view.Choreographer.doCallbacks(Choreographer.java:580) at android.view.Choreographer.doFrame(Choreographer.java:550) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753) at android.os.Handler.handleCallback(Handler.java:756) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5314) at java.lang.reflect.Method.invoke(Method.java) at java.lang.reflect.Method.invoke(Method.java:374) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) Caused by java.lang.reflect.InvocationTargetException at java.lang.reflect.Constructor.newInstance(Constructor.java) at java.lang.reflect.Constructor.newInstance(Constructor.java:288) at android.view.LayoutInflater.createView(LayoutInflater.java:607) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743) at android.view.LayoutInflater.rInflate(LayoutInflater.java:806) at android.view.LayoutInflater.parseInclude(LayoutInflater.java:916) at android.view.LayoutInflater.rInflate(LayoutInflater.java:802) at android.view.LayoutInflater.inflate(LayoutInflater.java:504) at android.view.LayoutInflater.inflate(LayoutInflater.java:414) at com.nehavin.prayercounter.ui.main.Today.onCreateView(Today.java:242) at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2699) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:320) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1199) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1368) at androidx.fragment.app.FragmentManager.moveFragmentToExpectedState(FragmentManager.java:1446) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1509) at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:447) at androidx.fragment.app.FragmentManager.executeOps(FragmentManager.java:2181) at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2004) at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1959) at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1830) at androidx.fragment.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:303) at androidx.fragment.app.FragmentStatePagerAdapter.finishUpdate(FragmentStatePagerAdapter.java:270) at androidx.viewpager.widget.ViewPager.populate(ViewPager.java:1244) at androidx.viewpager.widget.ViewPager.populate(ViewPager.java:1092) at androidx.viewpager.widget.ViewPager.onMeasure(ViewPager.java:1622) at android.view.View.measure(View.java:17547) at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:727) at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:463) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.FrameLayout.onMeasure(FrameLayout.java:436) at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:146) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436) at android.widget.LinearLayout.measureVertical(LinearLayout.java:722) at android.widget.LinearLayout.onMeasure(LinearLayout.java:613) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.FrameLayout.onMeasure(FrameLayout.java:436) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436) at android.widget.LinearLayout.measureVertical(LinearLayout.java:722) at android.widget.LinearLayout.onMeasure(LinearLayout.java:613) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.FrameLayout.onMeasure(FrameLayout.java:436) at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2615) at android.view.View.measure(View.java:17547) at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2015) at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1173) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1379) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1061) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5885) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767) at android.view.Choreographer.doCallbacks(Choreographer.java:580) at android.view.Choreographer.doFrame(Choreographer.java:550) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753) at android.os.Handler.handleCallback(Handler.java:756) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5314) at java.lang.reflect.Method.invoke(Method.java) at java.lang.reflect.Method.invoke(Method.java:374) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) Caused by android.content.res.Resources$NotFoundException: Resource ID #0x7f080089 at android.content.res.Resources.getValue(Resources.java:1266) at android.content.res.Resources.getDrawable(Resources.java:785) at android.content.res.Resources.getDrawable(Resources.java:752) at com.getbase.floatingactionbutton.FloatingActionButton.updateBackground(FloatingActionButton.java:236) at com.getbase.floatingactionbutton.FloatingActionsMenu$1.updateBackground(FloatingActionsMenu.java:155) at com.getbase.floatingactionbutton.FloatingActionButton.init(FloatingActionButton.java:90) at com.getbase.floatingactionbutton.AddFloatingActionButton.init(AddFloatingActionButton.java:36) at com.getbase.floatingactionbutton.FloatingActionButton.(FloatingActionButton.java:66) at com.getbase.floatingactionbutton.AddFloatingActionButton.(AddFloatingActionButton.java:23) at com.getbase.floatingactionbutton.AddFloatingActionButton.(AddFloatingActionButton.java:19) at com.getbase.floatingactionbutton.FloatingActionsMenu$1.(FloatingActionsMenu.java:148) at com.getbase.floatingactionbutton.FloatingActionsMenu.createAddButton(FloatingActionsMenu.java:148) at com.getbase.floatingactionbutton.FloatingActionsMenu.init(FloatingActionsMenu.java:109) at com.getbase.floatingactionbutton.FloatingActionsMenu.(FloatingActionsMenu.java:78) at java.lang.reflect.Constructor.newInstance(Constructor.java) at java.lang.reflect.Constructor.newInstance(Constructor.java:288) at android.view.LayoutInflater.createView(LayoutInflater.java:607) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743) at android.view.LayoutInflater.rInflate(LayoutInflater.java:806) at android.view.LayoutInflater.parseInclude(LayoutInflater.java:916) at android.view.LayoutInflater.rInflate(LayoutInflater.java:802) at android.view.LayoutInflater.inflate(LayoutInflater.java:504) at android.view.LayoutInflater.inflate(LayoutInflater.java:414) at com.nehavin.prayercounter.ui.main.Today.onCreateView(Today.java:242) at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2699) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:320) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1199) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1368) at androidx.fragment.app.FragmentManager.moveFragmentToExpectedState(FragmentManager.java:1446) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1509) at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:447) at androidx.fragment.app.FragmentManager.executeOps(FragmentManager.java:2181) at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2004) at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1959) at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1830) at androidx.fragment.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:303) at androidx.fragment.app.FragmentStatePagerAdapter.finishUpdate(FragmentStatePagerAdapter.java:270) at androidx.viewpager.widget.ViewPager.populate(ViewPager.java:1244) at androidx.viewpager.widget.ViewPager.populate(ViewPager.java:1092) at androidx.viewpager.widget.ViewPager.onMeasure(ViewPager.java:1622) at android.view.View.measure(View.java:17547) at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:727) at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:463) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.FrameLayout.onMeasure(FrameLayout.java:436) at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:146) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436) at android.widget.LinearLayout.measureVertical(LinearLayout.java:722) at android.widget.LinearLayout.onMeasure(LinearLayout.java:613) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.FrameLayout.onMeasure(FrameLayout.java:436) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436) at android.widget.LinearLayout.measureVertical(LinearLayout.java:722) at android.widget.LinearLayout.onMeasure(LinearLayout.java:613) at android.view.View.measure(View.java:17547) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5535) at android.widget.FrameLayout.onMeasure(FrameLayout.java:436) at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2615) at android.view.View.measure(View.java:17547) at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2015) at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1173) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1379) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1061) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5885) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767) at android.view.Choreographer.doCallbacks(Choreographer.java:580) at android.view.Choreographer.doFrame(Choreographer.java:550) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753) at android.os.Handler.handleCallback(Handler.java:756) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5314) at java.lang.reflect.Method.invoke(Method.java) at java.lang.reflect.Method.invoke(Method.java:374) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)

    Any help will be highly appreciated

    Regards, Vineet

    opened by reachvineetjain 0
  • AndroidX

    AndroidX

    I am getting the following when running canISayByeByeJetifier.

    Scanning com.getbase:floatingactionbutton:1.10.1
     Absoulute path: /Users/xiwei/.gradle/caches/modules-2/files-2.1/com.getbase/floatingactionbutton/1.10.1/606b307b5073e6228dd7c4ea6b2755dc00d558a5/floatingactionbutton-1.10.1.aar
     Graphs to this dependency:
     +---com.getbase:floatingactionbutton:1.10.1
     Issues found:
     * pom -> com.android.support:support-annotations:27.0.0
    

    Would you consider update to AndroidX?

    Thanks!

    opened by GC-Xi 1
  • Center in layout

    Center in layout

    How to center menu in relative layout.

    My code:

    <com.getbase.floatingactionbutton.FloatingActionsMenu
        android:id="@+id/multiple_actions_down"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="30dp"
        fab:fab_labelStyle="@style/menu_labels_style"
        fab:fab_addButtonColorNormal="#4cbdb0"
        fab:fab_addButtonColorPressed="#4cbdb0"
        fab:fab_addButtonSize="normal"
        fab:fab_expandDirection="up">
    
        <com.getbase.floatingactionbutton.FloatingActionButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:foregroundGravity="center"
            fab:fab_colorNormal="#176E64"
            fab:fab_colorPressed="#4cbdb0"
            fab:fab_size="mini"
            fab:fab_title="Novo Pedido" />
    </com.getbase.floatingactionbutton.FloatingActionsMenu>
    

    image

    thanks.

    opened by charles-silva 1
Owner
Zendesk
Zendesk
[] Android floating action button

DEPRECATED Use the FloatingActionButton from the support library instead. FloatingActionButton Description Android floating action button which reacts

Oleksandr Melnykov 4k Jan 5, 2023
A simple Floating Action Button that shows an anchored Navigation View

Floating Navigation View A simple Floating Action Button that shows an anchored Navigation View and was inspired by Menu Material Fixed created by Tom

André Mion 1.3k Dec 29, 2022
Kotlin Expanding Floating Action button

Kotlin-Expanding-Floating-Action_button Home Screen As you can see there is only a siongle floating button with + icon Expanding Fab button When we cl

Akshay Teli 0 Nov 3, 2021
Floating Action Button But Moveable And Expandalbe

MeFab todo add the maven bacge here Floating Action Button but MOVEABLE and EXPA

Hussien Fahmy 6 Dec 30, 2022
➕ An efficient and beaufitul Multi Float action button library based on Twitter implemented in Jetpack Compose 🚀

Multi Float Action Button ➕ An efficient and beaufitul Multi Float action button library based on Twitter implemented in Jetpack Compose ?? Including

Geovani Amaral 8 Oct 15, 2022
Base on android-process-button this is the advanced version of the android-process-button.

Rock Button release log Base on android-process-button this is the advanced version of the android-process-button ##Main Features ActionProcessButton

MDCCLXXVI KPT 119 Nov 25, 2022
This is a Material Design loading button

This is a library project with a custom view that implements concept of Send Comment (https://dribbble.com/shots/1986254-Send-Comment-Shoppr) made by

DevinShine 295 Jul 31, 2022
Android Floating ActionButton with a progress indicator ring

FabProgress Android Circular floating action button with intergrated progress indicator ring As per material design docs Demo: Demo apk HOW TO ADD TO

Kurt Mbanje 779 Nov 28, 2022
Android Circular Progress Button

?? Before using this library, read information below ?? This library is not more supported. If you want to add new feature or fix a bug, grab source

Dmytro Danylyk 5.6k Jan 7, 2023
Circle button widget for Android

DEPRECATED This library is deprecated and no new development is taking place. Consider using a FAB(Floating action button) instead. E.g. the Android D

Markus Hintersteiner 1.5k Dec 9, 2022
FButton - a flat button library for Android

FButton FButton is a custom Button of Android with "Flat UI" concept. FButton's design get inspiration from designmono. This library is very small and

Le Van Hoang 1.4k Dec 12, 2022
Android button which moves in eight direction.

Moving Button Android button which moves in eight direction. Preview Sample Demo You can download demo movie file here : demo.mov It's also on Youtube

Leonardo Taehwan Kim 130 Nov 22, 2022
Button for android with animations for transition and error states.

Transition Button Android Preview Expand animation: Shake animation: Installation Gradle dependencies { implementation 'com.royrodriguez:transitionbu

Roy Rodriguez 137 Jan 3, 2023
[] An Android library for an expandable button menu

ExpandableButtonMenu ExpandableButtonMenu is an Android library which implements an expandable button that can be used as a substitute of a fixed size

Lemon Labs 325 Nov 14, 2022
A cute widget of Switch Button for you to create beautiful and friendly UI.

SwitchButton To get a quick preview, you can get Demo apk in Google Play or Directly download. This project provides you a convenient way to use and c

kyleduo 4.6k Dec 31, 2022
A download button with pretty cool animation

ArrowDownloadButton A download button with pretty cool animation, this is an implemention of https://dribbble.com/shots/2012292-Download-Animation Enj

Rongchan Liu 966 Nov 29, 2022
Button which is visible while user holds it. Main use case is controlling audio recording state (like in Telegram, Viber, VK).

HoldingButton Button which is visible while user holds it. Main use case is controlling audio recording state (like in Telegram, Viber, VK). Getting s

Artem Hluhovskyi 594 Jan 1, 2023
comtomize view submit button which you use for submit operation or download operation and so on.

This is library project with a custom view that implements concept of Submit Button (https://dribbble.com/shots/1426764-Submit-Button?list=likes&offse

ZhangLei 129 Feb 5, 2021
A raised button that lowers down to 0dp of elevation

RaiflatButton A raised button that lowers down to 0dp of elevation. From my blog post: https://rubensousa.github.io/2016/10/raiflatbutton It behaves l

Rúben Sousa 328 Sep 11, 2022