閱讀769 返回首頁    go 阿裏雲 go 技術社區[雲棲]


ActionBarSherlock — 無縫集成ActionBar

在前麵我們介紹了Android 3.0係統引入的ActionBar如何在3.0以前係統上使用ActionBar. 如果你想在3.0+係統上使用係統的ActionBar而在3.0以前的係統上使用自定義的ActionBar,那麼ActionBarSherlock就可以幫助你了.

ActionBarSherlock 是Android compatibility library 的一個擴展, 不知道什麼原因 Android 兼容開發包沒有包含ActionBar. 所以就有了ActionBarSherlock . 其使用方式和 兼容開發包類似.

下載地址: https://github.com/JakeWharton/ActionBarSherlock/zipball/3.4.2

有兩種方式把ActionBarSherlock類庫引入到你的項目中,:

  1. 使用Eclipse和ADT插件.
解壓下載的文件, 用裏麵的library目錄中的代碼創建一個Android項目.然後在項屬性中的Android選項裏麵設置該項目為library項目. 這樣就可以在其他Android項目中使用了.
  1. 使用Maven.
如果你使用Maven來打包的話, 隻需要添加一個依賴項即可:
<dependency>
  <groupId>com.actionbarsherlock</groupId>
  <artifactId>library</artifactId>
  <version>3.4.2</version>
  <type>apklib</type>
</dependency>
注意:需要在你項目pom.xml的資源庫中添加r.jakewharton.com/maven/release/.
另外 如果項目已經使用了Android兼容開發包,需要把他們移除, 因為ActionBarSherlock 已經包含了這些代碼.
為了在3.0以前係統上使用ActionBar需要導入下麵的類:
android.support.v4.app.ActionBar
android.support.v4.view.Menu
android.support.v4.view.MenuItem

這些類的名稱和3.0係統中的一樣.

使用ActionBar API需要你的Activity繼承至FragmentActivity, 通過調用FragmentActivity.getSupportActionBar()函數來處理ActionBar事件, 而不能調用3.0係統中的getActionBar()函數.
ActionBar類的API和3.0係統中的一樣, 詳情參考這裏的API文檔.
在3.0+係統上使用原生的ActionBar實現, 如下圖:
使用原生ActionBar

使用原生ActionBar

在3.0以前係統上使用自定義實現, 如下圖:
使用自定義ActionBar

使用自定義ActionBar



原文轉載自 雲在千峰: https://yunfeng.sinaapp.com/?p=240

最後更新:2017-04-02 16:47:43

  上一篇:go tomcat下的work目錄
  下一篇:go Struts2 中的設計模式