菜单选项之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工具条的简单使用相关推荐

  1. toolbar工具条的用法

    目录 前言 一.工具条 二.工具条追加 1.添加action 总结 附录 前言 工具条应用非常广泛,创建步骤基本是初始化工具条,再在工具条上放图标,设置单击事件. 一.工具条 // 创建toolbar ...

  2. 完美解决ALEXA工具条无法显示或显示白框

    每次安装完alexa工具条就显示一个白框.跟别人的不一样!! ALEXA工具安装了好几次,打开IE的时候,总是只显示一个白框,没有正常的显示,一查才知道,是Windows XP SP2惹得祸,网上有人 ...

  3. 工具条(Ext.Toolbar)

    工具条(Ext.Toolbar) 当在工具条中同时出现Menu和Element时,会导致Menu失灵. 1.Ext.Toolbar的常用方法: addButton() addElement() add ...

  4. Navisworks API 简单二次开发 (自定义工具条)

    在Navisworks软件运行的时候界面右侧有个工具条.比较方便.但是在二次开发的时候我不知道在Api那里调用.如果有网友知道请告诉我.谢谢. 我用就自己设置一个工具.界面比较丑!没有美工. 代码: ...

  5. LayUI: 工具条toolbar 绑定事件lay-event

    //监听工具条 table.on('tool(test)', function(obj){ //注:tool是工具条事件名,test是table原始容器的属性 lay-filter="对应的 ...

  6. iOS代码动态消除iPhone X底部工具条(ToolBar)与键盘间的夹缝

    在App界面底部增加工具条的情况并不少见,在工具条上增加输入框更所谓是"应知应会".下面本猫就向大家介绍如何适配iPhoneX中底部工具条与弹出键盘的相对位置. 你是怎样的工具条? ...

  7. VC6中工具条的新特色

      加入时间:01-1-8 下午 09:10:32 在Visual C++ 版本6中工具条的新特色 作者: Dave Schmitt 微软在www.microsoft.com/visualc已经推出V ...

  8. html自定义工具条,为Autodesk Viewer添加自定义工具条的更好方法

    上一篇文章中我介绍了使用Autodesk Viewer的UI API来给viewer添加自定义工具条的方法,看起来很简单是吧.不过有个问题,就是关于自定义工具条的信息(包括按钮的文本.图标.样式.ca ...

  9. Wince5.0自定义工具条

    2007-3-18   Wince5.0自定义ToolBar 做WinCE的开发时,碰到一很头疼的事(Coolpad机器).它的菜单很难看,字体很大,样式也太简单,就选用了 CF2.0中的ToolBa ...

最新文章

  1. DataGrid连接Access的快速分页法(1)——需求与现状
  2. 获取服务器路径的方式 【记录】
  3. oracle修改表结构的sql命令是什么,sql语句中修改表结构的命令是什么?
  4. Eclipse中jsp、js文件编辑时,卡死现象解决汇总
  5. 智能车竞赛技术报告 | 全向行进组 - 哈尔滨工业大学 - 紫丁香四队
  6. java map 多种类型吗_是多种类型的Java列表是否可行
  7. linux-shell命令之chmod(change mode)【更改权限】
  8. autopoi升级到4.0版本修改方法
  9. mac下安装caffe
  10. MakerDAO新增两种Uniswap流动性凭证作为抵押品
  11. linux 内核部分崩溃,Linux 系统内核崩溃分析处理简介
  12. 20172329《程序设计与数据结构》实验一:线性结构实验报告
  13. STS热部署,springboot项目中修改代码不用重新启动服务
  14. Unity实现UI的边缘检测和拖拽拉伸功能
  15. tplinkwr710n改无线打印服务器,TP-Link TL-WR710N V1无线路由器AP模式怎么设置
  16. Delphi中的线程类Thread
  17. 安装cnpm后运行报cnpm :无法加载文件 C:\Users\29038\AppData\Roaming\npm\cnpm.ps1,因为在此系统上禁止运行脚本。
  18. 《论语》原文及其全文翻译 学而篇11
  19. 基于PyQt开发的第二个小程序:高校BBS发帖辅助软件(CampusBBSAssistant)
  20. 光学双缝单缝公式应用分析

热门文章

  1. stm32cubeide烧写程序_STM32 Cube IDE 下实现 IAP —— (1) 程序跳转
  2. 汽车保养app 功能需求
  3. 博图程序需要手动同步_西门子博途S7-1200 PWM 功能组态及编程方法
  4. ota升级包编译过程中firmware如何添加进来
  5. 【Flutter】入门07-Row、Column与其主轴、交叉轴
  6. (病毒安全)电脑装多款杀毒软件可以吗?
  7. DAEMON Tools Ultra 虚拟光驱 5.9.0.1527 所有你需要模擬的映像制作软件\虚拟驱动器
  8. c语言浮点数内存存储解析和浮点数(double、float)如何定义NaN、正无穷(inf)、负无穷(-inf),以及如何判断是否是NaN
  9. LinkCompile
  10. ImageView加载网络图片