All Projects → DeKoServidoni → Omfm

DeKoServidoni / Omfm

Licence: apache-2.0
Another floating action button menu with expand/collapse behavior, in kotlin

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Omfm

Springfabmenu
A menu of FloatingActionButton items, designed to be anchored on an AppBarLayout.
Stars: ✭ 116 (+34.88%)
Mutual labels:  menu, floatingactionbutton
flutter fab dialer
Floating action button dialer
Stars: ✭ 66 (-23.26%)
Mutual labels:  menu, floatingactionbutton
Hhfloatingview
An easy to use and setup floating view for your app. 🎡
Stars: ✭ 93 (+8.14%)
Mutual labels:  menu, floatingactionbutton
WBChainMenu
This will show horizontal menu to a UITableViewCell with chain animation
Stars: ✭ 28 (-67.44%)
Mutual labels:  custom, menu
Fabsmenu
A simple library to use a menu of FloatingActionButtons from Design Support Library that follow Material Design Guidelines
Stars: ✭ 324 (+276.74%)
Mutual labels:  menu, floatingactionbutton
Wmzdropdownmenu
🌹一个能几乎实现所有App各种类型筛选菜单的控件,可悬浮,目前已实现闲鱼/美团/Boss直聘/京东/饿了么/淘宝/拼多多/赶集网/美图外卖等等的筛选菜单,可以自由调用代理实现自己想组装的筛选功能和UI,且控件的生命周期自动管理,悬浮自动管理🌹(A control that can implement almost all types of filtering menus of all apps)
Stars: ✭ 503 (+484.88%)
Mutual labels:  custom, menu
Fab Circular Menu
A Flutter package to create a nice circular menu using a Floating Action Button.
Stars: ✭ 152 (+76.74%)
Mutual labels:  menu, floatingactionbutton
CoolSlidingMenu
A powerful menu that you can customize it。
Stars: ✭ 25 (-70.93%)
Mutual labels:  custom, menu
Dragfloatingactionbutton
一个可以随处拖曳FloatingActionButton,边缘自动吸附,可设置按钮悬浮透明度,拖曳避免阻挡界面视图无法查看。
Stars: ✭ 258 (+200%)
Mutual labels:  menu, floatingactionbutton
Persei
Animated top menu for UITableView / UICollectionView / UIScrollView written in Swift
Stars: ✭ 3,395 (+3847.67%)
Mutual labels:  custom, menu
Wmzdialog
功能最多样式最多的弹窗,支持普通/微信底部/日期/地区/日历/选择/编辑/分享/菜单/自定义弹窗等,支持多种动画,链式编程调用(Pop-up windows with the most functions and styles, support normal/WeChat bottom/date/region/calendar/select/edit/share/menu/custom pop-up windows, etc., support multiple animations, chain programming calls)
Stars: ✭ 673 (+682.56%)
Mutual labels:  custom, menu
Igldropdownmenu
An iOS drop down menu with pretty animation and easy to customize.
Stars: ✭ 1,218 (+1316.28%)
Mutual labels:  menu
Fwpopupviewoc
信手拈来的OC弹窗库:1、继承 FWPopupBaseView 即可轻松实现各种位置、动画类型的弹窗;2、新功能引导弹窗。更多弹窗场景等你来挑战,总之,想怎么弹就怎么弹!!!
Stars: ✭ 70 (-18.6%)
Mutual labels:  menu
Electron Tray Window
🖼️ Generates custom tray windows with Electron.js
Stars: ✭ 71 (-17.44%)
Mutual labels:  menu
Floatingactionbuttonspeeddial
A Floating Action Button Speed Dial implementation for Android that follows the Material Design specification (https://material.io/components/buttons-floating-action-button#types-of-transitions)
Stars: ✭ 1,164 (+1253.49%)
Mutual labels:  floatingactionbutton
React Planet
A react lib for building circular menus in a very easy and handy way.
Stars: ✭ 83 (-3.49%)
Mutual labels:  menu
Promotion Menu
RubyMotion gem allowing you to easily setup a facebook or Path style hidden slide menu easily with the ProMotion gem.
Stars: ✭ 78 (-9.3%)
Mutual labels:  menu
Guacamole Customize Loginscreen Extension
An Apache Guacamole extension to use as a template for customizing or branding the login page.
Stars: ✭ 69 (-19.77%)
Mutual labels:  custom
Popmenu
A fully customizable popup style menu for iOS 😎
Stars: ✭ 1,155 (+1243.02%)
Mutual labels:  menu
Acf To Rest Api
Exposes Advanced Custom Fields Endpoints in the WordPress REST API
Stars: ✭ 1,152 (+1239.53%)
Mutual labels:  custom

OneMoreFabMenu

Another floating action button menu with expand/collapse behavior.

Download

Android Arsenal

Example gif

What's new:

Version 1.1.1 (02/03/2018)

  • [Fix] Bug fixes
    • Main button label shows with not text when text is “” (empty)

Version 1.1.0 (01/25/2018)

  • [Feature] Add parameter in the layout to background text label
  • [Feature] Add parameter in the layout to color text label
  • [Feature] Add parameter in the layout to add label to the main button
  • [Feature] Add parameter in the layout to add action to the main button
  • [Feature] Add parameter in the layout to add drawable to the main button when opened
  • [Enhancement] Increase padding left/right of the label
  • [Enhancement] Update sample to have different example images

How to use

This library have 1 main layout param and 12 optionals

  • <app:content_options> [Required]
    • Resource "menu" file with the options that the menu will show
  • <app:color_main_button> [optional]
    • Color of the main button
  • <app:color_secondary_buttons> [optional]
    • Color of the other options buttons
  • <app:expanded_background_color> [optional]
    • Color of the background when the component expands
  • <app:rotate_main_button> [optional, default=true]
    • Flag to enable/disable the rotation of main button
  • <app:size_main_button> [optional]
    • Size of the main button. Can use the already defined size: @integer/omfm_fab_size_normal
  • <app:size_secondary_buttons> [optional]
    • Size of the secondary buttons. Can use the already defined size: @integer/omfm_fab_size_mini
  • <app:close_on_click> [optional, default=false]
    • Flag to enable/disable the close menu when some option is clicked
  • <app:label_background_color> [optional, default=white]
    • Background color of the label
  • <app:label_background_drawable> [optional]
    • If you want a drawable instead of color in the label's background
  • <app:label_text_color> [optional, default=black]
    • Color of the label's text
  • <app:enable_main_as_action> [optional, default=false]
    • Flag to enable/disable the main button as an action when the menu is expanded
  • <app:main_action_drawable> [optional, default=icon defined in the content menu file]
    • Drawable of the main button when it is set as an action.
Example of usage
   <com.dekoservidoni.omfm.OneMoreFabMenu
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        app:content_options="@menu/omfm_content_options"
        app:close_on_click="true"
        app:color_main_button="@color/colorPrimaryDark"
        app:color_secondary_buttons="@color/colorPrimary"
        app:expanded_background_color="@color/omfm_expanded_background_sample"
        app:rotate_main_button="false"
        app:size_main_button="@integer/omfm_fab_size_normal"
        app:size_secondary_buttons="@integer/omfm_fab_size_mini"
        app:label_text_color="@color/colorPrimary"
        app:enable_main_as_action="true"
        app:main_action_drawable="@mipmap/ic_launcher"/>

Menu resource example

The menu is structure from top to bottom, for example, the first one is the main button and the others will be the first option, second option and etc.

The first item don't need to have a text because only the options have labels.

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">

    <!-- First button is the initial Fab of the menu -->
    <!-- Title here can be empty if you don't to add any action in the main button -->
    <item
        android:id="@+id/main_option"
        android:icon="@drawable/ic_add_white_24px"
        android:title=""/>

    <!-- Options buttons of the Fab menu -->
    <item
        android:id="@+id/option1"
        android:icon="@drawable/ic_alarm_white_24px"
        android:title="@string/options_1" />

    <item
        android:id="@+id/option2"
        android:icon="@drawable/ic_alarm_white_24px"
        android:title="@string/options_2" />

    <item
        android:id="@+id/option3"
        android:icon="@drawable/ic_room_service_white_24px"
        android:title="@string/options_3" />

    <item
        android:id="@+id/option4"
        android:icon="@drawable/ic_room_service_white_24px"
        android:title="@string/options_4" />

</menu>

Integrating with Gradle

To integrate with your project, just add the following line to your app <build.gradle> file

compile 'com.github.dekoservidoni:omfm:1.1.1'

Important!

Please make sure your project have Kotlin support:

Top-level build.gradle:

classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.1.51"

Module build.gradle:

apply plugin: 'kotlin-android' 
apply plugin: 'kotlin-android-extensions'
dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.51"

Licence

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].