ActionBarSherlock 使用教程
项目介绍
ActionBarSherlock 是一个独立库,旨在通过单一 API 在所有版本的 Android 上使用 Action Bar 设计模式。该库会自动在 Android 4.0 或更高版本上使用原生 ActionBar 实现,对于不包含 ActionBar 的早期版本,则使用基于自定义的 Action Bar 实现。
项目快速启动
环境要求
- Android 4.0 (API level 14) 或更高版本
- JDK 1.6 或更高版本
集成步骤
-
克隆项目
git clone https://github.com/JakeWharton/ActionBarSherlock.git
-
导入项目
-
使用 Eclipse 开发环境:
- 创建一个新的 Android 项目,使用
actionbarsherlock/
文件夹作为现有源。 - 在你的项目属性中,将创建的项目添加到“Android”类别的“Libraries”部分。
- 创建一个新的 Android 项目,使用
-
使用命令行编译:
- 在
actionbarsherlock/
文件夹中运行:android update project -p .
- 在你的应用程序项目属性文件中引用
actionbarsherlock/
文件夹。
- 在
-
-
设置主题
- 在你的
AndroidManifest.xml
文件中声明一个主题:<application android:theme="@style/Theme.Sherlock.Light"> </application>
- 在你的
-
扩展活动
- 扩展你的活动从
SherlockActivity
:public class MyActivity extends SherlockActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }
- 扩展你的活动从
应用案例和最佳实践
案例一:自定义 Action Bar
- 在
onCreate
方法中自定义 Action Bar:@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ActionBar actionBar = getSupportActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); actionBar.setTitle("Custom Title"); }
案例二:添加菜单项
- 在
onCreateOptionsMenu
方法中添加菜单项:@Override public boolean onCreateOptionsMenu(Menu menu) { getSupportMenuInflater().inflate(R.menu.main, menu); return true; }
典型生态项目
AppCompat
- 介绍:AppCompat 是 Google 官方推荐的 Action Bar 兼容库,提供了更现代的 Action Bar 实现。
- 使用:
dependencies { implementation 'com.android.support:appcompat-v7:28.0.0' }
通过以上步骤,你可以快速集成和使用 ActionBarSherlock 库,实现跨版本的 Action Bar 功能。