2

我正在构建一个使用 ActionBarSherlock 的应用程序。我需要更改它的布局,因此没有填充环绕选项卡图标。现在看起来像这样:

| tab1 |  tab2 | tab3 | t    

但我想要这样:

 |tab1|tab2|tab3|tab4|

通过更改该文件,我设法在正常大小的屏幕上这样做:

 library/res/values/abs__styles.xml

但是在我的 Galaxy S3 上仍然有填充,我尝试从以下位置更改填充:

  library/res/values-xlarge/abs__dimens.xml

但没有效果。我也尝试删除它,但仍然没有任何变化。

编辑:

仅供参考,我只使用图标而不使用顶部文本。我所有的图标都在 drawable-hdpi 中,这可能是个问题吗?我不这么认为,因为它们没有被重新占用,或者只是填充物出现:S

那就是价值观。

所以我也尝试用注释掉所有行

<dimen name="abs__action_bar_icon_vertical_padding">0dip</dimen>

但没有效果……</p>

4

4 回答 4

2

Action Bar Sherlock 库有一些限制。

限制 1:无法调整操作栏中的操作菜单项

描述:您可以在操作栏中有不同的操作菜单项,也可以在操作栏中设置这些项目的图标。但是,调整操作项之间的填充,为操作栏中的操作项删除 Toast 是不可能的。因为 Action bar Sherlock 使用原生的 action bar。只有外观与 ICS 相似,但行为受到限制。

限制 2:活动娱乐

描述:当屏幕方向改变时,它将重新创建处于活动状态的活动。所以用户界面会更新,也不会保存应用程序或活动的状态。注意动作栏 Sherlock

于 2012-10-27T10:09:55.720 回答
2

如果您的 Galaxy S3 正在运行 ICS 或更高版本,ABS 将使用本机操作栏。您对库所做的任何更改都将无效。

于 2012-10-23T08:15:46.070 回答
1

我不会直接将 ABS 用于选项卡导航。考虑使用与 ABS 兼容的 Viewpager 和 ViewPagerIndicator(同一作者),并且您可以更好地控制外观。这样用户也可以左右滑动来切换标签。

于 2012-10-29T19:13:15.683 回答
1

无论如何都会发生这种情况?老实说,我并没有在原生操作栏上玩太多。如果你做类似inset drawable的事情怎么办?这会改变它的绘制方式并可能缩小图标,但在你找到更好的东西之前可能是一个解决方案。

于 2012-10-29T19:32:31.527 回答