自定义DropDownMenu菜单

JayFang1993 / DropDownMenu的基础上进行修改,最后的到自己想要的效果

本来的效果:

而我最后实现的效果是:

我们先来分析一下DropDownMenu的源代码

需要改动的地方

1.Menu下面多了一个横线

2.点击变换按钮之后,按钮下面的横线以及字体,还有右边的arrow都变成红色,并且再次点击同一个menu,仍然是红色

解决横线问题

首先在menu_item中增加一个View

 1 <View
 2         android:id="@+id/menu_divider"
 3         android:layout_width="35dp"
 4         android:layout_height="4dp"
 5         android:layout_alignLeft="@id/tv_menu_title"
 6         android:layout_alignRight="@id/tv_menu_title"
 7         android:layout_below="@id/tv_menu_title"
 8         android:layout_centerHorizontal="true"
 9         android:layout_marginTop="4dp"
10         android:background="@color/divider_menu"
11         android:visibility="invisible" />

在DropDownMenu修改

增加变量

1 private boolean mShowMenuDivider;

在init方法中设置mShowMenuDivider = true;

为了当Menu点击选项变化时,改变字体颜色和显示横线,我重写了OnMenuSelectedListener用于监听选择的主Menu改变事件,又增加了一个OnMenuItemSelectedListener监听器,用于监听Menu展开后的点击Item事件

public interface OnMenuSelectedListener {
    public void OnMenuChanged(List<ImageView> mIvMenuArrow, View view, int nowRowIndex);

}

本来我没有加mIvMenuArrow这个参数的,后面会讲为什么增加这个参数

在MainActivity中实现OnMenuSelectedListener接口,重写onMenuChanged方法

时间: 2024-10-08 23:04:27

自定义DropDownMenu菜单的相关文章

【连载】Bootstrap开发漂亮的前端界面之自定义右键菜单

连载: 1<教你用Bootstrap开发漂亮的前端界面> 2.<Bootstrap开发漂亮的前端界面之实现原理> 网页中的自定义右键菜单越来越普遍,自定义右键菜单可以增强用户体验,让用户使用软件更加的简便,今天我们就来基于Bootstrap来开发自己的自定义右键菜单. 一.首先,准备好自定义菜单,供单击右键展示: 菜单默认不可见,可以通过 style="display:block" 进行调试预览; <ul class="dropdown-menu

自定义右键菜单,禁用浏览器自带的右键菜单[右键菜单实现--Demo]

许多从事Web开发的会发现有些事,我们需要禁用浏览器本事自带的右键菜单,而实现自定义的右键菜单下面我们也来实现一个自定义的右键菜单 首先来创建JSP页面 1 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> 2 <html> 3 <head> 4 <title>右键菜单</title> 5 <s

自定义右键菜单

自定义右键菜单 技术一般水平有限,有什么错的地方,望大家指正. 自定义右键菜单,对于一些ERP系统,功能操作比较多,所以我们通常把常用的几个功能放在自定义的右键菜单里方便用户使用. 实现自定义菜单很简单,首先我们要屏蔽原始的右键菜单,自定义菜单出现在鼠标的位置,点击隐藏自定义菜单,过程就是这样的. *{margin:0;padding:0} a{text-decoration:none} ul li{list-style:none} .menu{border:1px solid black;bo

阻止右键菜单(阻止默认事件)&amp;&amp;跟随鼠标移动(大图展示)&amp;&amp;自定义右键菜单

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

SharePoint 2013:自定义ECB菜单项的添加

本文分别介绍了两种常用的添加ECB菜单项的方式. 声明式创建 这也是微软最佳实践推荐的方式.在VS中创建一个SharePoint空解决方案,并添加一个“空元素”类型的SPI. 在Elements.xml中,定义一个CustomAction,重点关注一下其中高亮部分的属性(本例在文档内容类型的项上添加了一个菜单项,点击导航到一个自定义应用程序页面,并传递项所在的列表的Id作为参数): 添加到Feature,并部署.效果如下: 服务器对象模型创建 这里会用到Feature的事件处理程序.本例同时还演

SharePoint 2013 自定义扩展菜单(二)

原文:SharePoint 2013 自定义扩展菜单(二) 接博文<SharePoint 2013 自定义扩展菜单>,多加了几个例子,方便大家理解. 例七 列表设置菜单扩展(listedit.aspx) 扩展效果 XML描述 <CustomAction Id="CustomAction1" Description="博客园-霖雨" Title="博客园-霖雨" GroupId="GeneralSettings"

SharePoint 2013 自定义扩展菜单

原文:SharePoint 2013 自定义扩展菜单 在对SharePoint进行开发或者功能扩展的时候,经常需要对一些默认的菜单进行扩展,以使我们开发的东西更适合SharePoint本身的样式.SharePoint的各种功能菜单,像网站设置.Ribbon.列表里的下拉等等,都是一样原理的,都是XML+JS脚本实现的,如果想实现这些功能,只需要一个XML发布成Feature,并在网站功能启用,即可. 其实,关于这个并没有什么过多可以说的东西,大家在实践中,渐渐理解了.下面,我就举几个简单的例子,

轻量级web富文本框——wangEditor使用手册(3)——如何自定义配置菜单

1. 引言 上一节<轻量级web富文本框——wangEditor使用手册(2)——扩展一个“缩进”功能>最后提到,新建的菜单不能只是默认放在菜单的后面,应该可以自定义的放在当前菜单栏中的任何位置.这一节就讲述wangEditor目前支持的几种自定义配置菜单的使用. 下载地址:https://github.com/wangfupeng1988/wangEditor demo演示:http://www.cnblogs.com/wangfupeng1988/p/4185508.html 交流QQ群:

【jQuery】smartMenu右键自定义上下文菜单插件(似web QQ)

一.这是什么样的一个插件 浏览器默认的右键选项有时候并不是我们所需要的,我们希望浏览器的右键选项菜单更智能,可以灵活自定义.比较有代表性的就是web QQ,例如下面截图: QQ邮箱中也是有此功能. 显然这种东西貌似还是蛮强大与实用的,于是我就抽空写了个可以右键自定义上下文菜单的jQuery插件 – smartMenu,直接一行代码绑定,就可以让我们轻松实现页面元素的自定义上下文功能.至于具体如何实用与绑定,就是本文的的主要内容,也即是下文即 将介绍的内容. 二.插件效果.大小.使用等简介 效果首