我的应用正在使用Sherlock Action Bar。
我的设计师给了我一个新的设计。
- 应用程序徽标需要在中间
- 2个操作项位于标志的左侧,另外2个操作项位于其右侧
- 应用程序徽标高度为ActionBar的1.5倍(应该有一点溢出)
是否可以创建自定义布局来实现此设计?
还是应该删除Action Bar并自己实现设计?
如果第3项是可选的,这是否会改变您的答案?
谢谢
我的应用正在使用Sherlock Action Bar。
我的设计师给了我一个新的设计。
是否可以创建自定义布局来实现此设计?
还是应该删除Action Bar并自己实现设计?
如果第3项是可选的,这是否会改变您的答案?
谢谢
很抱歉,但是请让你的设计师离开...
他完全不了解Android,不应该为Android进行设计。如果它是一个ActionBar,则应该将其视为这样,并且您(或您的设计师)应该遵循Android上的常见模式; 如果不是,请不要使用ActionBar(无论使用哪个库),并创建一个与ActionBar有足够差别的自定义设计,以避免混淆用户!
我同意其他答案:按照Android准则,这不是一个操作栏。
如果你不能反对设计决策(是的,现实世界中有时候很糟糕,作为程序员,你必须按照客户要求去做),我建议采用自己的实现方法。我建议创建一个带有适当侦听器接口的片段(这是一种常见的Android模式,让活动实现接口,在onAttach中设置片段的侦听器)。
如果你想要实现这个功能(我完全同意其他人的观点,这是非标准的,可能不应该这么做)。
由于您的界面是非标准的,因此您将无法使用标准API(或ActionBarSherlock)创建此样式的ActionBar。
您可以创建一个RelativeLayout,把您的图标放在中心(centerInParent="true")。接着在相同的布局中,您可以创建一个背景,将宽度设置为“fill_parent”,高度设置为中心图标大小的2/3(按DP计算)。
然后,您可以为左侧和右侧的2个ActionItems创建ImageButtons,然后将它们相对于中心图标放置在您的布局中。
总之,您可能应该重新考虑您的UI,使其更符合Android指定的设计模式。如果您仍然希望按照设计师的要求进行操作,那么您将需要进行自定义布局(如我建议的使用RelativeLayout来完成您所需的UI)。
centerInParent="true"
然后在相同的布局中,您可以创建一个背景,将宽度设置为fill_parent
,高度设置为中心图标大小的2/3(以DP计算此值)。