2012-10-31 123 views
6

我的應用程序正在使用使用Sherlock操作欄。 我的設計師給了我一個新的設計。Android動作酒吧定製

  1. 應用程序標識必須在中間
  2. 2行動項目的左側和2個actionitems的標誌
  3. 應用標誌高度爲1.5的動作條的大小權(它假設有點溢出)

是否有可能爲操作欄創建自定義佈局來實現此設計? 或者我應該刪除我的操作欄並實現我自己的設計?

如果項目#3是可選的,它會改變你的答案嗎?

感謝

+1

Android用戶在應用程序看起來像iOS應用程序時受到傷害...在嘗試實施此設計(完全忽視Android設計準則)之前,您應該警告設計師,用戶可能不會對應用程序的外觀感到滿意。 –

回答

38

我很抱歉,但踢的......

你的設計師,他根本不會讓Android和不應該爲Android設計。要麼它是一個ActionBar,然後你應該對待是這樣的,你(或你的設計師)應該遵循Android上的常見模式,否則它不是。

如果不是ActionBar,請不要使用ActionBar(無論哪個庫),並創建一個與ActionBar足夠偏離的自定義設計,以免混淆用戶!

+11

其實我覺得這個設計師很擅長設計...... iOS apps ^^。這裏給出的描述與UINavigationBar的渲染完全相似:D。 –

2

我同意其他答案:這不是Android指南定義的操作欄。

我只是補充說,如果你不能違背設計決策(是的,真實世界的項目有時會吸引,而作爲程序員,你必須做客戶端要求的)。

去你自己的實現。我建議用適當的監聽器接口(一個常見的Android模式,讓活動實現接口,在onAttach中設置片段的監聽器)創建一個片段。

1

如果你想實現這個(我非常同意其他海報,這是非標準的,可能不應該這樣做)。

您將不能創建標準API這種風格的動作條(或ActionBarSherlock對這個問題) - 因爲你的UI是非標準

您可以創建一個RelativeLayout的,在中心的圖標(centerInParent = 「真」)。然後在相同的佈局中,可以創建背景,寬度設置爲「fill_parent」,高度爲中心圖標大小的2/3(在DP中計算此值)。

然後,您可以爲您的2個ActionItems左側和右側創建ImageButton,然後將它們放入相對於中心圖標的佈局中。底線,您可能應該重新考慮您的用戶界面,使其更符合Android指定的設計模式。如果你仍然想按照你的設計師的要求來做,你需要做一個自定義的佈局(使用RelativeLayout,因爲我建議它是完成你正在尋找的UI的一種方法)。

3

請將您的設計師和您的經理轉到Android設計模式網站。同時告訴他們,如果他們希望Google能夠提供這些功能,那麼他們必須遵守這些規定。所有的失敗使用全屏幕布局和中心

centerInParent="true" 

然後在相同的佈局,你可以創建一個後臺創建頂部

-1

自定義控件您可以創建一個RelativeLayout的,用你的圖標,寬度設置爲fill_parent,高度爲中心圖標大小的2/3(在DP中計算此值)。