How to create Meow Bottom Navigation By Visibility in Android Studio #Java || #Custom Bottom_ Navigation CM Coding Lab.
#*Meow Bottom Navigation for java.*#
Step_1.
- 1.Create a new project or Open your project.
Step_2.
- 1.go to build.gradle (module:app) and add the following dependency line
- and then click on Syne Now.
build.gradle
//meow-bottom-navigation==================================
implementation 'com.etebarian:meow-bottom-navigation:1.2.0'
Step_3.
1. go to >gradle.properties(Project properties) Then add the following dependency.
gradle.properties
#Must set this line=================== android.enableJetifier=true
Step_4.
1. go to > settings.gradle(Project Setting) Then add the following dependency. and Syne Now.
in settings.gradle
//==mavenCentral()==//
jcenter()
Step_5.
1. right now go to your activity_main.xml and then add the following codes.
Add in XML
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
>
<!--LinearLayout_1======== -->
<LinearLayout
android:visibility="gone"
android:id="@+id/Home_icon"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/image_1"
android:orientation="vertical"
>
<TextView
android:id="@+id/button"
android:text="Home"
android:textStyle="bold"
android:textColor="#FF5722"
android:textSize="20sp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
/>
</LinearLayout>
<!--LinearLayout_1======== -->
<!--LinearLayout_2======== -->
<LinearLayout
android:visibility="gone"
android:id="@+id/Search_icon"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/image_2"
android:orientation="vertical"
>
<TextView
android:text="Search"
android:textStyle="bold"
android:textColor="#FFEB3B"
android:textSize="20sp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
/>
</LinearLayout>
<!--LinearLayout_2======== -->
<!--LinearLayout_3======== -->
<LinearLayout
android:visibility="gone"
android:id="@+id/Profile_icon"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/image_3"
android:orientation="vertical"
>
<TextView
android:text="Profile"
android:textStyle="bold"
android:textColor="@color/teal_200"
android:textSize="20sp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
/>
</LinearLayout>
<!--LinearLayout_3======== -->
<!-- MeowBottomNavigation start-->
<com.etebarian.meowbottomnavigation.MeowBottomNavigation
android:id="@+id/bnv_Main"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:mbn_backgroundBottomColor="@color/teal_700"
app:mbn_circleColor="#ffffff"
android:layout_gravity="bottom"
app:mbn_countBackgroundColor="#ff6f00"
app:mbn_countTextColor="#ffffff"
app:mbn_defaultIconColor="#90a4ae"
app:mbn_rippleColor="#2f424242"
app:mbn_selectedIconColor="#3c415e"
app:mbn_shadowColor="#1f212121"
android:layout_alignParentBottom="true"/>
<!-- MeowBottomNavigation end-->
</RelativeLayout>
Step_6.
1. now go to your MainActivity and then add the following codes.
In Java
import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentTransaction;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.Toast;
import com.etebarian.meowbottomnavigation.MeowBottomNavigation;
import kotlin.Unit;
import kotlin.jvm.functions.Function1;
public class MainActivity extends AppCompatActivity {
//=======================================
private MeowBottomNavigation Meow_Nav;
//=======================================
LinearLayout Home_icon, Search_icon,Profile_icon;
//===============================================================
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//for hiding actionber!============================
ActionBar actionBar = getSupportActionBar();
actionBar.hide();
//=======================================
Meow_Nav = findViewById(R.id.bnv_Main);
Meow_Nav.add(new MeowBottomNavigation.Model(1,R.drawable.baseline_home_24));
Meow_Nav.add(new MeowBottomNavigation.Model(2,R.drawable.baseline_image_search_24));
Meow_Nav.add(new MeowBottomNavigation.Model(3,R.drawable.baseline_person_24));
//===============================================================
Home_icon = findViewById(R.id.Home_icon);
Search_icon = findViewById(R.id.Search_icon);
Profile_icon = findViewById(R.id.Profile_icon);
//===============================================================
//=======================================
Meow_Nav.show(1,true);
Home_icon.setVisibility(View.VISIBLE);
//=setOnClickMenuListener======================================
Meow_Nav.setOnClickMenuListener(new Function1<MeowBottomNavigation.Model, Unit>(){@Override public Unit invoke(MeowBottomNavigation.Model model) { switch (model.getId()){ //=case 1============================================================== case 1: Home_icon.setVisibility(View.VISIBLE); Search_icon.setVisibility(View.GONE); Search_icon.setVisibility(View.GONE); //Toast.makeText(MainActivity.this,"Hello! Home is Open.",Toast.LENGTH_LONG).show(); break; //=case 2============================================================== case 2: Home_icon.setVisibility(View.GONE); Search_icon.setVisibility(View.VISIBLE); Profile_icon.setVisibility(View.GONE); //Toast.makeText(MainActivity.this,"Hello! Search is Open.",Toast.LENGTH_LONG).show(); break; //=case 3============================================================== case 3: Home_icon.setVisibility(View.GONE); Search_icon.setVisibility(View.GONE); Profile_icon.setVisibility(View.VISIBLE); //Toast.makeText(MainActivity.this,"Hello! Profile is Open.",Toast.LENGTH_LONG).show(); break; //=============================================================== } return null; } }); }//======================================= }



No comments