zoukankan      html  css  js  c++  java
  • ActionBar

    我对ActionBar的简单总结

    一、

    功能:

    1、显示选项菜单的菜单项

    2、使用程序图标作为返回Home主屏或向上的导航操作

    3、提供交互是View作为Action View

    4、提供Tab的导航方式,可用于切换多个Fragment

    5、提供下拉式的导航

    二、启用ActionBar

    ActionBar acitonBar= getActionBar();

    acitonBar.show();

    acitonBar.hide();

    三、显示选项菜单

    setShowAsAction(int actionEnum);该方法设置是否将该菜单项显示在ActionBar上,作为ActionItem。

    里面的参数有以下几种

        MenuItemCompat.SHOW_AS_ACTION_ALWAYS (始终显示)
        MenuItemCompat.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW (隐藏列表中显示)
      MenuItemCompat.SHOW_AS_ACTION_IF_ROOM (屏幕有空间就显示,没空间就隐藏)
      MenuItemCompat.SHOW_AS_ACTION_NEVER (永不显示)
      MenuItemCompat.SHOW_AS_ACTION_WITH_TEXT (既显示图标又显示文字)
      最后 在方法中要 return true

    四、启动程序图标导航

    1、设置是否应该将应用程序图标转变成可点击的图标,并且在图标上添加一个向左的箭头。

    setDisplayHomeAsUpEnabled(boolean showHomeAsUp)

    2、通过传入int类型常量来控制该ActionBar的显示选项

    setDisplayOptions(int options)

    a)opitions选项为

          DISPLAY_HOME_AS_UP

          DISPLAY_SHOW_CUSTOM

          DISPLAY_SHOW_HOME

          DISPLAY_SHOW_TITLE

          DISPLAY_USE_LOGO

          NAVIGATION_MODE_LIST

          NAVIGATION_MODE_STANDARD

         NAVIGATION_MODE_TABS

    3、设置是否显示应用程序的图标。

    setDislayShowHomeEnabled(boolean showHome)

    4、设置是否将应用程序图标转变成可点击的按钮。

    setHomeButtonEnabled(boolean eabled)

    五、ActionBar左上角的返回键监听

    它的id是android.R.id.home。下面列举了两种写法

    @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            if(item.getItemId() == android.R.id.home)
            {
                finish();
                return true;
            }
            return super.onOptionsItemSelected(item);
        }
    @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            if(item.isCheckable()){
                item.setCheckable(true);
            }
            //判断是哪个菜单项,并有针对性地作出响应
            switch (item.getItemId()) {
            case android.R.id.home:
                Intent intent = new Intent(this,FirstActivity.class);
                intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(intent);
                break;
    
            default:
      break;
            }
            return super.onOptionsItemSelected(item);
        }

    六、actionBar实现Tab导航(注意:要继承ActionBar. TabListener)

    1)调用ActionBar的setNavigationMode(ActionBar.NAVIGATION_MODE_TABS)方法设置使用Tab导航方式。

    2)调用ActionBar的addTab()方法添加多个Tab标签,并为每个Tab标签添加时间监听器

      actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
       actionBar.addTab(actionBar.newTab().setText("第一页").setTabListener(this));
  • 相关阅读:
    基数排序
    计数排序和桶排序
    部署Java Web项目到云服务器的步骤全解析
    IP地址0.0.0.0/0是什么意思
    Tomcat在阿里云Centos7上正常启动,但浏览器无法访问的解决方法
    eclipse光标怎么返回上一次浏览的位置
    IDEA设置方法自动显示参数提示
    socket通信模型、socket中的accept()阻塞与read()阻塞
    Ubuntu18.04 下修改 root密码
    Ubuntu18.04 安装 VMwareTools
  • 原文地址:https://www.cnblogs.com/bxfx111/p/ActionBar.html
Copyright © 2011-2022 走看看