這個項目的目的是提供一個可重用的操作欄組件。操作欄模式在Android的模式是有據可查的。
操作欄組件是一個圖書館項目。這意味著,有沒有需要復制粘貼到自己的項目資源,只需將動作欄組件作為一個參考的任何項目。
用法:
在布局中:
[java]
<com.markupartist.android.widget.ActionBar
android:id="@+id/actionbar"
app:title="@string/some_title"
style="@style/ActionBar"
/>
應用程序的使用:標題是可選的,它也有可能在ActionBar編程使用setTitle到指定的標題。為了能夠使用更方便的應用程序:在android的命名空間是相同的方式,標題必須包括應用的命名空間。請參閱布局other.xml一個完整的例子在示例項目。再次,要注意它的應用程序的命名空間和動作條的命名空間必須像XMLNS簡稱:程序=“http://schemas.android.com/apk/res/you.application.package.here”。
在你的Activity:
[java]
ActionBar actionBar = (ActionBar) findViewById(R.id.actionbar);
// You can also assign the title programmatically by passing a
// CharSequence or resource id.
//actionBar.setTitle(R.string.some_title);
actionBar.setHomeAction(new IntentAction(this, HomeActivity.createIntent(this), R.drawable.ic_title_home_default));
actionBar.addAction(new IntentAction(this, createShareIntent(), R.drawable.ic_title_share_default));
actionBar.addAction(new ToastAction());
自定義操作:
ActionBar中自帶了一個方便的IntentAction,使得它很容易創建行動的意圖。要創建自定義操作,簡單地實現了Action接口,並建立你自己喜歡吐司的例子下面。
[java]
private class ToastAction implements Action {
@Override
public int getDrawable() {
return R.drawable.ic_title_export_default;
}
@Override
public void performAction(View view) {
Toast.makeText(OtherActivity.this,
"Example action", Toast.LENGTH_SHORT).show();
}
}
點擊標題處理:
要處理的標題上點擊一個android.view.View.OnClickListener傳遞動作欄上的方法setOnTitleClickListener的。傳遞的onClick認為是被分配到TextView中的標題。
[java]
actionBar.setOnTitleClickListener(new OnClickListener() {
public void onClick(View v) {
// Your code here
}
});
定制:
由於在ActionBar庫“項目的所有資源將被合並到項目中,引用在ActionBar。主體工程中的值將始終使用預設值才會在ActionBar。
如果你不喜歡默認的顏色colors.xml的文件中定義的只是覆蓋colors.xml的主要項目文件中的默認值。要創建一個藍色的ActionBar創建一個colors.xml文件看起來像下面的東西的。請注意,我們不重寫值actionbar_background_item_pressed_start和actionbar_background_item_pressed_end因為我們決定堅持使用默認值。
[java]
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="actionbar_separator">#3A5FCD</color>
<color name="actionbar_background_start">#3A5FCD</color>
<color name="actionbar_background_end">#27408B</color>
</resources>
同樣可以做到這樣的效果,通過drawables,布局和一切位於ActionBar的項目。
它是穩定的嗎?
的確是這樣,但誰也不能保證。然而,該API仍然沒有穩定,所以請檢查所有提交自上次拉動。它也可能是一個好主意,這個組件,而不是直接依賴於您自己的叉子。最終將有更多的控制釋放,但在那之前。
您使用的是這個小部件?
要使用它的應用程序在畫廊展出?然後,請發送您的應用程序的截圖和細節到約翰·尼爾森。
捐款:
這個小工具是不一樣的,沒有卓越貢獻;
ohhorob,https://github.com/ohhorob
denravonska,https://github.com/denravonska
rpdillon,https://github.com/rpdillon
RickardPettersson,https://github.com/RickardPettersson
傑克沃頓商學院,https://github.com/JakeWharton
傑西·文森特,http://blog.fsck.com
Gyuri克雷爾,http://gyurigrell.com
想做出貢獻嗎?
GitHub上有一些偉大的文章如何開始使用Git和GitHub上,以及如何fork一個項目。
貢獻者推薦到餐桌GitHub上的應用程序(但不要有太多)。創建一個特性分支,分支推到git的樞紐,按拉的請求,寫一個簡單的解釋。
每提交一個修復。如果說一個提交關閉打開的問題12。只需添加關閉#12你的提交信息自動的關閉問題。
所有貢獻的代碼必須符合Apache許可證2.0。
代碼風格指引:
貢獻者建議遵循了Android的代碼風格指引線的長度,我嘗試持有至80列,在可能的情況下例外。
總之;
縮進4個空格,沒有標簽。
線路長度:80列
字段名稱:非公開,非靜態字段以m開始。
括號:開放括號不要去上自己的行。
縮略語詞:治療詞語的名字的首字母縮寫,產生的XmlHttpRequest中,getURL()等
一致性:看看你周圍的什麼!
玩得開心,還記得我們在課余時間,所以不要太嚴重了:)