Giter Club home page Giter Club logo

expandable-fab's People

Contributors

kabumere 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

expandable-fab's Issues

How to add a fab option programatically?

Hey,

I have, in my XML:

<com.nambimobile.widgets.efab.ExpandableFabLayout
      android:id="@+id/fab_layout"
      android:layout_width="wrap_content"
      app:layout_constraintEnd_toEndOf="parent"
      app:layout_constraintBottom_toBottomOf="parent"
      android:layout_margin="12dp"
      android:layout_height="wrap_content">

  <!-- The next 3 Views will only display in portrait orientation -->
  <com.nambimobile.widgets.efab.ExpandableFab
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      app:efab_orientation="portrait"/>
  </com.nambimobile.widgets.efab.ExpandableFabLayout>

And I'm trying, via code, to add the option like so:

 /// will add the keyboard capability
private fun addKeyboardCapability(fabLayout: ExpandableFabLayout) {
     val option = FabOption(fabLayout.context, Orientation.PORTRAIT)
     option.label.text = "keyboard"
     fabLayout.addView(option, fabLayout.childCount, null)
     }

But the option isn't scaled properly on screen, probably because I'm not adding the option right or something.

I can refresh myself the ExpandableFabLayout but I thought that maybe I'm not adding the FabOption right.

Feature Improvement

Right now I can't customize the padding/margin between FabOptions using app:layout_margin and android:padding attributes in XML.

Change speed of showing up options

Good job! I have a question. Is there a possibility to change speed of showing up options? What if I wanted to speed up the options showing up?

Overlay and bottom navigation bar

Hi! When I use the fab menu with overlay and bottom nav bar, overlay not hiding the bottom nav bar and I might click on buttons in the bottom navbar. How I might hiding my bottom nav bar with an overlay?

ExpandableFab does not use colorAccent when Theme.MaterialComponents.DayNight is the app theme

The ExpandableFab's efab_color doesn't use colorAccent despite setting it to colorSecondary, it just uses the color black. Tested it on API 25, here's my styles.xml

    <style name="AppTheme" parent="Theme.MaterialComponents.DayNight">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/color_primary</item>
        <item name="colorPrimaryVariant">@color/color_primary_variant</item>
        <item name="colorSecondary">@color/color_secondary_variant</item>
        <item name="colorSecondaryVariant">@color/color_secondary</item>
        <item name="colorOnSurface">@color/color_on_surface</item>

        <item name="colorPrimaryDark">?colorPrimaryVariant</item>
        <item name="colorAccent">?colorSecondary</item>
    </style>

My colors.xml:

<resources>
    <color name="color_primary">#6200EE</color>
    <color name="color_primary_variant">#3700B3</color>
    <color name="color_secondary">#03DAC5</color>
    <color name="color_secondary_variant">#036C62</color>
    <color name="shimmer_base_0">#c2c2c2</color>
    <color name="shimmer_highlight_0">#ffffff</color>
    <color name="color_on_surface">#000000</color>
    <color name="color_divider">#1F000000</color>
    <color name="color_tinted_surface">#ffffff</color>
    <color name="color_on_surface_secondary">#9e9e9e</color>
</resources>

I know I can just as easily specify my FAB's preferred color or I might just be misunderstanding something, but just thought I should let you guys know what I encountered.

Gape between all fabs

I have taken 1 fab and 3 fabOptions but there is slight gape between all of them according to device screen resolution. Can u provide me the name of functionality so that I can reduce that margin or padding whatever

RTL

When using this library in project which supports RTL direction (Hebrew, Arabic languages) FAB shown correctly, but when pressing on it the menu items (FabOption) label margin is not respected as in LTR. Version 1.2.1 was used (latest one).

Please see screenshot below with FAB option which contains Hebrew text within label, margin is missing, while for LTR works as expected

Screenshot 2024-04-11 at 10 11 54

XML android:visibility="invisible" not working

I want to begin my fragment with the fab on invisible visibility mode to then call the method .show() to the fab appear with animation.
android:visibility="invisible" is not working on xml

Attribute to set icon when FAB is opened

There is no option to set a different icon (such as cross icon) when FAB is opened. We can only rotate our previous icon. Kindly add this functionality please.

Adding fab icon tint

It would be nice if fab_icon_tint was exposed to allow easy customization of icon color without modifying drawables.

