【Android您问我讲】Android 2.x中使用actionbar Actionbarsherlock的使用

1. 范例说明
  • 从Android 3.0开始,Android引入了ActoinBar,不得不说3.0之前android的标题栏确实比较丑,并且还没有任何功能。
  • 之前很多应用的顶部栏很多都是仿苹果的,比如微信。随着Android 4.0和Android 4.2 的发布和慢慢的推广开来,很多应用也开始使用Google推广的UI设计,而ActionBar是其中相当重要的一部分。
  • 无奈google没有发布3.0之前版本的ActionBar的兼容包。还好网上有提供开源的别人开发的,ActionBarShelock,简称ABS.
  • ABS的还有一项值得一提的优点就是,如果你在3.0以上的机子上使用,那么它会调用系统原生的ActionBar。另外它的使用方法和系统自身的方法相当相似,如果你ActionBar本身已经很熟悉了,那么ABS也能很快上手。
  • http://actionbarsherlock.com/下载对应的压缩包

 

2. 运行结果

3. 核心代码
@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		getSupportActionBar().setDisplayHomeAsUpEnabled(true);
	}

	@Override
	public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) {
		getSupportMenuInflater().inflate(R.menu.main, menu);
		return super.onCreateOptionsMenu(menu);
	}

	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		switch(item.getItemId()){
			case R.id.menu_settings:
				Toast.makeText(this, "ActionBarSherlock settings!", Toast.LENGTH_LONG).show();
				break;
			case R.id.homeAsUp:
				Toast.makeText(this, "Home!", Toast.LENGTH_LONG).show();
				break;
		}
		return super.onOptionsItemSelected(item);
	}
4. 使用注意事项

1.自己的项目Buildtarget也要在4.0+,api 14+。不然有关Theme.Holo  xml文件读取不到资源,会导致R文件不能生成。

2.由于actionbarsherlock中自带了android_support_v4的包,所以你不用再导入一个了,以前导入过了也要删除,不然会产生冲突。

3.有时候会提示你的程序不是一个库的错误,只要在ActionbarSherlock中  properties-> android 中,将islibrary勾上就行了。

4.要使用Actionbar要继承sherlockactivity,在配置文件中声明activity时,要添加Theme设置才行,而且只能是三种或parent是这三种。

5. 观看视频讲解
 
原文地址:https://www.cnblogs.com/eyeandroid/p/2847422.html