Popularity
5.0
Growing
Activity
0.0
Stable
469
15
72

Code Quality Rank: L5
Programming language: Java
License: GNU General Public License v3.0 or later
Tags: Layout Widget    
Latest version: v0.4.0

FabTransitionLayout alternatives and similar packages

Based on the "Layout Widget" category.
Alternatively, view FabTransitionLayout alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of FabTransitionLayout or a related project?

Add another 'Layout Widget' Package

README

FabTransitionLayout

Android Arsenal

Provides the Floating Action Button Transition as specified in the Material Design Guide in a simple library.

It is strongly inspired by fab-toolbar

bottomsheet toolbar CoordinatorLayout
bottomsheet bottomsheet CoordinatorLayout

Usage

build.gradle

repositories {
    jcenter()
}

dependencies {
    compile 'com.bowyer.app:fabtransitionlayout:[email protected]'
}

Layout XML

BottomSheetLayout

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
             xmlns:tools="http://schemas.android.com/tools"
             xmlns:app="http://schemas.android.com/apk/res-auto"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
        >

    <com.github.ksoichiro.android.observablescrollview.ObservableListView
            android:id="@+id/list_view"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            />

    <android.support.design.widget.FloatingActionButton
            android:id="@+id/fab"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom|end"
            android:layout_marginBottom="32dp"
            android:layout_marginRight="32dp"
            android:src="@drawable/ic_add_white_24dp"
            app:borderWidth="0dp"
            app:fabSize="normal"
            app:rippleColor="@color/primary"
            />

    <com.bowyer.app.fabtransitionlayout.BottomSheetLayout
            android:id="@+id/bottom_sheet"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_gravity="bottom"
            app:ft_container_gravity="center"
            app:ft_color="@color/primary">

        <ListView
                android:id="@+id/list_menu"
                android:background="@color/primary"
                android:divider="@null"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"/>
    </com.bowyer.app.fabtransitionlayout.BottomSheetLayout>

</FrameLayout>

FooterLayout

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
             xmlns:tools="http://schemas.android.com/tools"
             xmlns:app="http://schemas.android.com/apk/res-auto"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
             tools:context=".MainActivity">

    <com.github.ksoichiro.android.observablescrollview.ObservableListView
            android:id="@+id/list_view"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            />

    <android.support.design.widget.FloatingActionButton
            android:id="@+id/fab"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom|end"
            android:layout_marginBottom="32dp"
            android:layout_marginRight="32dp"
            android:src="@drawable/ic_add_white_24dp"
            app:borderWidth="0dp"
            app:fabSize="normal"
            app:rippleColor="@color/primary"
            />

    <com.bowyer.app.fabtransitionlayout.FooterLayout
            android:id="@+id/fabtoolbar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom"
            app:ft_container_gravity="center"
            app:ft_color="@color/primary">
        <!--add your original layout-->
    </com.bowyer.app.fabtransitionlayout.FooterLayout>
</FrameLayout>

Set up

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ButterKnife.bind(this);
        initListView();
        //set floating button to FabToolbar
        mBottomSheetLayout.setFab(mFab);
    }

Show Hide

//expand FabToolbar
mBottomSheetLayout.expandFab();

//if mBottomSheetLayout is expand,mBottomSheetLayout contract. else fab slide out.
mBottomSheetLayout.slideOutFab();

//fab slide in
mBottomSheetLayout.slideInFab();


Credits

This library use following libraries.

Code Style

Follow SquareAndroid.

Feature

  • [ ] A floating action button transforming into a single sheet of material

License

Copyright (c) 2015 Bowyer
Released under the MIT license
http://opensource.org/licenses/mit-license.php


*Note that all licence references and agreements mentioned in the FabTransitionLayout README section above are relevant to that project's source code only.