最近QQ Android最新版本5.0,在侧滑菜单中,不是像平时使用的Sildermenu,
点击侧滑动画效果感觉有点高尚大,模仿IOS风格的侧边侧滑菜单,效果相当不错,
之前在IOS平台见到过这样的效果,于是我就试着查找一下怎么实现:
先看下IOS平台下的实现效果:
IOS平台下该控件的开源地址:https://github.com/romaonthego/RESideMenu
那在Android平台的呢?
经过我的一番搜索,终于在Github中发现个Android平台下的开源项目,叫ResideMenu 。
项目地址:https://github.com/SpecialCyCi/AndroidResideMenu
ResideMenu的实现原理:
点击按钮画面缩小为50%同时向右侧滑动至中间位置,也可以向右滑动,然后那几个个菜单项就会带着动画出现,动画这里用的是nineoldandroids的兼容包,在整个过程中有三个东西要理解,一是菜单view,二是内容view,还有就是承载他们的父view,在点击后调用AnimatorSet组合动画把内容view向右改变,然后在把菜单view加进来。
代码实现:
1
2
3
4
5
6
7
8
9
10
11
12
|
// attach to current activity;
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);
}
|
看我的实现效果:酷比啦!!!是不是很高大上呢