首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android开发笔记(二十)顶部导航栏ActionBar

现在ActionBar广泛用做APP的顶部导航栏,它在布局主要分为三部分:左边是返回区域,包括logo、返回箭头、左侧标题等等;右边是菜单区域,放的是溢出菜单OverflowMenu的各菜单项;中间是条件区域...显示或者关闭ActionBar的方式有如下几种: 1、AndroidManifest.xml中给activity设置无标题栏的主题,就关闭ActionBar。...: 是否左侧返回区域显示返回箭头,默认不显示 setDisplayShowTitleEnabled : 是否左侧返回区域显示左侧标题,默认显示APP名称 setTitle : 设置左侧标题的文本...never : 从不在ActionBar直接显示,一直放在溢出菜单里面。 always : 总是ActionBar显示。...定制视图CustomView 定制视图用于ActionBar显示一些个性化内容,比如说,ActionBar自带的标题文字位于左侧区域,而且也不能调整文字大小、颜色等等,如果我们想把标题文本挪到中间

8.9K20

Material Design整理(三)——ToolBar

应用内容的标准工具栏,可以说是ActionBar的升级版,两者不是独立关系。 相比ActionBar,ToolBar更加自由,可以随意放置,当一个ViewGroup来使用。...ToolBar提供了可定制、修改的属性: - 导航栏图标 - AppLogo - 主标题、子标题 - 添加一个或多个自定义控件 - 支持Action Menu 使用 1、res/menu...其中showAsAction可选参数为: always:使菜单项一直显示ToolBar ifRoom:如果有足够的空间,菜单项显示ToolBar,否则显示更多中 never:菜单项永远不显示...ToolBar,只显示更多中 withText:图标和文字一起显示 2、布局中使用ToolBar ?...3、Activity中 setContentView方法之前,设置界面没有标题栏: 如果Activity继承Activity,设置: ?

