android3.0新功能 ActionBar+Fragment学习使用

1、Fragment简单介绍

3.0之后Fragment作为新功能的出现解决了大屏幕设备的适配以及在android pad设备上更好的用户体验,Fragment可以称作碎片或者片段,他是依附于activity存在的,我们可以在一个activity中使用多个Fragment,也可以实现Fragment的重用。

下边简单介绍一下Fragment的用法:

首先需要声明 FragmentManager fManager = getFragmentManager()获得Fragment的管理事例,然后通过FragmentTransaction   fTransaction对fManager 进行操作,最后对其进行提交

FragmentManager fManager = getFragmentManager()

FragmentTransaction   fTransaction

ft = fManager.beginTransaction();

ft.replace(R.id.content, new Fragment_Tab1());

ft.commit();

2、ActionBar简单介绍


ActionBar 的对象的API来控制操作栏的行为和可见性,这些API被添加在Android3.0(API 级别 11)中。

      Action bar的主要目的是:

        1.  提供一个用于识别应用程序的标示和用户的位置的专用空间。

         这个空间的左边是应用的图标或logo,以及Activity的标题。但是,如果是像当前选择的标签这样的标识当前View对象的导航标签,你可以选择删除Activity的标题。

        2.  在不同的应用程序之间提供一致的导航和视觉体验。

        Action bar提供了用于Fragment间切换的内置导航标签。它还提供了一个用于替换导航模式或优化当前视觉效果(如按照不同条件排序的列表)的下拉列表。

        3.  突出Activity的关键操作(如“搜索”、“创建”、“共享”等),并且在可预见的方法内给用户提供快捷的访问。

       对于关键的用户操作,你能够通过把选项菜单项作为操作项直接放到操作栏中,从而提供快捷的访问。操作项目还能提供一个操作窗口,这个窗口给更直接的操作行为提供一个嵌入的窗口部件。没有改进成操作项的菜单项在溢出菜单中还是有效的,用户既可以使用设备上的菜单按钮(设备上有按钮的时候),也可以使用操作栏中的溢出菜单按钮(当设备上不包含菜单按钮时)来显示这些操作项目。

①、下拉导航模式

// 得到actionbar
  ActionBar actionBar = getActionBar();
  // actionBar.setBackgroundDrawable(drawable.btn_green);
  actionBar.setTitle("ActionBar标题");
  /*
   * // 将ActionBar的操作模型设置为NAVIGATION_MODE_LIST
   * actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); //
   * 为actionbar设置下拉菜单和监听器
   * actionBar.setListNavigationCallbacks(spinnerAdapter, new
   * OnNavigationListener() { // 得到和SpinnerAdapter里一致的字符数组 String[]
   * listNames = getResources().getStringArray(R.array.menu);
   *
   * @Override public boolean onNavigationItemSelected(int position, long
   * arg1) { // TODO Auto-generated method stub
   * Toast.makeText(getApplicationContext(), "点击了---"+listNames[position],
   * Toast.LENGTH_SHORT).show(); return true; } });
   */

②、Tab标签模式

actionBar.setNavigationMode(actionBar.NAVIGATION_MODE_TABS);
//  actionBar.setDisplayShowHomeEnabled(false);
//  actionBar.setDisplayShowTitleEnabled(false);
  actionBar.addTab(actionBar.newTab().setText("导航一")
    .setTabListener(MainActivity.this));
  actionBar.addTab(actionBar.newTab().setText("导航二")
    .setTabListener(MainActivity.this));
  actionBar.addTab(actionBar.newTab().setText("导航三")
    .setTabListener(MainActivity.this));
  actionBar.addTab(actionBar.newTab().setText("导航四")
    .setTabListener(MainActivity.this));


在public void onTabSelected(Tab tab, FragmentTransaction ft) {}方法中写监听事件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值