Programmatically change visible options

Hi there! Thanks for the library!

Is there a way to programmatically add/remove or at least show/hide each individual FabOption?

I see it's possible to enable/disable which is good (but not what I need), while unfortunately the parent's show/hide methods do not seem to have any effect, as the view visibility seems to be ignored as well.

Button drawable shifted

Hi Kelvin,

Using the following drawable for the main button the image is originaly rendered fine, though the moment it is clicked (and re-renders the image) the image is not centred any more but shifted off.

<vector xmlns:android="http://schemas.android.com/apk/res/android"
	android:width="30dp"
	android:height="30dp"
	android:viewportWidth="24"
	android:viewportHeight="24">
	<path
		android:fillColor="@android:color/white"
		android:pathData="M12,8c1.1,0 2,-0.9 2,-2s-0.9,-2 -2,-2 -2,0.9 -2,2 0.9,2 2,2zM12,10c-1.1,0 -2,0.9 -2,2s0.9,2 2,2 2,-0.9 2,-2 -0.9,-2 -2,-2zM12,16c-1.1,0 -2,0.9 -2,2s0.9,2 2,2 2,-0.9 2,-2 -0.9,-2 -2,-2z" />
</vector>

It appears to happen because the dimensions do not match the viewport dimensions (30 vs 24) but that's exactly what Android Studio generated (when choosing 30), so I wouldn't not assume the definition is invalid per se.

Feature request: Add disable function

It would be nice to have a disable function for the FAB to disable the animation and the menu of options from showing.
This is quite an edge case but it is helpful in the event that having or not having the FAB menu popup is not a fixed action and depends on something else.

How to change icon tint on night mode ?

I have default icon which colored by black, it useful when open app at daylight theme. But in dark theme, whole app background turn to dark grey, i want make the icon tint color to white. but not applied.

here my existing styles to override tint color on textview, might can be used as reference

values/styles.xml

<!-- Style for TextView drawables -->
    <style name="CustomTextView" parent="Widget.MaterialComponents.TextView">
        <!-- Tint color for TextView drawables -->
        <item name="android:drawableTint" tools:targetApi="m">@color/black</item>
    </style>

values-night/styles.xml

    <!-- Style for TextView drawables -->
    <style name="CustomTextView" parent="Widget.MaterialComponents.TextView">
        <!-- Tint color for TextView drawables -->
        <item name="android:drawableTint" tools:targetApi="m">@color/white</item>
    </style>

and here how I applied the style.

values/themes.xml

<!-- Custom Style for TextView drawables -->
        <item name="android:textViewStyle">@style/CustomTextView</item>

how to apply styles for expandable-fab ?

Dynamically managing options

Hi Kelvin,

Is my impression wrong or is it currently not really supported to manage options dynamically in the code?

As mentioned in your example, I can use e.g. the following to enable/disable individual options upon a click

getCurrentConfiguration().getFabOptions().get(0).setFabOptionEnabled(false);

However using something like hide() or setVisibility() breaks the UI.

Transparent background for option label

Hi there! Thanks for the beautiful view!

I'd like to make the label background transparent (to show only text), I tried to set "label_backgroundColor" to "android: transparent" (#0000), but it didn't work.

I also tried to disable the label, but when I set the "label_text" empty, there is a still black rectangle.

So, summing up, my ask is to add the ability to use transparent background for labels.

How change color fabOption

Hey! How I can change the color programmatically for fabOption: button, labelBackground, labelText?

If I changing color for an icon it normally works, but when I changing the color for the button, labelBackground, labelText and changing the text for the label, all my labels changing to a new color and text.

       eFabFilterIssues.fabOptionIcon?.setTint(getColor(iconColor))
        eFabFilterIssues.fabOptionColor = buttonColor
        eFabFilterIssues.label.labelTextColor = textColor
        eFabFilterIssues.label.labelBackgroundColor = buttonColor
        eFabFilterIssues.label.labelText = "New text"

P.S. And the new button color, not that was which set.

Caused by android.content.res.Resources$NotFoundException

Getting this crash on several devices. Using the latest library version. Please let me know if any further detail is needed.

