6

私のアプリはSherlockアクションバーを使用しています。私のデザイナーは私に新しいデザインをくれました。

  1. アプリのロゴは中央に配置する必要があります
  2. ロゴの左側に 2 つのアクション アイテム、右側に 2 つのアクション アイテム
  3. アプリのロゴの高さは、アクションバーのサイズの 1.5 倍です (少しオーバーフローしていると思われます)。

この設計を実装するためにアクションバーのカスタムレイアウトを作成することは可能ですか? または、アクションバーを削除して、独自のデザインを実装する必要がありますか?

項目 3 がオプションの場合、回答は変わりますか?

ありがとう

4

5 に答える 5

38

申し訳ありませんが、あなたのデザイナーを追い出してください...

彼は Android をまったく理解しておらず、Android 向けに設計するべきではありません。それが ActionBar であり、そのように扱う必要があり、ユーザー (またはデザイナー) が Android の一般的なパターンに従う必要があるか、そうでないかのいずれかです。

ActionBar がない場合は、(どのライブラリであっても) ActionBar を使用せず、ユーザーを混乱させないように、ActionBar から十分に逸脱したカスタム デザインを作成してください。

于 2012-10-31T09:57:15.660 に答える
3

デザイナーとマネージャーを Android デザイン パターン サイトhttp://developer.android.com/design/patterns/actionbar.htmlに転送してください 。また、Google にそれらを取り上げてもらいたい場合は、ほぼこれに従う必要があることも伝えます。すべて失敗した場合は、全画面レイアウトを使用し、上部にカスタム コントロールを作成します

于 2012-10-31T13:54:56.840 に答える
2

私は他の答えに同意します。これは、Android ガイドラインで定義されているアクション バーではありません。

設計上の決定に反することができない場合に備えて、私はそれを追加します (そうです、現実世界のプロジェクトは時々うまくいかず、プログラマーとしてクライアントが要求することをしなければなりません)。

独自の実装で行ってください。適切なリスナー インターフェイスを使用してフラグメントを作成することをお勧めします (一般的な Android パターン、アクティビティにインターフェイスを実装させ、onAttach でフラグメントのリスナーを設定します)。

于 2012-10-31T11:32:01.230 に答える
1

これを実装したい場合(そして私は他のポスターにほぼ同意しますが、これは非標準であり、おそらく実行すべきではありません)。

UIが非標準であるため、標準API(またはさらに言えばActionBarSherlock)を使用してこのスタイルのActionBarを作成することはできません。

アイコンを中央に配置して(centerInParent = "true")、RelativeLayoutを作成できます。次に、同じレイアウトで、幅を「fill_parent」に設定し、高さを中央のアイコンのサイズの2/3に設定して背景を作成できます(この値をDPで計算します)。

次に、左右に2つのActionItemのImageButtonを作成し、中央のアイコンを基準にしてレイアウトに配置します。

結論として、Androidで指定されたデザインパターンに対してこれをより標準的にするために、おそらくUIを再考する必要があります。それでもデザイナーの要求どおりに実行したい場合は、カスタムレイアウトを実行する必要があります(私が提案したRelativeLayoutを使用することは、探しているUIを実現する1つの方法です)。

于 2012-10-31T12:04:14.397 に答える
-1

アイコンを中央に配置して、RelativeLayoutを作成できます

centerInParent="true"

次に、同じレイアウトで、幅を に設定し、高さを中央のアイコンのサイズの 2/3 に設定して背景を作成できfill_parentます (この値を DP で計算します)。

于 2013-12-14T15:35:23.190 に答える