使用popwindows实现Actionbar右上角的小菜单
2015-09-19 11:44
465 查看
近日在开发过程中使用popwindows做了一套仿Actionbar上的小菜单,感觉效果还不错,就对其做了一个简单的封装,方便外部调用,由于实现也不是很复杂,所以在这里就不讲解代码了,下来简单描述一下使用场景及步骤。
源码下载地址:点击下载
使用场景:
由于很多情况下我们的应用需要一个个性化的标题栏,除了自定义actionbar以外,还有一个更为简便的方法就是将actionbar直接隐藏,自己用布局仿出来一个actionbar,这样在放置图片文字等控件以及在设置其位置大小等属性时都有很大的灵活性,但是如此一来也失去了actionbar上自带的可隐藏的栏目项,即我们非常熟悉的微信右上角的那种小菜单,所以在这里我们使用popwindows来实现这样的一种效果。
使用步骤:
1、在需要添加该菜单的布局对应的类上引用poplistener接口,实现以下四种方法:
2、声明并初始化封装类
另外,在弹出以后点击小菜单以外的任何地方都可以使小菜单收回。
实现的截图如下:
源码下载地址:点击下载
使用场景:
由于很多情况下我们的应用需要一个个性化的标题栏,除了自定义actionbar以外,还有一个更为简便的方法就是将actionbar直接隐藏,自己用布局仿出来一个actionbar,这样在放置图片文字等控件以及在设置其位置大小等属性时都有很大的灵活性,但是如此一来也失去了actionbar上自带的可隐藏的栏目项,即我们非常熟悉的微信右上角的那种小菜单,所以在这里我们使用popwindows来实现这样的一种效果。
使用步骤:
1、在需要添加该菜单的布局对应的类上引用poplistener接口,实现以下四种方法:
@Override public void clickzhengzxu() { // TODO Auto-generated method stub Toast.makeText(this, "正序", 0).show(); } @Override public void clickdaoxu() { // TODO Auto-generated method stub Toast.makeText(this, "倒序", 0).show(); } @Override public void clickdelete() { // TODO Auto-generated method stub Toast.makeText(this, "删除", 0).show(); } @Override public void clickadd() { // TODO Auto-generated method stub Toast.makeText(this, "新增", 0).show(); }在这四个方法中你可以添加每个菜单项单击后所要实现的内容。
2、声明并初始化封装类
poplist_for4 pl4=new poplist_for4();3、在oncreate方法中绑定接口并调用封装类方法
pl4.pl=this; //指定封装类中的接口即为当前接口 pl4.initpoplist(this);//调用封装类中的初始化方法 more.setOnClickListener(new OnClickListener() {//more为你自己右上角要点击的控件 @Override public void onClick(View v) { pl4.addpoplist(more);//调用封装类中添加菜单的方法,实现点击more弹出菜单 } });至此你的右上角小菜单就已经实现了,如果需要更改菜单选项,阅读源码后自己进行定制就行。
另外,在弹出以后点击小菜单以外的任何地方都可以使小菜单收回。
实现的截图如下:
相关文章推荐
- LINK : fatal error LNK1104: cannot open file "mfc42u.lib"
- linux 信号
- Linux修改eth2到eth0
- aop的需求分析:错误异常分析
- 错误Unable to load native-hadoop library for your platform...
- WebRTC VideoEngine超详细教程(二)——集成OPENH264编解码器
- Linux系统定时任务
- 组建自己的Linux-04启动Linux并测试
- Linux初学——管理文件与目录(上)
- linux下软件安装的方法
- Linux Shell
- (转)ECSHOP给分类添加代表图
- 【转】【调试技巧】Linux环境下段错误的产生原因及调试方法小结
- 安卓PopupWindow使用详解与源码分析(附项目实例)
- 通过XShell链接virtualbox中的CentOS
- ESP8266 Linux开发环境搭建
- 程序员不常用Linux命令集
- hadoop配置及无法移动文件到hdfs故障解析
- Hadoop 之Hbase命令
- shell sed实例详解