كود تصميم قائمة للتنقل بين الفرجمنت اندرويد ستوديو

طريقة انشاء قائمة للانتقال بين الفرجمنت بالفيوديو اتبع الخطوات حسب الفيديو والكود موجود بالاسفل

line

 

 

line

نقوم باضافة المكتبه في  build.gradle

    implementation 'com.android.support:design:27.1.1'

في  activitymain

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

    <android.support.design.widget.BottomNavigationView
        android:id="@+id/main_botom"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
app:menu="@menu/new_menu"
        android:background="@color/colorPrimaryDark">

    </android.support.design.widget.BottomNavigationView>

    <FrameLayout
        android:id="@+id/main_frame"
        android:layout_width="match_parent"
        android:layout_height="match_parent"

        android:layout_alignParentTop="true">

    </FrameLayout>

</RelativeLayout>

وفي MainActivity.java

package com.zomemax.games.test;

import android.support.annotation.NonNull;
import android.support.design.widget.BottomNavigationView;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MenuItem;
import android.widget.FrameLayout;

public class MainActivity extends AppCompatActivity {
    BottomNavigationView bottomNavigationView;
    FrameLayout frameLayout;
    HomeFragment homeFragment;
    MessageFragment messageFragment;
    NotificationFragment notificationFragment;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        homeFragment = new HomeFragment();
        notificationFragment = new NotificationFragment();
        messageFragment = new MessageFragment();


        bottomNavigationView = (BottomNavigationView)findViewById(R.id.main_botom);
        frameLayout = (FrameLayout)findViewById(R.id.main_frame);

        bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
            @Override
            public boolean onNavigationItemSelected(@NonNull MenuItem item) {
                switch (item.getItemId()){
                    case R.id.home_btn:

                        getFragment(homeFragment);
                    return true;
                   case R.id.message_btn:

                        getFragment(messageFragment);
                  return true;
                   case R.id.notification_btn:

                       getFragment(notificationFragment);
                    return true;


default:

    return false;
                }

            }

            private void getFragment(Fragment fragment) {
                FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
                fragmentTransaction.replace(R.id.main_frame,fragment);
                fragmentTransaction.commit();


            }
        });
    }
}

ثم نقوم بانشاء menu باسم new_menu ونكتب فيها الكود التالي

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

    <item
        android:icon="@drawable/home_black_24dp"
        android:id="@+id/home_btn"
        android:title="Home" />
    <item
        android:icon="@drawable/message_black_24dp"
        android:id="@+id/message_btn"
        android:title="Message" />
    <item
android:icon="@drawable/notifications_black_24dp"
        android:id="@+id/notification_btn"
        android:title="Notification" />
</menu>

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

*