如何在android抽屉效果中显示自定义内容
推荐于2016-06-22 · 知道合伙人数码行家
知道合伙人数码行家
向TA提问 私信TA
本项目重点在界面特效上,主要就是做抽屉的拖动,抽屉中的gridview布局(注意不是所有gridview的item都一样的哦)以及带动画的弹出菜单popupwindow。
主要功能是实现对笔记数据的新建(主页面上),修改(单击gridview中的item),删除(长按gridview中的item),其中白色背景的item不能操作,只起到显示本月笔记总数的作用,这种效果主要是在gridview的适配器中的getView()方法中完成。
笔记数据的存储采用的xml格式,解析xml使用的是android自带的pull解析机制完成。读取使用XmlPullParser类,存储使用XmlSerializer类。
抽屉实习原理:默认时候抽屉显示在屏幕的中部位置,往上拖动能达到标题栏下面的位置。其实这个效果是完全用布局参数控制的,抽屉的根控件其实是一个LinearLayout布局,但是注意它的父控件必须是RelativeLayout或者是FrameLayout,我使用的相对布局,这样通过动态改变抽屉的相对布局参数就可以实现抽屉的移动。当然实现拖动效果少不了使用到onTouch事件,在down,move,up事件中做处理就可以实现想要的效果。
// 取得抽屉的相对布局参数
RelativeLayout.LayoutParams param = (RelativeLayout.LayoutParams) slidigLayout.getLayoutParams();
// 动态调整抽屉的位置
slidigLayout.setLayoutParams(param);
第二个是模仿ViewPager实现屏幕切换效果,并且支持标题指示器。我使用了开源的ViewFlow项目 来改编的。具体效果