导致事件的最深嵌套元素是事件的目标。你可以通过event.stopPropagation停止冒泡
导航视图NavigationView 很多App都有个人中心的侧滑菜单,通常在页面左侧边缘右拉时,即可弹出个人中心的菜单页面。...setNavigationItemSelectedListener : 设置菜单项的选择监听器。...需实现接口OnNavigationItemSelectedListener的方法onNavigationItemSelected,该方法在点击具体的菜单项时触发。...比如下面几点界面调整,NavigationView就无法实现: 1、不能动态调整菜单项的个数与内容。...虽说是自定义,其实也没这么复杂,只需把布局文件中原来NavigationView的节点位置换成ListView即可,使用ListView就能随意定制菜单项的布局和风格了。
2.2.1 menu是用来在NavigationView中显示具体的菜单项的; 为Menu resource file;...menu是用来在NavigationView中显示具体的菜单项的; headerLayout则是用来在NavigationView中显示头部布局的。...; 那么下面我们来看一下这些菜单项吧。...这里一共定义了5个item, 分别使用 android:id属性指定菜单项的id, android:icon属性指定菜单项的图标, android:title属性指定菜单项显示的文字。...接着调用了setNavigationItemSelectedListener()方法来设置一个菜单项选中事件的监听器,当用户点击了任意菜单项时,就会回调到onNavigationItemSelected
常见按钮点击 a、单击事件,主要用于Button和ImageButton控件,布局视图与TextView、ImageView控件用的也比较多。...但不管是onClick还是onLongClick都要在松开后,才会调用相应的单击或者长按函数,而且不知道按下的是什么键,所以有时不能满足比较精细的事件要求。...列表点击 a、单项选择事件,一般用于Spinner控件,在某个列表元素被选中时触发。...,菜单无需注册监听器即可响应点击事件,相关的点击处理方法说明如下:onMenuItemSelected : 在菜单项选择时调用,其内部做分支判断,如果是选项菜单,则调用onOptionsItemSelected...onOptionsItemSelected : 在选项菜单的菜单项选中时调用。onContextItemSelected : 在上下文菜单的菜单项选中时调用。
这一次,导航是由抽屉式导航栏中的菜单项触发的 当用户点击 DrawerLayout 中的菜单项时,应用会导航至和那些菜单项关联的目的地。...其实我们本可以查看整个应用的层次结构 (而且我也十分鼓励大家这么做,这有助于可视化标准视图层级中所发生的事),但是我只想选择几个特定的视图来解释。...NavigationView ?...应用展示了 NavigationView (抽屉式导航栏) 覆盖在 activity 内容上方 接下来是 NavigationView,它是一个从左边划入的抽屉式导航栏。...NavigationView 其中一个很酷的特性是,您可以使用菜单项的 ID 自动地导航到对应菜单项关联的目的地,从而避免了手动创建基于菜单选择的重复代码。
而在 DrawerLayout 没诞生之前,需求中需要实现侧滑导航效果时,我们通常会选择去选择一些成熟的第三方开源库(如最有名的 SlidingMenu)来实现类似的效果。...DrawerLayout的监听事件 new DrawerLayout.DrawerListener(){…} Google为我们提供了DrawerLayout常用的API,比如打开或者关闭侧滑栏、控制侧滑栏的方向、设置滑动时渐变的阴影颜色和监听滑动事件等...app:menu接收一个menu,作为导航菜单的菜单项,几乎是必选项,不然这个控件就失去意义了。但也可以在运行时动态改变menu属性。...用于NavigationView的典型menu文件,应该是一个可选中菜单项的集合。其中checked=”true”的item将会高亮显示,这可以确保用户知道当前选中的菜单项是哪个。...比 NavigationView 更好的选择 MaterialDrawer ? ?
这是第二个关于导航 (Navigation) 的 MAD Skills 系列,如果您想回顾过去发布的内容,请参考下面链接查看: 导航组件概览 导航到对话框 在应用中导航时使用 SafeArgs 使用深层链接导航...要启用它,需要在 onOptionsItemSelected() 函数中,为被选择的菜单项调用 onNavDestinationSelected() 函数,并传入 navController。...findNavController(R.id.nav_host_fragment) ) || super.onOptionsItemSelected(item) } 现在导航控制器可以 "支配" 菜单项了...比如,当您在最顶层的目的页面时,就不会显示回退按钮,因为没有更高层级的页面。 默认情况下,您应用的最初页面是唯一的最顶层目的页面,但是您也可以定义多个最顶层目的页面。...我需要添加 NavigationView,并且将 nav_drawer_menu 设置为 NavigationView 的 menu 属性。
选择多张图片作为菜单选项的图标,并将它们放在drawable目录下。...首先获取NavigationView的实例,然后调用它的setCheckedItem函数将”照片”菜单项设置为默认选中。...接着调用setNavigationItemSelectedListener函数来设置菜单项选中事件监听器。当用户点击了菜单项时,就会回调onNavigationItemSelected函数。...工具栏和滑动菜单上的菜单项,仅实现了简单的演示功能,结合前面的知识,完善这些菜单项的功能。...默认情况下选择的是Free,即当前创建的账户在github上只能创建开源库。
ContextMenuStrip菜单,并可以看到添加的两个菜单项,单击菜单项也能够实现复制和粘贴的功能。...打开ContextMenuStrip的设计器,单击“Add New Item”按钮,添加一个新菜单项。单击新菜单项,使其处于选中状态,然后打开属性窗口。....Items.AddRange(new ToolStripItem[] { item1, separator, item2 });运行程序后,右键单击控件时将显示菜单,其中菜单项和分隔符将依次显示。...2.常用场景ContextMenuStrip控件通常用于实现右键菜单功能,它可以在用户右键单击控件或窗体时显示一个下拉菜单。...当用户右键单击其中一个项目时,会弹出一个ContextMenuStrip控件,其中包含一些操作项,例如“删除”和“复制”。在Visual Studio中创建一个Windows Forms应用程序。
可以通过单击向上和向下按钮、按向上和向下箭头键来增大和减小数字,也可以直接输入数字。单击向上箭头键时,值向最大值方向增加;单击向下箭头键时,值向最小值方向减少。该控件在工具箱中的图标为 。...按 Ctrl 键的同时单击鼠标将选择或撤销选择列表中的某项;当该属性设置为 SelectionMode.MultiSimple 时,鼠标单击或按空格键将选择或撤销选择列表中的某项;该属性的默认值为SelectionMode.One...如果未选定任何项,则返回值为1。对于只能选择一项的ListBox控件,可使用此属性确定ListBox中选定的项的索引。...其中有文字的单个命令称菜单项,顶层菜单项是横着排列的,单击 某个菜单项后弹出的称为菜单或子菜单,它们均包含若干个菜单项,菜单项其实是 MenuItem 类的一个对象。...3.菜单项的常用事件 菜单项的常用事件主要有Click事件,该事件在用户单击菜单项时发生。
Bartender 4 for Mac是Mac上简单实用的应用图标管理软件,Bartender 4 Mac帮您轻松的整理菜单栏图标,隐藏它们,重新排列它们,使用单击或键盘快捷方式显示隐藏的项目,并在更新时显示图标...Bartender 4 for Mac(应用图标管理软件)键盘导航菜单项使用Bartender ,您可以使用键盘导航菜单项,只需使用热键激活然后通过它们按箭头,然后按返回进行选择。...搜索所有菜单项您现在可以搜索所有菜单项,从而可以快速访问菜单项而无需查找。只需使用热键激活或控制单击Bartender菜单项并开始输入。...隐藏的菜单栏图标通过单击Bartender 3图标或通过热键,可以随时显示隐藏的项目。更新时,在菜单栏中显示菜单栏图标设置应用以在更新时在菜单栏中显示其菜单栏图标一段时间。...,然后按返回选择。
脚本文件,接下来我们编写的很多程序都是.py的)文件时,会默认调用PyCharm打开,如图7所示。...如果关闭每日一贴后,后期想要再次显示每日一贴,可以单击在PyCharm开发环境的菜单中依次选择Help→tip of the day菜单项,启动每日一贴。 ?...项目,在弹出的菜单中选择New-->PythonFile菜单项(一定要选择PythonFile项,这个至关重要,否则无法后续学习),如图21所示。...图22 未输入前的新建文件对话框 图23 完成输入的新建文件对话框 (3)在新建立完成的文件代码编辑区输入代码“print ("hello world!")”。...选择Run-->Run...菜单项,运行程序,如图25所示。 ? 图24 输入"hello world代码 ?
然后我们可以双击处理器,或者单击选择它,然后点击“Add”按钮,这样处理器就会被添加到画布中。...),表示处理器未处于有效状态。 ? 3.将鼠标悬停在此图标上,我们可以看到尚未定义success的relationship。意味着我们没告诉NiFi对于处理器成功处理的数据应该转移到哪里。 ?...为了启动处理器,我们可以单独单击每个处理器,然后右键单击并选择“Start”菜单项。 ? 2.或者,我们可以选择第一个处理器,然后在选择其他处理器的同时按住Shift键以选择两者。...然后,我们可以右键单击并选择“Start”菜单项。 ? 3.或者,我们可以选择第一个处理器,然后在选择其他处理器的同时按住Shift键以选择两者。...要解决此问题,您可以右键单击处理器并选择“Usage”菜单项。
Bartender 4 菜单栏应用图标管理工具图片新增功能键盘导航菜单项使用Bartender ,您可以使用键盘导航菜单项,只需使用热键激活然后通过它们按箭头,然后按返回进行选择。...搜索所有菜单项您现在可以搜索所有菜单项,从而可以快速访问菜单项而无需查找。只需使用热键激活或控制单击Bartender菜单项并开始输入。...控制菜单栏图标使用Bartender 3,您可以选择菜单栏中的应用程序,显示在Bartender 3栏中或完全隐藏。...隐藏的菜单栏图标通过单击Bartender 3图标或通过热键,可以随时显示隐藏的项目。更新时,在菜单栏中显示菜单栏图标设置应用以在更新时在菜单栏中显示其菜单栏图标一段时间。...,然后按返回选择。
2、如有必要,请单击顶部的“全部显示”。 3、在“硬件”部分下,单击“键盘”(或Leopard及以下的“键盘和鼠标”)。 4、在“键盘(和鼠标)”窗格中,选择“键盘快捷键”选项卡。...5、在左侧列表中选择“应用程序快捷方式”(请注意,Leopard及以下不需要此步骤)。 6、单击“+”按钮。将出现一张纸。 7、从“应用程序”弹出按钮,选择Scrivener。...如果要更改“编辑”>“粘贴和匹配样式”菜单项的键盘快捷键,则应键入“粘贴和匹配样式”。 10、单击“键盘快捷键”文本字段,然后按住新快捷键所需的组合键。 11、单击“添加”。...当您返回Scrivener时,新的键盘快捷键应该已启动并正在运行。 修复冲突 请注意,OS X上的键盘快捷键通过从左到右扫描菜单来查找与按下的快捷键匹配的菜单项。...在这种情况下,您可以选择不同的快捷方式,也可以找到与其发生冲突的菜单项,然后再次执行上述过程,为碰撞菜单项指定不同的快捷方式。
(5)菜单(uimenu):下拉菜单,当用户选择一个独立的菜单项时执行回调程序。 通用函数 ?...校验框(check):当单击检验框时,会执行一操作。该组件对于提供用户多个独立的选择是很有用的。要激活一校验框,只需用鼠标单击该组件即可,且选中的状态在组件上显示出来。...因此,用户有必要增加一个Done按钮,用于推迟当要多次选择项目时的操作。...在执行列表框回调函数Callback属性之前,列表框中项目的选择有单击或双击之分,对应于将图形窗口属性SelectionType设置为normal或openo 弹出菜单(popup):当组件被按下时,打开且显示一选择列表...在建立子菜单项时,必须指定一级菜单项对应的句柄值。快捷菜单是用鼠标右键单击对象时在屏幕上弹出的菜单。快捷菜单的位置是不固定的,而且总是附加在某个图形对象上。
2.菜单项隐藏:用户可以使用 ContextMenuManager 选择性地隐藏某些右键菜单项,以简化菜单并减少不需要的选项。这有助于提高工作效率,避免过度混乱的右键菜单。...单击菜单项来选择要编辑或隐藏的项目。您可以使用菜单编辑器进行添加、删除、修改和排序操作。 4.隐藏菜单项:您可以通过选择要隐藏的菜单项并点击隐藏按钮来隐藏不需要的项目。...5.设置快捷键:若要为特定菜单项配置快捷键,选择该项并单击设置快捷键按钮。按下要指定的快捷键组合后,点击确定即可完成快捷键设置。...6.备份与恢复菜单:在需要备份或恢复菜单项配置时,您可以在软件界面中找到备份与恢复选项。单击备份按钮来保存当前的菜单配置,以便日后使用。...7.搜索菜单项:如果您有很多菜单项想要编辑,可以使用软件中的搜索功能。在搜索框中输入关键字,并按下回车键,软件将快速定位到匹配的菜单项。
例如,如果有一个包含多个图像、音频和文本的选择,最终用户在此选择中右键单击的元素将是此枚举表示的选项。 Audio 指示上下文菜单是为音频元素创建的。...用户何时请求上下文菜单 当用户请求打开上下文菜单 ((例如右键单击) )时,应用需要侦听 ContextMenuRequested 事件。...当应用检测到此事件时,应用应执行以下操作的一些组合:将自定义菜单项添加到默认上下文菜单。 从默认上下文菜单中删除自定义菜单项。 打开自定义上下文菜单。...请求上下文菜单的坐标,以便应用可以检测用户右键单击的 UI 项。 坐标是根据 WebView2 控件的左上角定义的。 包含所选上下文类型的选择对象 和相应的上下文菜单参数数据。...当用户在上下文菜单上选择自定义菜单项时,WebView2 控件将触发 CustomItemSelected 事件,开发者在该事件中可以自定义业务逻辑。
2.3 卸载 用鼠标点击“开始”按钮,然后选择“设置—控制面板”命令,打开控制面板。双击“控制面板”中的“添加或删除程序”图标。在弹出的对话框中,选择LCPT选项,然后单击“添加或删除”按钮。...1、下载开始调试:选择该菜单项,弹出一个加载对话框。...connected)”,如下图所示: 如上图所示,如果软件连接下位设备失败时,可以通过“设置菜单”来重新选择串口连接下位机: 如上图,选择好COM5选项后,单击“串口选择”对话框“确定”按钮,标题栏内容显示如下...单击工具栏上“打开文件”或文件菜单中“打开”选项,如下图所示: 选择一个汇编源文件,如上图选择了文件“addsub.asm”,然后单击文件对话框“打开”按钮,显示界面如下: 4....用户可以直接选择“文件—打开”菜单项打开该文件。
设置菜单头的图标 fontMenu.setHeaderIcon(R.mipmap.ic_launcher_round); // 设置菜单头的标题 fontMenu.setHeaderTitle("选择字体大小...设置菜单头的图标 colorMenu.setHeaderIcon(R.color.colorAccent); // 设置菜单头的标题 colorMenu.setHeaderTitle("选择文字颜色...0, "绿色"); colorMenu.add(0, FONT_BLUE, 0, "蓝色"); return super.onCreateOptionsMenu(menu); } // 选项菜单的菜单项被单击后的回调方法...@Override public boolean onOptionsItemSelected(MenuItem item) { // 判断单击的是哪个菜单项 switch (item.getItemId...如果菜单项被单击后需要有自己的实现,则必须重写onOptionsItemSelected()方法,该方法会传入已经创建完毕的menuItem项。
领取专属 10元无门槛券
手把手带您无忧上云