Caused by android.content.res.Resources$NotFoundException
Resource ID #0x7f070113
android.content.res.ResourcesImpl.getValueForDensity (ResourcesImpl.java:225)
androidx.core.content.ContextCompat$Api21Impl.getDrawable (ContextCompat.java:862)
com.nambimobile.widgets.efab.ExpandableFab.setOptionalProperties (ExpandableFab.java:480)
androidx.core.content.ContextCompat.getDrawable (ContextCompat.java:480)
com.nambimobile.widgets.efab.ExpandableFab. (ExpandableFab.java:73)
java.lang.reflect.Constructor.newInstance0 (Constructor.java)
android.view.LayoutInflater.createViewFromTag (LayoutInflater.java:790)

Weird NullpointerException when removing fabOption

I am doing this...
private void removeFabOption(FabOption fabOption) { expandableFabLayout.getPortraitConfiguration().getFabOptions().remove(fabOption); }

and get this exception...
E/AndroidRuntime: FATAL EXCEPTION: main Process: com.pezcraft.myapplication, PID: 30800 java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getVisibility()' on a null object reference at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3416) at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3415) at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3415) at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3415) at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3415) at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3415) at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3415) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1944) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1633) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7943) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1092) at android.view.Choreographer.doCallbacks(Choreographer.java:893) at android.view.Choreographer.doFrame(Choreographer.java:812) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1078) at android.os.Handler.handleCallback(Handler.java:907) at android.os.Handler.dispatchMessage(Handler.java:105) at android.os.Looper.loop(Looper.java:216) at android.app.ActivityThread.main(ActivityThread.java:7625) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987) I/Process: Sending signal. PID: 30800 SIG: 9

But what's weird is that it worked at first but when I started it a 2nd, 3rd, ... time, I got this exception.

By the way, I am calling the function inside onBillingSetupFinished Listener. It worked perfectly outside the listener.
`

protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    expandableFabLayout = findViewById(R.id.expandableFabLayout);

    prefManager = new PrefManager(getApplicationContext());

    checkBox = findViewById(R.id.checkBox);
    linearLayoutHighestHeartrate = findViewById(R.id.linearLayoutHighestHeartrate);
    textViewHighestHeartrate = findViewById(R.id.textViewHighestHeartrate);

    //if it's still the same day, do not reset the highest heartrate of the day
    if(prefManager.getHighestHeartrateDate().equals(DateConverter.toDate(new Date()))) {
        highestHeartrate = prefManager.getHighestHeartrate();
    }
    textViewHighestHeartrate.setText(getString(R.string.textViewHighestHeartrate, highestHeartrate));

    //check subscription status
    billingClient = BillingClient.newBuilder(this).enablePendingPurchases().setListener(this).build();
    billingClient.startConnection(new BillingClientStateListener() {
        @Override
        public void onBillingSetupFinished(@NonNull BillingResult billingResult) {
            if (billingResult.getResponseCode() == BillingResponseCode.OK){
                billingClient.queryPurchasesAsync(SkuType.SUBS, (billingResult1, queryPurchasesSubs) -> {
                    if (queryPurchasesSubs.size() > 0){
                        handlePurchases(queryPurchasesSubs);
                    } else {
                        //if no item in purchase list means no, cancelled, or paused subscription
                        prefManager.setPremium(false);
                        removeFabOption(findViewById(R.id.fabOptionPremium));
                    }

                    //set keeprunning-checkbox
                    if(prefManager.isPremium() && prefManager.getKeepRunning()) {
                        checkBox.setChecked(true);
                    }

                    billingClient.queryPurchasesAsync(SkuType.INAPP, (billingResult2, queryPurchasesOnetime) -> {
                        if (queryPurchasesOnetime.size() > 0){
                            handlePurchases(queryPurchasesOnetime);
                        } else {
                            //if no item in purchase list means no, cancelled, or paused subscription
                            prefManager.setPremium(false);
                            removeFabOption(findViewById(R.id.fabOptionPremium));
                        }

                        //set keeprunning-checkbox
                        if(prefManager.isPremium() && prefManager.getKeepRunning()) {
                            checkBox.setChecked(true);
                        }
                    });
                });

                //query prices for BottomSheetDialog
                getSubPrice();
                getOnetimePrice();
            }
        }

        @Override
        public void onBillingServiceDisconnected() {
            Log.d(DEBUG, "Billing Service disconnected.");
        }
    });`

