sma6871 / MeowBottomNavigation

Android Meow Bottm Navigation

Home Page:http://etebarian.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Meow Bottom Navigation

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

CAUTION : if you are Java developer and have problems with Kotlin, so check this link: https://github.com/oneHamidreza/MeowBottomNavigationJava

Download

build.gradle (project path)

buildscript {
    repositories {
        jcenter()
    }
}

build.gradle (module path)

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

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"
}

Usage

Add Meow Bottom Navigation in xml

<com.etebarian.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))

Remember that icons must be vector drawable. Add vectorDrawables.useSupportLibrary = true to your build.gradle inside defaultConfig{ ... }

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"/>
  • You can change this properties in Kotlin/Java Realtime.

Listeners

kotlin

bottomNavigation.setOnShowListener {
    // YOUR CODES
}
       
bottomNavigation.setOnClickMenuListener {
    // YOUR CODES
}

java

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

Setting One Tab

bottomNavigation.setCount(TAB_ID, STRING)

Clearing One Tab

bottomNavigation.clearCount(TAB_ID)

Clearing All Tabs

bottomNavigation.clearAllCounts(TAB_ID)

Set Default Tab

Use this function

bottomNavigation.show(TAB_ID)

About

Android Meow Bottm Navigation

http://etebarian.com


Languages

Language:Kotlin 100.0%