热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Android溢出菜单位于操作栏/工具栏上方?-Androidoverflowmenupositionedaboveactionbar/toolbar?

Imtryingtogetmyoverflowmenutoappearbelowthetopbarinmyapp.WhenIwasusingtheHolo

I'm trying to get my overflow menu to appear below the top bar in my app. When I was using the Holo theme it did this just fine, but I'm trying to get my app to use material design using the appcompat v7 library.

我正在尝试将溢出菜单显示在我的应用中的顶部栏下方。当我使用Holo主题时,它做得很好,但我正在尝试使用appcompat v7库让我的应用程序使用材料设计。

So my theme now extends from AppCompat:

所以我的主题现在扩展到AppCompat:



    
    

And this properly does apply the material design theme to my toolbar in this layout:

这恰当地将材质设计主题应用于此布局中的工具栏:


    
    

        

            
            
            
        


        
        

    

But for some reason, the menu I inflate in onCreateOptionsMenu appears in the wrong place. Apparently I can't post images but basically the overflow menu covers the toolbar instead of appearing just below the toolbar. This started happening when I use "Theme.AppCompat" first in a normal ActionBar and even now with a Toolbar.

但由于某种原因,我在onCreateOptionsMenu中膨胀的菜单出现在错误的位置。显然我不能发布图像,但基本上溢出菜单覆盖工具栏而不是出现在工具栏下方。当我在普通的ActionBar中使用“Theme.AppCompat”时甚至现在使用工具栏时,这种情况就开始发生了。

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
            switch (selected) {
                case FRONT_PAGE:
                    toolbar.inflateMenu(R.menu.main_settings);
                    return false;
                case ANNOUNCEMENTS:
                    toolbar.inflateMenu(R.menu.refresh_settings);
                    return false;
                case MEMBERSHIP:
                    toolbar.inflateMenu(R.menu.edit_member);
                    return false;
                case CALENDAR:
                    toolbar.inflateMenu(R.menu.refresh_settings);
                    return false;
                case POINTS_REWARDS:
                    toolbar.inflateMenu(R.menu.main_settings);
                    return false;
                case HELP:
                    toolbar.inflateMenu(R.menu.main_settings);
                    return false;
                default:
                    toolbar.inflateMenu(R.menu.main_settings);
            }

Couldn't seem to find anyone experiencing this as well.

似乎无法找到任何经历过这种情况的人。

Here's an example of one of my menus:

这是我的一个菜单的示例:


    

4 个解决方案

#1


19  

Per the Material Design specifications (see the Menus section):

根据材料设计规范(参见菜单部分):

A menu is a temporary sheet of paper that always overlaps the app bar, rather than behaving as an extension of the app bar.

菜单是一张临时的纸张,总是与应用栏重叠,而不是表现为应用栏的扩展。

Menu overlap app bar

So what you are seeing is the correct Material design for menus.

所以你看到的是菜单的正确材料设计。

#2


1  

Check out the answer by @Girish Kumar at How I can place overflow menu below toolbar instead of overflow menu to overlaps the app bar. Shifting the overflow menu to the bottom of app bar is definitely possible.

请查看@Girish Kumar的答案,如何在工具栏下方放置溢出菜单而不是溢出菜单以重叠应用栏。将溢出菜单移到应用栏的底部绝对是可能的。

#3


0  

If you change the theme of Activity in manifest than the overflow menu comes below the actionbar

如果更改清单中活动的主题,则操作栏下方会显示溢出菜单

android:theme="@android:style/Theme.Holo.Light"

#4


0  

Some simple steps Go to android manifest file and search for the activity in which your dropdown menu is present, for mine it's welcome Activity Now press control and click on the theme name

一些简单的步骤转到android清单文件并搜索下拉菜单所在的活动,对于我的欢迎活动现在按下控件并单击主题名称


        
            
            
        
    

you will move to the styles file where your theme is written once you go there, you

一旦你去那里,你将移动到你的主题所写的样式文件


Now paste these two items there

现在粘贴这两个项目

false
5.0dp

and you are done...

你完成了......

P.S: Unfortunately I can't share the screenshot here, it seems like SO giving some error on adding images. But you can see on this link Image File

P.S:不幸的是我无法在这里分享屏幕截图,似乎SO在添加图片时出现了一些错误。但你可以在这个链接上看到图像文件


推荐阅读
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 本文介绍了使用kotlin实现动画效果的方法,包括上下移动、放大缩小、旋转等功能。通过代码示例演示了如何使用ObjectAnimator和AnimatorSet来实现动画效果,并提供了实现抖动效果的代码。同时还介绍了如何使用translationY和translationX来实现上下和左右移动的效果。最后还提供了一个anim_small.xml文件的代码示例,可以用来实现放大缩小的效果。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • 在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板
    本文介绍了在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板的方法和步骤,包括将ResourceDictionary添加到页面中以及在ResourceDictionary中实现模板的构建。通过本文的阅读,读者可以了解到在Xamarin XAML语言中构建控件模板的具体操作步骤和语法形式。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • 本文讨论了如何使用Web.Config进行自定义配置节的配置转换。作者提到,他将msbuild设置为详细模式,但转换却忽略了带有替换转换的自定义部分的存在。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
author-avatar
豆芽哥的马甲_206
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有