Android源代码学习笔记:AndroidResideMenu-master

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android源代码学习笔记:AndroidResideMenu-master相关的知识,希望对你有一定的参考价值。

使用方法:

在Activity onCreate()中

  resideMenu = new ResideMenu(this);
        resideMenu.setBackground(R.drawable.menu_background);
        resideMenu.attachToActivity(this);

        // create menu items;
        String titles[] = { "Home", "Profile", "Calendar", "Settings" };
        int icon[] = { R.drawable.icon_home, R.drawable.icon_profile, R.drawable.icon_calendar, R.drawable.icon_settings };

        for (int i = 0; i < titles.length; i++){
            ResideMenuItem item = new ResideMenuItem(this, icon[i], titles[i]);
            item.setOnClickListener(this);
            resideMenu.addMenuItem(item,  ResideMenu.DIRECTION_LEFT); // or  ResideMenu.DIRECTION_RIGHT
        }

如果您需要使用手势滑动开启/关闭菜单,请复写activity的dispatchTouchEvent(),代码如下

public boolean dispatchTouchEvent(MotionEvent ev) {
        return resideMenu.dispatchTouchEvent(ev);
    }
在某些场景下,手势滑动开启/关闭菜单可能与您的某些控件产生冲突,例如viewpager,这时您可以把viewpager添加到ignored view.请参见下节Ignored Views
  resideMenu.setMenuListener(menuListener);
    private ResideMenu.OnMenuListener menuListener = new ResideMenu.OnMenuListener() {
        @Override
        public void openMenu() {
            Toast.makeText(mContext, "Menu is opened!", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void closeMenu() {
            Toast.makeText(mContext, "Menu is closed!", Toast.LENGTH_SHORT).show();
        }
    };
禁止手势操作某个菜单方向

  resideMenu.setSwipeDirectionDisable(ResideMenu.DIRECTION_RIGHT);
Ignored Views

在某些场景下,手势滑动开启/关闭菜单可能与您的某些控件产生冲突,例如viewpager,这时您可以把viewpager添加到ignored view.

        // add gesture operation‘s ignored views
        FrameLayout ignored_view = (FrameLayout) findViewById(R.id.ignored_view);
        resideMenu.addIgnoredView(ignored_view);

这样子在ignored_view操作的区域就不允许用手势滑动操作菜单.

 

以上是关于Android源代码学习笔记:AndroidResideMenu-master的主要内容,如果未能解决你的问题,请参考以下文章

Android源代码学习笔记:android-Ultra-Pull-To-Refresh-master

Android第一行代码--学习笔记(更新中ing)

ANDROID_MARS学习笔记_S02_007_Animation第一种使用方式:代码

Android:学习笔记

android学习笔记

Android第一行代码学习笔记---手动创建活动