|
package com.demo.demo1; |
|
|
|
import android.app.Activity; |
|
import android.support.annotation.MenuRes; |
|
import android.support.v7.widget.PopupMenu; |
|
import android.view.Menu; |
|
import android.view.MenuItem; |
|
|
|
import com.aurelhubert.ahbottomnavigation.AHBottomNavigation; |
|
import com.aurelhubert.ahbottomnavigation.AHBottomNavigationItem; |
|
|
|
import java.util.ArrayList; |
|
import java.util.List; |
|
|
|
public class AHBottomNavigationAdapter { |
|
final Menu mMenu; |
|
List<AHBottomNavigationItem> navigationItems; |
|
|
|
public AHBottomNavigationAdapter(Activity activity, @MenuRes int menuRes) { |
|
PopupMenu popupMenu = new PopupMenu(activity, null); |
|
mMenu = popupMenu.getMenu(); |
|
activity.getMenuInflater().inflate(menuRes, mMenu); |
|
} |
|
|
|
public void setupWithBottomNavigation(AHBottomNavigation ahBottomNavigation) { |
|
if (navigationItems == null) |
|
navigationItems = new ArrayList<>(); |
|
else |
|
navigationItems.clear(); |
|
|
|
if (mMenu != null) { |
|
for (int i = 0; i < mMenu.size(); i++) { |
|
MenuItem item = mMenu.getItem(i); |
|
AHBottomNavigationItem navigationItem = new AHBottomNavigationItem(String.valueOf(item.getTitle()), item.getIcon()); |
|
navigationItems.add(navigationItem); |
|
} |
|
ahBottomNavigation.removeAllItems(); |
|
ahBottomNavigation.addItems(navigationItems); |
|
} |
|
} |
|
|
|
public MenuItem getMenuItem(int index) { |
|
return mMenu.getItem(index); |
|
} |
|
|
|
public AHBottomNavigationItem getNavigationItem(int index) { |
|
return navigationItems.get(index); |
|
} |
|
|
|
public Integer getPositionByMenuId(int menuId) { |
|
for (int i = 0; i < mMenu.size(); i++) { |
|
if (mMenu.getItem(i).getItemId() == menuId) |
|
return i; |
|
} |
|
return null; |
|
} |
|
} |