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
Default colors and dimens per Material Design guidelines and Android Design guidelines inside one library.

Material Design Dimens Default colors and dimens per Material Design guidelines and Android Design guidelines inside one library. Dimens Pattern: R.di

Dmitry Malkovich 1.4k Jan 3, 2023
Animated Material circular button

Material Circular Button Circular button for Android in Google Material Style How to use Clone this proyect and import the module "materialCircularBut

Adrián Lomas 217 Nov 25, 2022
A library to bring fully animated Material Design components to pre-Lolipop Android.

Material MaterialLibrary is an Open Source Android library that back-port Material Design components to pre-Lolipop Android. MaterialLibrary's origina

Rey Pham 6k Dec 21, 2022
The flexible, easy to use, all in one drawer library for your Android project. Now brand new with material 2 design.

MaterialDrawer ... the flexible, easy to use, all in one drawer library for your Android project. What's included ?? • Setup ??️ • Migration Guide ??

Mike Penz 11.6k Dec 27, 2022
Implementation of Ripple effect from Material Design for Android API 9+

RippleEffect ExpandableLayout provides an easy way to create a view called header with an expandable view. Both view are external layout to allow a ma

Robin Chutaux 4.9k Dec 30, 2022
Material Design implementation for Android 4.0+. Shadows, ripples, vectors, fonts, animations, widgets, rounded corners and more.

Carbon Material Design implementation for Android 4.0 and newer. This is not the exact copy of the Lollipop's API and features. It's a custom implemen

null 3k Jan 9, 2023
Android drawer icon with material design animation

LDrawer Android drawer icon with material design animation Note Basically same as appcompat_v7 version 21, you can use appcompat_v7 compile 'com.andro

Hasan Keklik 1.4k Dec 25, 2022
[] Android Library that implements Snackbars from Google's Material Design documentation.

DEPRECATED This lib is deprecated in favor of Google's Design Support Library which includes a Snackbar and is no longer being developed. Thanks for a

null 1.5k Dec 16, 2022
Android Sample Project with Material Design and Toolbar.

AndroidMaterialDesignToolbar -- PROJECT IS NOT SUPPORTED Android Sample Project with Material Design and Toolbar. Project use Appcompat library for ma

kemal selim tekinarslan 713 Nov 11, 2022
Android drawer icon with material design animation

LDrawer Android drawer icon with material design animation Note Basically same as appcompat_v7 version 21, you can use appcompat_v7 compile 'com.andro

Hasan Keklik 1.4k Dec 25, 2022
A library support form with material design, construct same with Android UI Framework

SwingUI A slight Java Swing library support form with material design, construct same with Android UI Framework writen in Kotlin Supported: 1. Screen:

Cuong V. Nguyen 3 Jul 20, 2021
Android Material Design Components

Android-Material-Design-Components Material design is a comprehensive guide for visual, motion, and interaction design across platforms and devices. G

Velmurugan Murugesan 3 Jun 10, 2022
Modular and customizable Material Design UI components for Android

Material Components for Android Material Components for Android (MDC-Android) help developers execute Material Design. Developed by a core team of eng

Material Components 14.4k Dec 31, 2022
Easy creation and management of toggle buttons on Android from the Material Design spec.

ToggleButtonLayout Easy creation and management of toggle buttons from the Material Design spec. Read more about ToggleButtonLayout in our blog post.

Savvy 229 Jan 9, 2023
A gradle plugin that generates Material Design 3 theme for Android projects.

Same as Google's Material Theme Builder, but as a gradle plugin.

Rikka apps 41 Dec 6, 2022
Material Design icons by Google

Material design icons Material design icons is the official icon set from Google. The icons are designed under the material design guidelines. 4.0.0 U

Google 47.1k Jan 9, 2023
A Material Design ViewPager easy to use library

MaterialViewPager Material Design ViewPager easy to use library Sample And have a look on a sample Youtube Video : Youtube Link Download In your modul

Florent CHAMPIGNY 8.2k Jan 1, 2023
EditText in Material Design

MaterialEditText NOTE: 2.0 is NOT BACKWARDS COMPATIBLE! See more on wiki or 中文看这里 AppCompat v21 makes it easy to use Material Design EditText in our a

Kai Zhu 6.1k Dec 30, 2022
Material Design ProgressBar with consistent appearance

MaterialProgressBar Material Design ProgressBar with consistent appearance on Android 4.0+. Why MaterialProgressBar? Consistent appearance on Android

Hai Zhang 2.2k Dec 21, 2022