Advertisement
Guest User

Slide_Navigation_Main.java

a guest
Dec 29th, 2017
249
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.31 KB | None | 0 0
  1. package com.androidmkab.residemenu;
  2.  
  3. import android.os.Bundle;
  4. import android.support.v4.app.Fragment;
  5. import android.support.v4.app.FragmentActivity;
  6. import android.support.v4.app.FragmentTransaction;
  7. import android.view.View;
  8. import android.widget.Toast;
  9.  
  10.  
  11. public class Slide_Navigation_Main extends FragmentActivity implements View.OnClickListener{
  12.  
  13.     private ResideMenu resideMenu;
  14.     private Slide_Navigation_Main mContext;
  15.     private ResideMenuItem itemHome;
  16.     private ResideMenuItem itemProfile;
  17.     private ResideMenuItem itemCalendar;
  18.     private ResideMenuItem itemSettings;
  19.     private ResideMenuItem itemMessage;
  20.     private ResideMenuItem itemFriends;
  21.     private ResideMenuItem itemEvents;
  22.  
  23.     /**
  24.      * Called when the activity is first created.
  25.      */
  26.     @Override
  27.     public void onCreate(Bundle savedInstanceState) {
  28.         super.onCreate(savedInstanceState);
  29.         setContentView(R.layout.slide_navigation_main);
  30.         mContext = this;
  31.         setUpMenu();
  32.         if( savedInstanceState == null )
  33.             changeFragment(new HomeFragment());
  34.     }
  35.  
  36.     private void setUpMenu() {
  37.  
  38.         // attach to current activity;
  39.         resideMenu = new ResideMenu(this);
  40.        resideMenu.setUse3D(true);resideMenu.setBackground(R.drawable.blue);
  41.         resideMenu.attachToActivity(this);
  42.         resideMenu.setMenuListener(menuListener);
  43.         //valid scale factor is between 0.0f and 1.0f. leftmenu'width is 150dip.
  44.        // resideMenu.setScaleValue(0.6f);
  45.  
  46.         // create menu items;
  47.         itemHome     = new ResideMenuItem(this, R.drawable.ic_home_dark,     "Home");
  48.         itemProfile  = new ResideMenuItem(this, R.drawable.ic_dark_profile,  "Profile");
  49.         itemCalendar = new ResideMenuItem(this, R.drawable.icon_calendar, "Calendar");
  50.         itemSettings = new ResideMenuItem(this, R.drawable.icon_settings, "Settings");
  51.         itemProfile  = new ResideMenuItem(this, R.drawable.ic_dark_profile,  "Profile");
  52.         itemMessage  = new ResideMenuItem(this, R.drawable.ic_dark_message,  "Message");
  53.         itemFriends  = new ResideMenuItem(this, R.drawable.ic_dark_friends,  "Friends");
  54.         itemEvents  = new ResideMenuItem(this, R.drawable.ic_dark_events,  "Events");
  55.  
  56.         itemHome.setOnClickListener(this);
  57.         itemProfile.setOnClickListener(this);
  58.         itemCalendar.setOnClickListener(this);
  59.         itemSettings.setOnClickListener(this);
  60.         itemMessage.setOnClickListener(this);
  61.         itemFriends.setOnClickListener(this);
  62.         itemEvents.setOnClickListener(this);
  63.  
  64.  
  65.         resideMenu.addMenuItem(itemHome, ResideMenu.DIRECTION_LEFT);
  66.         resideMenu.addMenuItem(itemProfile, ResideMenu.DIRECTION_LEFT);
  67.         resideMenu.addMenuItem(itemMessage, ResideMenu.DIRECTION_LEFT);
  68.         resideMenu.addMenuItem(itemFriends, ResideMenu.DIRECTION_LEFT);
  69.         resideMenu.addMenuItem(itemEvents, ResideMenu.DIRECTION_LEFT);
  70.  
  71.         // You can disable a direction by setting ->
  72.         // resideMenu.setSwipeDirectionDisable(ResideMenu.DIRECTION_RIGHT);
  73.  
  74.         findViewById(R.id.title_bar_left_menu).setOnClickListener(new View.OnClickListener() {
  75.             @Override
  76.             public void onClick(View view) {
  77.                 resideMenu.openMenu(ResideMenu.DIRECTION_LEFT);
  78.             }
  79.         });
  80. //        findViewById(R.id.title_bar_right_menu).setOnClickListener(new View.OnClickListener() {
  81. //            @Override
  82. //            public void onClick(View view) {
  83. //                resideMenu.openMenu(ResideMenu.DIRECTION_RIGHT);
  84. //            }
  85. //        });
  86.     }
  87.  
  88. //    @Override
  89. //    public boolean dispatchTouchEvent(MotionEvent ev) {
  90. //        return resideMenu.dispatchTouchEvent(ev);
  91. //    }
  92.  
  93.     @Override
  94.     public void onClick(View view) {
  95.  
  96.         if (view == itemHome){
  97.             changeFragment(new HomeFragment());
  98.         }else if (view == itemProfile){
  99.             changeFragment(new ProfileFragment());
  100.         }else if (view == itemMessage){
  101.             changeFragment(new MessageFragment());
  102.         }else if (view == itemFriends){
  103.             changeFragment(new FriendsFragment());
  104.         }else if (view == itemEvents){
  105.             changeFragment(new EventFragment());
  106.         }else if (view == itemCalendar){
  107.           //  changeFragment(new CalendarFragment());
  108.         }else if (view == itemSettings){
  109.             changeFragment(new SettingsFragment());
  110.         }
  111.  
  112.         resideMenu.closeMenu();
  113.     }
  114.  
  115.     private ResideMenu.OnMenuListener menuListener = new ResideMenu.OnMenuListener() {
  116.         @Override
  117.         public void openMenu() {
  118.             //Toast.makeText(mContext, "Menu is opened!", Toast.LENGTH_SHORT).show();
  119.         }
  120.  
  121.         @Override
  122.         public void closeMenu() {
  123.             //Toast.makeText(mContext, "Menu is closed!", Toast.LENGTH_SHORT).show();
  124.         }
  125.     };
  126.  
  127.     private void changeFragment(Fragment targetFragment){
  128.         resideMenu.clearIgnoredViewList();
  129.         getSupportFragmentManager()
  130.                 .beginTransaction()
  131.                 .replace(R.id.main_fragment, targetFragment, "fragment")
  132.                 .setTransitionStyle(FragmentTransaction.TRANSIT_FRAGMENT_FADE)
  133.                 .commit();
  134.     }
  135.  
  136.     // What good method is to access resideMenu?
  137.     public ResideMenu getResideMenu(){
  138.         return resideMenu;
  139.     }
  140. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement