6

我的应用正在使用 Sherlock 操作栏。我的设计师给了我一个新设计。

  1. 应用标志需要在中间
  2. 徽标左侧的 2 个操作项和右侧的 2 个操作项
  3. 应用标志高度是操作栏大小的 1.5 倍(假设有点溢出)

是否可以为操作栏创建自定义布局来实现此设计?还是我应该删除我的操作栏并实现我自己的设计?

如果第 3 项是可选的,它会改变你的答案吗?

谢谢

4

5 回答 5

38

对不起,但把你的设计师踢进...

他根本不懂安卓,也不应该为安卓设计。要么它是一个 ActionBar,然后你应该这样对待,你(或你的设计师)应该遵循 Android 上的通用模式,或者它不是。

如果不是ActionBar,请不要使用ActionBar(无论哪个库),并创建与ActionBar有足够偏差的自定义设计,以免混淆用户!

于 2012-10-31T09:57:15.660 回答
3

请将您的设计师和您的经理转发到 Android 设计模式网站 http://developer.android.com/design/patterns/actionbar.html。还告诉他们,如果他们希望谷歌能够展示它们,他们几乎必须遵守这些。所有失败的使用全屏布局并在顶部创建自定义控件

于 2012-10-31T13:54:56.840 回答
2

我同意其他答案:这不是 Android 指南定义的操作栏。

我只是补充一点,以防你不能违背所做的设计决策(是的,现实世界的项目有时很糟糕,作为程序员,你必须按照客户的要求去做)。

使用您自己的实现。我建议简单地创建一个带有适当监听器接口的片段(一个常见的 Android 模式,让活动实现接口,在 onAttach 中设置片段的监听器)。

于 2012-10-31T11:32:01.230 回答
1

如果你想实现这个(我非常同意其他海报,这是非标准的,可能不应该这样做)。

您将无法使用标准 API(或 ActionBarSherlock)创建这种样式的 ActionBar - 因为您的 UI 是非标准的

您可以创建一个RelativeLayout,将您的图标放在中心(centerInParent="true")。然后在相同的布局中,您可以创建一个背景,宽度设置为“fill_parent”,高度设置为中心图标大小的 2/3(在 DP 中计算此值)。

然后,您可以为左侧和右侧的 2 个 ActionItem 创建 ImageButton,然后将它们放在相对于中心图标的布局中。

最重要的是,您可能应该重新考虑您的 UI,以使其更符合 Android 指定的设计模式。如果您仍然想按照设计师要求的方式进行操作,则需要进行自定义布局(使用我建议的 RelativeLayout 是完成您正在寻找的 UI 的一种方法)。

于 2012-10-31T12:04:14.397 回答
-1

你可以创建一个RelativeLayout,你的图标在中心

centerInParent="true"

然后在相同的布局中,您可以创建一个背景,宽度设置为fill_parent,高度设置为中心图标大小的 2/3(以 DP 计算此值)。

于 2013-12-14T15:35:23.190 回答