FloatingActionButton
Yet another library for drawing Material Design promoted actions.
This library supports API 4+.
Features
-
Support for normal 56dp
and mini 40dp
buttons.
-
Customizable background colors for normal and pressed states and icon drawable.
-
Convenience AddFloatingActionButton
class with plus icon drawn in code.
-
FloatingActionsMenu
which can be expanded/collapsed to reveal multiple actions.
-
Optional labels for buttons in FloatingActionsMenu
.
Usage
Just add the dependency to your build.gradle
:
dependencies {
compile 'net.i2p.android.ext:floatingactionbutton:1.10.1'
}
The library is available on Maven Central (mavenCentral()
in your repositories list).
Alternatively, you can build it manually and install it in your local Maven repo:
git clone https://github.com/str4d/android-floating-action-button
cd android-floating-action-button
cd library
gradle installArchives
Then add mavenLocal()
to the top of your repositories list (so it is checked first).
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.
Credits
This library is a supported backwards-compatible version of the FloatingActionButton library by Jerzy Chalupski.
That library used FloatingActionButton library by Oleksandr Melnykov as a base for development.
License
Copyright (C) 2014 str4d
Copyright (C) 2014 Jerzy Chalupski
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.