您的位置:首页 > 移动开发 > Android开发

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

2014-09-17 09:08 337 查看

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的操作模型设置为N***IGATION_MODE_LIST

* actionBar.setNavigationMode(ActionBar.N***IGATION_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.N***IGATION_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) {}方法中写监听事件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: