Android Toolbar的详细使用步骤

Android Toolbar的详细使用步骤,第1张

1.首先在 build.gradle 引入support v7包

2.找到 Manifest 文件的 Application 标签下 Theme 属性

3.自定义 Theme 属性,因为 Activity 默认是有 ActionBar 的,所以需要先将默认的 ActionBar 去掉( parent="Theme.AppCompat.Light.NoActionBar" ),并根据项目需求选择主题的每个特定的属性

附录一张常用属性图,上面的每个属性就很好理解了。

1.先在需要添加 Toolbar 的 xml 文件中,加入 Toolbar 控件

解释一下 Toolbar 里面的属性,这里面的属性大多见名知意,很好理解。

我们发现 Toolbar 里面有三个属性是以 app 作为前缀,因为 Toolbar 在 5.0 系统才出现,以 app 为前缀名的属性是为了兼容 5.0 以下的系统 。

咱们一个个分析,先讲下这个属性

这个根据项目需求,我们自定义的 Toolbar 属性。关键点:因为我们 App 的主题是浅色的主题 "Theme.AppCompat.Light.NoActionBar" ,所以 Toolbar 中,我们继承了 parent="ThemeOverlay.AppCompat.Dark.ActionBar" , 如果 Toolbar 不用深色的主题,标题栏的字体之类看不清楚。

见名知意,这是 PopWindow 的主题,由于我们 ActionBar 设置的是深色的,默认情况下, PopWindow 和 ActionBar 的主题是统一的,但 PopWindow 的深色主题和整个 App 的整体颜色风格太不搭,所以我们需要将主题改成和 App 风格一致。

以上属性都是根据项目需求设定的,可加可不加, Toolbar 的可定制性很强~

这样我们就做到了,隐藏 ActionBar,使用 Toolbar 了。 注意:标题栏是默认在左上角的,并没有居中

1.先自定义标题栏,让标题居中

2.在 Toolbar 上添加几个按钮,先在 res 目录下新建一个文件夹: Menu ,创建一个 toolbar_menu.xml 文件

在MainActivity 重写 onCreateOptionsMenu 、onOptionsItemSelected 方法

*publicattributesandmethodPUBLICSECTION.METHODS:handle_toolbarFOREVENTtoolbarOFcl_gui_alv_gridIMPORTINGe_object,handle_user_commandFOREVENTuser_commandOFcl_gui_alv_gridIMPORTINGe_ucomm,ENDCLASS."lcl_event_receiverDEFINITION注意这个事件处理类中添加了两个方法,第一个方法负责往工具栏上添加按钮,第二个方法用来响应工具栏上按钮的动作步骤二:类的实现CLASSlcl_event_receiverIMPLEMENTATION.*methodtoolbarhandlerMETHODhandle_toolbar.PERFORMset_toolbarCHANGINGe_object.ENDMETHOD."handle_toolbarMETHODhandle_user_command.*HandleownfunctionsdefinedinthetoolbarCASEe_ucomm.WHEN'ADD'.PERFORMxyz. “这里你想干嘛就可以干嘛ENDCASE.ENDMETHOD."handle_user_commandENDCLASS."lcl_event_receiverIMPLEMENTATION步骤三:在FORM-----set_toolbar中添加buttonFORMset_toolbarCHANGINGprf_objectTYPEREFTOcl_alv_event_toolbar_set.CLEARprf_object-mt_toolbar.CLEARgs_toolbar.MOVE'ADD'TOgs_toolbar-function.MOVETOgs_toolbar-quickinfo.MOVETOgs_toolbar-text.MOVE''TOgs_toolbar-disabled.INSERTgs_toolbarINTOprf_object-mt_toolbarINDEX1.ENDFORM."set_toolbar1步骤四:创建事件处理对象--这一步一般在


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11235566.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存