All Projects → oneHamidreza → Meowbottomnavigation

oneHamidreza / Meowbottomnavigation

Android Meow Bottm Navigation

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Meowbottomnavigation

Smartmaterialspinner
The powerful android spinner library for your application
Stars: ✭ 108 (-88.16%)
Mutual labels:  library, material
Msvsearch
Material Search View
Stars: ✭ 148 (-83.77%)
Mutual labels:  library, material
Material About Library
Makes it easy to create beautiful about screens for your apps
Stars: ✭ 1,099 (+20.5%)
Mutual labels:  library, material
Materialshadows
Material Shadows for android : A library for supporting convex material shadows
Stars: ✭ 2,145 (+135.2%)
Mutual labels:  library, material
Framework7
Full featured HTML framework for building iOS & Android apps
Stars: ✭ 16,560 (+1715.79%)
Mutual labels:  library, material
Textfieldboxes
Material Design text field that comes in a box, based on (OLD) Google Material Design guidelines.
Stars: ✭ 760 (-16.67%)
Mutual labels:  library, material
Blazorise
Blazorise is a component library built on top of Blazor with support for CSS frameworks like Bootstrap, Bulma, AntDesign, and Material.
Stars: ✭ 2,103 (+130.59%)
Mutual labels:  library, material
Kau
An extensive collection of Kotlin Android Utils
Stars: ✭ 182 (-80.04%)
Mutual labels:  library, material
Material Backdrop
A simple solution for implementing Backdrop pattern for Android
Stars: ✭ 221 (-75.77%)
Mutual labels:  library, material
Tutoshowcase
A simple and Elegant Showcase view for Android
Stars: ✭ 499 (-45.29%)
Mutual labels:  library, material
Matter
Material Design Components in Pure CSS. Materializing HTML at just one class per component 🍰
Stars: ✭ 888 (-2.63%)
Mutual labels:  library, material
Serf
Mirror of Apache Serf
Stars: ✭ 15 (-98.36%)
Mutual labels:  library
Cordova Plugin Camera
Apache Cordova Plugin camera
Stars: ✭ 879 (-3.62%)
Mutual labels:  library
Androidlibs
🔥正在成为史上最全分类 Android 开源大全~~~~(长期更新 Star 一下吧)
Stars: ✭ 7,148 (+683.77%)
Mutual labels:  library
Timesheet.js
JavaScript library for HTML5 & CSS3 time sheets
Stars: ✭ 6,881 (+654.5%)
Mutual labels:  library
Belogging
Easy and opinionated logging configuration for Python apps
Stars: ✭ 20 (-97.81%)
Mutual labels:  library
Eglo
EGL/X11 Abstraction Library for Pocket C.H.I.P
Stars: ✭ 15 (-98.36%)
Mutual labels:  library
Smelte
UI framework with material components built with Svelte and Tailwind CSS
Stars: ✭ 871 (-4.5%)
Mutual labels:  material
Omgl
Pythonic OpenGL Bindings
Stars: ✭ 13 (-98.57%)
Mutual labels:  library
Printcess
Haskell pretty printing library supporting indentation, mixfix operators, and automatic line breaks.
Stars: ✭ 13 (-98.57%)
Mutual labels:  library

Meow Bottom Navigation

A simple & curved & material bottom navigation for Android written in Kotlin with ♥ .

Download

Update your build.gradle (project path) like below :

buildscript {
    repositories {
        jcenter()
    }
}

Update your build.gradle (module path) like below :

dependencies {
  implementation 'com.etebarian:meow-bottom-navigation:1.3.1'
}

Use androidx by adding this lines to gradle.properties. If you want more info, just google AndroidX.

android.useAndroidX=true
android.enableJetifier=true

If you want to add this library to a JAVA Project, you must add kotlin library to build.gradle.

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.61"
}

😍 Donate & Support

We are developing this framework in open source community without financial planning but the maintenance & preparing updates at periodic times is Time-consuming. If you like this project and you want to give us peace of mind, you can support us by clicking this button :

Usage

Add Meow Bottom Navigation in you layout xml file.

<meow.meowbottomnavigation.MeowBottomNavigation
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>

Add menu items in code.

val bottomNavigation = findView(R.id.bottomNavigation)
bottomNavigation.add(MeowBottomNavigation.Model(1, R.drawable.ic_home))
bottomNavigation.add(MeowBottomNavigation.Model(2, R.drawable.ic_explore))
bottomNavigation.add(MeowBottomNavigation.Model(3, R.drawable.ic_message))

Add vectorDrawables.useSupportLibrary = true to your build.gradle inside defaultConfig{ ... } to use vector drawable icons.

Customization

<com.etebarian.meowbottomnavigation.MeowBottomNavigation
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:mbn_circleColor="#ffffff"
    app:mbn_backgroundBottomColor="#ffffff"
    app:mbn_countBackgroundColor="#ff6f00"
    app:mbn_countTextColor="#ffffff"
    app:mbn_countTypeface="fonts/SourceSansPro-Regular.ttf"
    app:mbn_defaultIconColor="#90a4ae"
    app:mbn_rippleColor="#2f424242"
    app:mbn_selectedIconColor="#3c415e"
    app:mbn_shadowColor="#1f212121"
    app:mbn_hasAnimation="true"    
/>
  • You can change this properties in Kotlin/Java Realtime⌚.

Listeners

Use setOnShowListener() function to access when a cell has been shown.

bottomNavigation.setOnShowListener {
    // YOUR CODES
}

Use setOnClickMenuListener() function to access when a cell has been clicked.

bottomNavigation.setOnClickMenuListener {
    // YOUR CODES
}

If you are Java Developer, use this examples :

bottomNavigation.setOnClickMenuListener(new Function1<MeowBottomNavigation.Model, Unit>() {
            @Override
            public Unit invoke(MeowBottomNavigation.Model model) {
                // YOUR CODES
                return null;
            }
        });

bottomNavigation.setOnShowListener(new Function1<MeowBottomNavigation.Model, Unit>() {
            @Override
            public Unit invoke(MeowBottomNavigation.Model model) {
                // YOUR CODES
                return null;
            }
        });

Counter Badge

Set counter badge on a specific cell by setCount(Int,String).

bottomNavigation.setCount(CELL_ID, YOUR_STRING)

Clear counter badge on a specific cell by clearCount(Int).

bottomNavigation.clearCount(CELL_ID)

Clear all counter badges on a specific cell by clearCount(Int).

bottomNavigation.clearAllCounts(TAB_ID)

Set Default CELL

Use this function :

bottomNavigation.show(CELL_ID)
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].