ToolBar工具条的简单使用
菜单选项之ToolBar
关键词:inflateMenu 解析布局文档 setOnMenuItemClickListener 设定菜单选项监听
navigationIcon 导航图标 setNavigationOnClickListener 监听导航选项
首先建立一个类
public class ToolBar_Activity extends AppCompatActivity {
Toolbar mToolbar;
View view;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tool_bar_layout);
view = findViewById(R.id.Menu_Relative); TODO: 2016/6/6 得到view的对向 在SnackBar里面使用
mToolbar = (Toolbar) findViewById(R.id.Menu_ToolBar);
mToolbar.inflateMenu(R.menu.my_option_menu);//todo 解析布局文档
// TODO 监听选项
mToolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
switch (item.getItemId()) {
case R.id.my_option_add:
// Toast.makeText(ToolBar_Activity.this, "添加成功", Toast.LENGTH_SHORT).show();
Snackbar.make(view,"添加成功",Snackbar.LENGTH_SHORT).show();
break;
case R.id.my_option_delete:
Toast.makeText(ToolBar_Activity.this, "删除成功", Toast.LENGTH_SHORT).show();
break;
case R.id.my_option_edit:
Toast.makeText(ToolBar_Activity.this, "修改成功", Toast.LENGTH_SHORT).show();
break;
case R.id.my_option_check:
Toast.makeText(ToolBar_Activity.this, "查找到", Toast.LENGTH_SHORT).show();
break;
}
return false;
}
});
// TODO 监听导航选项
mToolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(ToolBar_Activity.this, "返回", Toast.LENGTH_SHORT).show();
finish();
}
});
}
}
R.layout.activity_tool_bar_layout对应的xml文档,应主动去掉padding 的一切属性
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/Menu_Relative"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto">
<android.support.v7.widget.Toolbar //必须使用v7.widget兼容包,否则Toolbar只支持5.0以后的版本
android:id="@+id/Menu_ToolBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"//Toolbar本身就是ViewGroup 可以任意设定一切view 的属性
android:background="@color/green"
app:title="设置" //这些全是APP属性
app:titleTextColor="@color/blue"
app:logo="@drawable/dog1"
app:subtitle="java"
app:subtitleTextColor="@color/blue"
app:navigationIcon="@drawable/ic_action_back"
/>
</RelativeLayout>
R.menu.my_option_menu对应的menu资源属性,menu资源应设定在res下
showAsAction 对应值为always 总是ToolBar显示
never 永不在ToolBar中显示
ifRoom 有空间就显示
withText 显示Title的text ,可以和其他值一起使用(ifRoom|withText)
collapseActionView actionview是可伸缩的API(14)
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/my_option_add"
android:title="添加"
app:showAsAction="ifRoom"/>
<item android:id="@+id/my_option_delete"
android:title="删除"
app:showAsAction="ifRoom|withText"/>
<item android:id="@+id/my_option_edit"
android:title="修改"
app:showAsAction="never"
android:orderInCategory="100"/>
<item android:id="@+id/my_option_check"
android:title="查找"
android:icon="@drawable/ic_action_search"
app:showAsAction="always"
android:orderInCategory="100"/>
</menu>
还应该在mainifest.xml 文件中修改theme主题
只有屏蔽掉ActionBar才能使用Toolbar
<activity android:name=".Menu.ToolBar_Activity" android:theme="@style/Theme.AppCompat.Light.NoActionBar"/>
ToolBar工具条的简单使用相关推荐
- toolbar工具条的用法
目录 前言 一.工具条 二.工具条追加 1.添加action 总结 附录 前言 工具条应用非常广泛,创建步骤基本是初始化工具条,再在工具条上放图标,设置单击事件. 一.工具条 // 创建toolbar ...
- 完美解决ALEXA工具条无法显示或显示白框
每次安装完alexa工具条就显示一个白框.跟别人的不一样!! ALEXA工具安装了好几次,打开IE的时候,总是只显示一个白框,没有正常的显示,一查才知道,是Windows XP SP2惹得祸,网上有人 ...
- 工具条(Ext.Toolbar)
工具条(Ext.Toolbar) 当在工具条中同时出现Menu和Element时,会导致Menu失灵. 1.Ext.Toolbar的常用方法: addButton() addElement() add ...
- Navisworks API 简单二次开发 (自定义工具条)
在Navisworks软件运行的时候界面右侧有个工具条.比较方便.但是在二次开发的时候我不知道在Api那里调用.如果有网友知道请告诉我.谢谢. 我用就自己设置一个工具.界面比较丑!没有美工. 代码: ...
- LayUI: 工具条toolbar 绑定事件lay-event
//监听工具条 table.on('tool(test)', function(obj){ //注:tool是工具条事件名,test是table原始容器的属性 lay-filter="对应的 ...
- iOS代码动态消除iPhone X底部工具条(ToolBar)与键盘间的夹缝
在App界面底部增加工具条的情况并不少见,在工具条上增加输入框更所谓是"应知应会".下面本猫就向大家介绍如何适配iPhoneX中底部工具条与弹出键盘的相对位置. 你是怎样的工具条? ...
- VC6中工具条的新特色
加入时间:01-1-8 下午 09:10:32 在Visual C++ 版本6中工具条的新特色 作者: Dave Schmitt 微软在www.microsoft.com/visualc已经推出V ...
- html自定义工具条,为Autodesk Viewer添加自定义工具条的更好方法
上一篇文章中我介绍了使用Autodesk Viewer的UI API来给viewer添加自定义工具条的方法,看起来很简单是吧.不过有个问题,就是关于自定义工具条的信息(包括按钮的文本.图标.样式.ca ...
- Wince5.0自定义工具条
2007-3-18 Wince5.0自定义ToolBar 做WinCE的开发时,碰到一很头疼的事(Coolpad机器).它的菜单很难看,字体很大,样式也太简单,就选用了 CF2.0中的ToolBa ...
最新文章
- DataGrid连接Access的快速分页法(1)——需求与现状
- 获取服务器路径的方式 【记录】
- oracle修改表结构的sql命令是什么,sql语句中修改表结构的命令是什么?
- Eclipse中jsp、js文件编辑时,卡死现象解决汇总
- 智能车竞赛技术报告 | 全向行进组 - 哈尔滨工业大学 - 紫丁香四队
- java map 多种类型吗_是多种类型的Java列表是否可行
- linux-shell命令之chmod(change mode)【更改权限】
- autopoi升级到4.0版本修改方法
- mac下安装caffe
- MakerDAO新增两种Uniswap流动性凭证作为抵押品
- linux 内核部分崩溃,Linux 系统内核崩溃分析处理简介
- 20172329《程序设计与数据结构》实验一:线性结构实验报告
- STS热部署,springboot项目中修改代码不用重新启动服务
- Unity实现UI的边缘检测和拖拽拉伸功能
- tplinkwr710n改无线打印服务器,TP-Link TL-WR710N V1无线路由器AP模式怎么设置
- Delphi中的线程类Thread
- 安装cnpm后运行报cnpm :无法加载文件 C:\Users\29038\AppData\Roaming\npm\cnpm.ps1,因为在此系统上禁止运行脚本。
- 《论语》原文及其全文翻译 学而篇11
- 基于PyQt开发的第二个小程序:高校BBS发帖辅助软件(CampusBBSAssistant)
- 光学双缝单缝公式应用分析
热门文章
- stm32cubeide烧写程序_STM32 Cube IDE 下实现 IAP —— (1) 程序跳转
- 汽车保养app 功能需求
- 博图程序需要手动同步_西门子博途S7-1200 PWM 功能组态及编程方法
- ota升级包编译过程中firmware如何添加进来
- 【Flutter】入门07-Row、Column与其主轴、交叉轴
- (病毒安全)电脑装多款杀毒软件可以吗?
- DAEMON Tools Ultra 虚拟光驱 5.9.0.1527 所有你需要模擬的映像制作软件\虚拟驱动器
- c语言浮点数内存存储解析和浮点数(double、float)如何定义NaN、正无穷(inf)、负无穷(-inf),以及如何判断是否是NaN
- LinkCompile
- ImageView加载网络图片