zoukankan      html  css  js  c++  java
  • 15 ActionBar 总结

    ActionBar

    一, 说明

    是一个动作栏 是窗口特性 提供给用户动作 导航模式 可以适配不同的屏幕

    二, ActionBar 提供的功能

    1. 显示菜单项  
        always:总是展示到ActionBar
        ifRoom:如果actionBar上有剩余空间  展示出来  没有的话  展示到溢出菜单
        never:展示溢出菜单
    
    2. 使用应用程序的图片  回到HOME  或者返回到 上一级
    
    3. 自定义View    actionView
    
    4. 提供了导航模式   
    
    5. 提供了ActionProvider
    

    三, ActionBar 作用

    1. 提供给用户指定的空间
    2. 把重要的动作 或容易访问的 动作
    3. 提供了导航

    四, a

    1. ActionBar的样式:在清单文件修改主题
        换主题  换不同的action样式
         android:theme="@style/AppTheme"
         android:theme="@android:style/Theme.Light" 
         android:theme="@android:style/Theme.Holo"
         android:theme="@android:style/Theme.Holo.Light"
         android:theme="@android:style/Theme.Holo.NoActionBar"
    
    2. ActionBar的显示和隐藏
        >隐藏:1,主题   NoActionBar
              2,在逻辑代码中  获取ActionBar     getActionBar()   控制隐藏
              3,requestWindowFeature(Window.FEATURE_NO_TITLE);  在设置布局之前调用
         >显示:1,选有ActionBar主题
               2,在逻辑代码中  获取ActionBar     getActionBar()   控制显示   show()
    
    3. 创建View
    
        >res/menu  添加菜单项
         android:showAsAction="always"  菜单项的展示位置
    
         在逻辑代码中使用选项菜单的俩个方法  一个添加菜单项   另一个进行监听
    

    五, 分割栏操作

    在清单文件中的 或者
    添加属性: android:uiOptions=”splitActionBarWhenNarrow”

    六, 启动导航图标

    //应用图标是否能点击 带一个向左的箭头
    actionBar.setDisplayHomeAsUpEnabled(true);
    //应用图标是否能点击 不带箭头
    //actionBar.setHomeButtonEnabled(true);

        //是否显示应用程序图标
        actionBar.setDisplayShowHomeEnabled(true);
    
        note:y应用图标的id:android.R.id.home
    

    七, Action View 的使用

    系统控件:包名+类名android:actionViewClass=”” 添加View 如果是系统提供的控件(包名.类名)

        >自定义布局   android:actionLayout="@layout/layout" 添加自定义的View  
    
    
    >展开和折叠:
       在菜单布局中设置: android:showAsAction="collapseActionView"
       可以用按钮设置监听   让菜单项展开和折叠
    
       展开和折叠可以设置监听:
       note:方法里的返回值  设置成true    返回false  不会折叠
    
       //展开和折叠的监听
        spinnerItem.setOnActionExpandListener(new OnActionExpandListener() {
    
            @Override
            public boolean onMenuItemActionExpand(MenuItem item) {
                // TODO Auto-generated method stub
    
                tvSHow.setText("==onMenuItemActionExpand===展开====");
                return true;//返回false  不会折叠
            }
    
            @Override
            public boolean onMenuItemActionCollapse(MenuItem item) {
                // TODO Auto-generated method stub
    
                tvSHow.setText("==onMenuItemActionCollapse===折叠的====");
                return true;
            }
        });
    

    八, ActionProvider

    系统提供者: android:actionProviderClass=”包名.类名”
    android:actionProviderClass=”android.widget.ShareActionProvider”

    九, ActionBar Tab 导航 通过选项标签来切换Fragment

    //获取ActionBar
    ActionBar actionBar = getActionBar();
    //设置导航模式
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

        ActionBar.Tab tab = actionBar.newTab();
        tab.setIcon(android.R.drawable.ic_menu_add);
        tab.setText("头条");
        tab.setTabListener(this);
        actionBar.addTab(tab, true);
    
  • 相关阅读:
    c# 之 事务
    Asp.Net 之 js/jquery获取服务器端控件
    产品能力框架图
    软件测试职业发展规划图
    Loadrunner 工作原理图
    Linux内核性能测试工具全景图
    Linux 性能监控分析
    软件藏宝图
    Haproxy 8种算法+Session共享
    Keepalived+Haproxy实现高可用负载均衡
  • 原文地址:https://www.cnblogs.com/muyuge/p/6152251.html
Copyright © 2011-2022 走看看