Material Design之Toolbar
来源:互联网 发布:数据网站 编辑:程序博客网 时间:2024/06/04 22:47
修改values/styles.xml文件的代码,隐藏ActionBar
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
修改主界面代码
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> </FrameLayout>
android:layout_height:将ToolBar的高度设置为ActionBar的高度值
android:theme:将主题设置为深色系主题
为了解决弹出菜单也为深色系很丑的问题,单独设置弹出菜单主题
app:popupTheme:将弹出菜单单独设置为浅色系
在onCreate()方法中设置Toolbar代替ActionBar
Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar); setSupportActionBar(toolbar);
添加菜单到ToolBar
创建一个menu文件夹并且创建一个toolbar.xml文件
<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/backup" android:icon="@mipmap/icon_backup" android:title="备份" app:showAsAction="always" /> <item android:id="@+id/delete" android:icon="@mipmap/icon_delete" android:title="删除" app:showAsAction="ifRoom" /> <item android:id="@+id/settings" android:icon="@mipmap/ic_launcher" android:title="设置" app:showAsAction="never" /></menu>
app:showAsAction:用来指定图标出现的时机。有以下几种值可选
always:永远显示在ToolBar中,如果屏幕空间不够则不显示 ifRoom:如果空间够就显示在ToolBar中,不够就显示在菜单中 never:永远显示在菜单中
【注】ToolBar中只显示 icon,菜单栏中只显示 title
添加到Toolbar
@Override public boolean onCreateOptionsMenu(Menu menu){ getMenuInflater().inflate(R.menu.toolbar,menu); return true; }
设置菜单点击事件
@Override public boolean onOptionsItemSelected(MenuItem item){ switch (item.getItemId()){ case android.R.id.backup: break; case android.R.id.delete: break; case android.R.id.settings: break; } return true; }
在Toolbar中设置导航按钮
ActionBar actionBar = getSupportActionBar(); if(actionBar !=null){ actionBar.setDisplayHomeAsUpEnabled(true); //设置按钮可见 actionBar.setHomeAsUpIndicator(R.mipmap.icon_menu); //设置按钮图标 }
这个按钮交HomeAsUp按钮,默认图标是一个返回的箭头,含义是返回上一个活动
这个按钮的id为android.R.id.home
阅读全文
0 0
- Material Design 之 ToolBar
- Material Design之Toolbar
- Material Design之Toolbar
- Material Design之ToolBar
- Material Design之Toolbar
- Material Design之ToolBar
- Material Design学习之Toolbar
- Material Design之使用Toolbar
- Android Material Design 之 Toolbar
- Material Design 系列之 Toolbar
- Material Design控件之Toolbar
- Material Design实战之ToolBar
- Material Design学习笔记之Toolbar+DrawerLayout
- android material design之Toolbar(一)
- Android Material Design系列之Toolbar
- Material Design-UI之Toolbar+DrawerLayout
- Material Design之Toolbar的简单使用
- Material Design 之 Toolbar 开发实践总结
- 二分法的简单实现
- /*Oracle查询语句*/
- 14读书笔记之碎片的生命周期:
- PAT甲级 1031
- Sparse LDA
- Material Design之Toolbar
- jsp页面引入标签库的问题
- Android 积累知识点
- C语言中运算符优先级
- Java密码学
- KNIME学习记录
- 【传递闭包+bitset优化】BZOJ2208 [Jsoi2010]连通数
- spring boot零基础学习 spring boot简介(一)
- 【备战秋招Day 2】经典面试题5-8及在线编程题4-6答案