Any ideas, how I can use it inside the listener?

How change speed animation

Hi! How I speed up the animation?

I use:

app:efab_openingAnimationDurationMs="100" app:efab_closingAnimationDurationMs="100"

but this only works on the first opening, on the second and subsequent ones, the animation speed returns to the initial one. I tried to install both through the markup and programmatically.

Show method does not work

I am trying to programmatically toggle the show() and hide() methods but does not work unfortunately... The setEfabColor does work tho

Keeping ExpandableFab from closing when a FabOption is clicked

Hi, first of all let me congratulate you on the quality of the library and the support I see you are providing.

I would like to use the expandable fab as a container for a set of checkboxes. In that scenario I need to keep the different FabOptions visible after clicking on one of them just in case the user wants to select more than one. The 'menu' would only be closed after clicking on the ExpandableFab itself. Is such a feature implemented? Is there any workaround to that?

Caused by java.lang.NoSuchMethodError

My app is crashing on startup when I updated my library version to 1.2.0
Please see the following logs.
compileSdkVersion = 31
minSdkVersion = 21
targetSdkVersion = 30

Fatal Exception: android.view.InflateException
Binary XML file line #150: Binary XML file line #36: Error inflating class com.nambimobile.widgets.efab.ExpandableFab
Caused by android.view.InflateException
Binary XML file line #36: Error inflating class com.nambimobile.widgets.efab.ExpandableFab

Caused by java.lang.reflect.InvocationTargetException
java.lang.reflect.Constructor.newInstance0 (Constructor.java)
androidx.databinding.DataBindingUtil.inflate (DataBindingUtil.java:95)
com.niyotail.consumer.ui.base.BaseFragment.onCreateView (BaseFragment.java:48)
androidx.fragment.app.Fragment.performCreateView (Fragment.java:2963)
androidx.appcompat.app.AppCompatActivity.onStart (AppCompatActivity.java:246)
com.niyotail.consumer.ui.main.MainActivity.onStart (MainActivity.java:331)
android.app.Instrumentation.callActivityOnStart (Instrumentation.java:1391)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:858)

Caused by java.lang.NoSuchMethodError
No virtual method setPadding(IIII)V in class Landroid/graphics/drawable/GradientDrawable; or its super classes (declaration of 'android.graphics.drawable.GradientDrawable' appears in /system/framework/framework.jar)
com.nambimobile.widgets.efab.Label.<init> (Label.java:274)
com.nambimobile.widgets.efab.ExpandableFab.<init> (ExpandableFab.java:243)
java.lang.reflect.Constructor.newInstance0 (Constructor.java)
androidx.databinding.DataBindingUtil.inflate (DataBindingUtil.java:95)
com.niyotail.consumer.ui.base.BaseFragment.onCreateView (BaseFragment.java:48)
androidx.fragment.app.Fragment.performCreateView (Fragment.java:2963)
androidx.appcompat.app.AppCompatActivity.onStart (AppCompatActivity.java:246)
com.niyotail.consumer.ui.main.MainActivity.onStart (MainActivity.java:331)
android.app.Instrumentation.callActivityOnStart (Instrumentation.java:1391)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:858)`

FabOption background onPressed color look weird in android 12.

I wrote a simple demo using this library.

`<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

    <com.lailen.pixart.drawer.widget.PixArtView
        android:layout_width="0dp"
        android:layout_height="0dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <com.nambimobile.widgets.efab.ExpandableFabLayout
        android:id="@+id/expandable_fab_layout"
        android:layout_width="0dp"
        android:layout_height="0dp"
        app:efab_layout_fabOptionOpeningAnimationDurationMs="0"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent">

        <com.nambimobile.widgets.efab.Overlay
            android:layout_width="match_parent"
            android:layout_height="match_parent" />

        <com.nambimobile.widgets.efab.ExpandableFab
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom|end"
            android:layout_marginEnd="@dimen/fab_end"
            android:layout_marginBottom="@dimen/fab_bottom"
            android:contentDescription="@string/tools"
            app:efab_closingAnimationDurationMs="300"
            app:efab_closingAnticipateTension="0"
            app:efab_icon="@drawable/ic_arrow_up"
            app:efab_iconAnimationRotationDeg="180"
            app:efab_openingAnimationDurationMs="300" />

        <com.nambimobile.widgets.efab.FabOption
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fab_icon="@drawable/ic_pen"
            app:label_position="left"
            app:label_text="@string/pen" />

        <com.nambimobile.widgets.efab.FabOption
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fab_icon="@drawable/ic_eraser"
            app:label_position="left"
            app:label_text="@string/eraser" />

        <com.nambimobile.widgets.efab.FabOption
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fab_icon="@drawable/ic_color"
            app:label_position="left"
            app:label_text="@string/color_palette" />

    </com.nambimobile.widgets.efab.ExpandableFabLayout>