59820
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android侧滑菜单之DrawerLayout用法详解

    这是因为v7包版本过低,解决方法是project:properties里target=android-8改为21以上就好 当抽屉打开的时候,标题栏改为”请选择”,当抽屉关闭的时候,标题栏变为原来的app...菜单项,执行这个方法的时候会回调onPreareOptionsMenu() } @Override public void onDrawerClosed(View drawerView)...的内容,因此要调用invalidateOptionsMenu()会重绘actionBar菜单项,执行这个方法的时候会回调onPreareOptionsMenu(),所以我们可以在这里通过判断抽屉处于打开还是关闭状态...,来进行一些操作,比如隐藏actionbar菜单项。...既然要隐藏,那么前提是我们得有菜单项,这里先给actionbar添加一个搜索按钮,关于给ActionBar添加按钮的办法,关于ActionBar的博客里已经讲过了,所以这里直接操作 res/values

    2K10

    Android开发笔记(一百一十九)工具栏ToolBar

    项目中引入Toolbar 因为Toolbar与ActionBar都占着顶部导航栏的位置,所以要想引入Toolbar就得先关闭ActionBar啦,具体步骤如下所示: 1、styles.xml中定义一个不包含...SearchAutoComplete控件,该控件旧SearchView中是隐藏的,新SearchView中是开放的,所以我们可随意修改v7编辑框的显示风格。...,但即使工具栏还有空间,该菜单项也不会显示工具栏。...2、溢出菜单列表菜单文字左侧显示图标的方法,使用ActionBar时正常,使用Toolbar时反而不会显示图标了。...解决办法: ActionBar的featureId是8,Toolbar的featureId是108,所以图标显示方法内部,要同时判断这两个数值,而不能像以前那样仅仅判断Window.FEATURE_ACTION_BAR

    1.9K30

    安卓开发_浅谈Action Bar

    actionBar.isShowing()) actionBar.show(); 4、添加操作性,ActionBar显示菜单项 大致的实现步骤和菜单实现差不多,只需要修改 android:showAsAction...ActionBar中(默认值) 2 android:showAsAction="always" 一定显示ActionBar中 3 android:showAsAction...="withText" 显示菜单项文字 4 android:showAsAction="ifRoom" 如果ActionBar有位置就显示 5 android...5、分割菜单栏 API级别14以上(Android4.0),可以启用ActionBar的分隔操作栏模式,屏幕的底部会显示一个独立的横条,用于显示Activity窄屏或者竖屏运行时的所有操作项 但是只是底部显示所有的操作项...接口(Tab的选择与取消等事件) * 3、通过ActionBar类对象的newTab()来创建选项卡,同时设置显示标题和事件监听 * 4、通过ActionBar类对象的addTab()方法,将创建的

    86490

    Android菜单的定义及ActionBar的实现

    同样地,子菜单也可以通过add()方法为自身添加菜单项。 add()方法的四个参数中: 第一个参数是groupId,可以用来控制各个菜单项是否同一组。...如order=1的菜单项比order=2的要靠上。 第四个参数是title,对应菜单项标题。 各个菜单项都对应一系列的setter方法,顾名思义即可。...如上图所示的带有标题和两个按钮的叫做ActionBar。是从安卓3.0开始被介绍使用的。系统默认使用ActionBar作为工具栏。ActionBar中的item可以显示为两种——按钮和溢出菜单。...可以说其是ActionBar的一部分。也可以说,其中的菜单项,可以ActionBar中作为按钮显示出来(通过设置showAsAction的值来实现)。...collapseActionView则属于与toolbar(相当于ActionBar的升级版,各方面都更灵活)相关的设置,与本文主题偏离,不再赘述。

    1.2K20

    Android系列之ActionBar使用详解

    Android3.0之后,Google对UI导航设计上进行了一系列的改革,其中有一个非常好用的新功能就是引入的ActionBar,他用于取代3.0之前的标题栏,并提供更为丰富的导航效果。...ActionBar 3、我们使用actionBar.hide();方法是系统默认会将ActionBar占用的空间分配给界面,此时显示的界面将会重新绘制。...当菜单项过多时,Android会分两种情况进行处理: 1、手机有MENU实体键:则按下Menu键后会显示剩余菜单项 2、手机没有MENU实体键:则会在最左边显示一个Action OverFlow按钮,...按下后会显示剩余项菜单,如图: 五、使用带字的Action Item 1、Action item 默认格式是如果菜单项含字和图标的话,只显示图标 2、如果想要显示字的效果,xml里如下设置:android...能否显示ActionBar的Item主要看android:showAsAction="ifRoom|withText"这个属性。

    3.6K20

    Head First Android ActionBar

    1.ActionBar的来源 ActionBar是从Android 3.0开始引入的,它是用于取代3.0之前的标题栏,并提供更为丰富的导航效果。...,Android会分两种情况进行处理: 1、手机有MENU实体键:则按下Menu键后会显示剩余菜单项; 2、手机没有MENU实体键:则会在最左边显示一个Action OverFlow按钮,按下后会显示剩余项菜单...属性 android:showAsAction 可以用来设置该菜单项显示方式,共有5中属性值: never:永远不会显示。只会在溢出列表中显示。...ifRoom:会显示Item中,但是如果已经有4个或者4个以上的Item时会隐藏在溢出列表中。 always:无论是否溢出,总会显示。 withText:Title会显示。...实现应用的导航呢?

    72910

    三种菜单控件的兼容性问题处理集锦

    由于ActionBar与Toolbar使用方式的差异,因此造成溢出菜单要分别对这种导航栏进行兼容适配。...举个例子,默认情况下,溢出菜单列表的菜单项不会在文字左边显示图标,即使设置了icon属性也不管用。...要想让菜单项显示左侧图标,得调用MenuBuilder的setOptionalIconsVisible方法,通过菜单的featureId判断此菜单是否来源于ActionBar和Toolbar,如果是这二者来源...true); } catch (Exception e) { e.printStackTrace(); } } } } 再举个例子,如果想让溢出菜单的某个菜单图标显示导航栏...即使导航栏还有空间,也设置了ifRoom或者always的菜单项,可是其图标并不会显示导航栏。为什么会这样呢?

    80510

    安卓开发_浅谈OptionsMenus(选项菜单)

    Android平台下所提供的菜单大体可分为三类:选项菜单、上下文菜单和子菜单。 当Activity在前台运行时,如果用户按下手机上的Menu键,此时就会在屏幕低端弹出相应的选项菜单。...,看下菜单项的各个属性: 1、 android:id= 是菜单项id 2、android:orderInCategory= 是菜单项优先级,值越大,优先级越多,当菜单项过多时,可隐藏在折叠菜单中...这个属性可接受的值有:     1.alaways:这个值会使菜单项一直显示ActionBar。     2.ifRoom:如果有足够的空间,这个值会使菜单显示ActionBar。     ...3.never:这个值菜单永远不会出现在ActionBar是。     4.withText:这个值使菜单和它的图标,菜单文本一起显示。...:菜单项文字描述 29 item.setTitle("标题"); 30 item.setIcon(R.drawable.icon_72);//api>=11不显示图片 31

    73670

    Head First Android Toolbar

    本文介绍Android Toolbar的使用 一节我们介绍了ActionBar的使用,这一节我们介绍ActionBar 的替代者——Toolbar,看看它有多大的能耐!...我的理解是大致如下图所示,如果没有AppCompat,我们开发的应用在不同版本的Android系统显示起来会像上面一行的三个图片那样,没有统一的界面风格;而如果使用了AppCompat的话,就会像下面一行的三个图片那样...再来看下Toolbar,这是从AppCompat 21版本开始引入的,它的使用就像一个普通的View组件一样,同时它还可以充当ActionBar,这样我们设置的菜单项就会显示它上面了。...的功能,默认提供了很多种元素可以放置Toolbar,其中包括导航按钮、logo图标、标题和子标题、一个或多个自定义的View以及菜单项。...android:attr/colorPrimary" /> (3.3)设置Toolbar为ActionBar Activity的onCreate 方法中调用setSupportActionBar(Toolbar

    89320

    Material Design 实战 之第一弹——Toolbar详解

    但是这样指定完了之后又会出现新的问题,如果Toolbar中有菜单按钮,那么弹出的菜单项也会变成深色主题,这样就再次变得十分难看,于是这里使用了app:popupTheme属性单独将弹出的菜单项指定成了淡色主题..."单独将弹出的菜单项指定成了淡色主题; 之所以使用app:popupTheme,是因为popupTheme这个属性是Android5.0系统中新增的,我们使用app:popupTheme的话就可以兼容...接下来在学习一些Toolbar比较常用的功能,比如修改标题显示的文字内容,这段文字是AndroidManifest.xml中指定的,如下所示: ? ? ? <?...showAsAction主要有以下几种值可选: always表示永远显示Toolbar中,如果屏幕空间不够则不显示; ifRoom表示屏幕空间足够的情况下显示Toolbar中,不够的话就显示菜单当中...; never则表示永远显示菜单当中。

    76320

    Mono for Android 实现高效的导航

    _viewPager.CurrentItem = tab.Position; }; actionBar.AddTab(tab); } } } 左右导航 标签导航并不适合所有的场景, 有时仅仅需要显示视图的标题即可...-- PaterTitleStrip 即可显示选中页面的标题, 也显示临近选中的几个视图的标题 --> <android.support.v4.view.PagerTitleStrip android...ActionBar显示一个下拉列表 (Spinner), 就像一个菜单, 只显示选中的菜单项对应的视图, 如下图所示: ?...将 ActionBar 设置为下拉列表导航时, 一般不显示 Activity 自身的标题, 因此需要将 Activity 的 Label 标记为空字符串, 并且 Activity 需要实现接口 ActionBar.IOnNavigationListener..._viewPager.CurrentItem = itemPosition; return true; } } 向上导航 所谓的向上导航, 就是 Activity 的图标上显示一个向左的箭头,

    74911

    【Android 应用开发】 ActionBar 基础

    ActionBar 简介 ActionBar 位置 : 位于老版本的标题栏位置; ActionBar 功能简介 :  -- 菜单显示 : 显示选项菜单; -- 回退键 : 程序图标可以作为回退键使用;..., 就不强制手机集成 MENU 按键了; -- ActionItem 实现方式 : 有两种方式可以实现, 一种是纯代码形式, 代码中生成, 一种是配置文件中配置菜单项; 1....使用代码控制选项菜单 MenuItem.setShowAsAction()方法 : 设备选项菜单是否显示 ActionBar ; -- SHOW_AS_ACTION_ALWAYS 参数 : 总是显示..., 并显示菜单项文本; 2....代码解析 标签在 xml 文件中配置 :  -- android:actionViewClass 属性 : ActionBar 显示一个已定义的组件, 设置类的全路径名称; --

    1.3K30

    Android6.0源码分析之menu键弹出popupwindow菜单流程分析

    例如上图,在按下菜单键后会弹出对应的菜单选项,准确来说,是菜单键弹起后出现的一个popupwindow,那么从菜单键弹起到popupwindow创建所涉及到的历程是怎样的呢?...理论是底层监测menu按键键值,通知framework层,framework经过一系列的处理后分发给上层,或者拦截掉 现在是假设framework层已经把menu按键分发给了用户,那么接下里就是activity...通过以上方法的分析可以总结出,一个menu事件传递给activity后,如果不是menu事件就会直接交给window会向下传递,有三方可能进行处理 actionbar window view...这三个优先级由高到低,也就是说,menu事件会首先传递给actionbar,如果actionbar进行了处理并且将事件拦截下来不派发给窗口,那么menu事件到actionbar处理之后就结束了。...表示了菜单项的popupwindow是否正在显示 //,以及要打开菜单项的进程是否已经初始化,菜单项是否不是空 //初始化popupwindow对象

    1.6K60
    领券