</androidx.constraintlayout.widget.ConstraintLayout>`

The result on android 12 when pressed fab option is here.
On android 7 it show shadow.

Bug with efabColor

Good day. When trying to use the efabColor, fabOptionColor properties programmatically, the color changes the first time, but then does not change. Also, after the first setting, the color is displayed incorrectly. I wrote through a translator :)
Screenshot_1600285240
Screenshot_16002852402

Caused by android.content.res.Resources$NotFoundException

I am getting this error from firebase console, in my device it is working fine.

i am on version 1.0.2

Caused by android.view.InflateException: Binary XML file line #299 in com.supermdcare:layout/fragment_patient_details: Error inflating class com.nambimobile.widgets.efab.ExpandableFab


Caused by java.lang.reflect.InvocationTargetException
       at java.lang.reflect.Constructor.newInstance0(Constructor.java)
       at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
       at android.view.LayoutInflater.createView(LayoutInflater.java:852)
       at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1004)
       at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:959)
       at android.view.LayoutInflater.rInflate(LayoutInflater.java:1121)
       at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1082)
       at android.view.LayoutInflater.rInflate(LayoutInflater.java:1124)
       at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1082)
       at android.view.LayoutInflater.inflate(LayoutInflater.java:680)
       at android.view.LayoutInflater.inflate(LayoutInflater.java:532)
       at androidx.fragment.app.Fragment.onCreateView(Fragment.java:1924)
       at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2963)
       at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:518)
       at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:282)
       at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2189)
       at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2100)
       at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:2002)
       at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3136)
       at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:3070)
       at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:251)
       at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:501)
       at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:210)
       at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1435)
       at android.app.Activity.performStart(Activity.java:8024)
       at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3457)
       at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)
       at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)
       at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)
       at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
       at android.os.Handler.dispatchMessage(Handler.java:106)
       at android.os.Looper.loop(Looper.java:223)
       at android.app.ActivityThread.main(ActivityThread.java:7660)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)


Caused by android.content.res.Resources$NotFoundException: Resource ID #0x7f080113
       at android.content.res.ResourcesImpl.getValueForDensity(ResourcesImpl.java:246)
       at android.content.res.Resources.getDrawableForDensity(Resources.java:982)
       at android.content.res.Resources.getDrawable(Resources.java:922)
       at android.content.Context.getDrawable(Context.java:693)
       at androidx.core.content.ContextCompat.getDrawable(ContextCompat.java:455)
       at com.nambimobile.widgets.efab.ExpandableFab.<init>(ExpandableFab.kt:73)
       at java.lang.reflect.Constructor.newInstance0(Constructor.java)
       at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
       at android.view.LayoutInflater.createView(LayoutInflater.java:852)
       at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1004)
       at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:959)
       at android.view.LayoutInflater.rInflate(LayoutInflater.java:1121)
       at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1082)
       at android.view.LayoutInflater.rInflate(LayoutInflater.java:1124)
       at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1082)
       at android.view.LayoutInflater.inflate(LayoutInflater.java:680)
       at android.view.LayoutInflater.inflate(LayoutInflater.java:532)
       at androidx.fragment.app.Fragment.onCreateView(Fragment.java:1924)
       at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2963)
       at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:518)
       at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:282)
       at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2189)
       at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2100)
       at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:2002)
       at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3136)
       at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:3070)
       at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:251)
       at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:501)
       at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:210)
       at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1435)
       at android.app.Activity.performStart(Activity.java:8024)
       at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3457)
       at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)
       at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)
       at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)
       at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
       at android.os.Handler.dispatchMessage(Handler.java:106)
       at android.os.Looper.loop(Looper.java:223)
       at android.app.ActivityThread.main(ActivityThread.java:7660)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)

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.