如何在ActionBarSherlock中更改xlarge屏幕上的布局

时间:2012-10-17 13:35:48

标签: android android-layout tabs actionbarsherlock padding

我正在构建一个使用ActionBarSherlock的应用。我需要更改它的布局,所以没有填充arround选项卡图标。现在它看起来像是:

| 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>

但没有效果......

4 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分:2)

Action Bar Sherlock库有一些限制。

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

描述:               您可以在操作栏中具有不同的操作菜单项,还可以在操作栏中设置该项的图标。但是,调整操作项之间的填充,删除操作栏中操作项的Toast是不可能的。因为Action bar Sherlock使用原生操作栏。只有外观和感觉类似于ICS,但行为受到限制。

限制2:活动重建

描述:              当屏幕方向更改时,它将重新创建处于活动状态的活动。因此用户界面将得到更新,并且它不会保存应用程序或活动的状态。 意识到行动吧Sherlock

答案 2 :(得分:1)

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

答案 3 :(得分:1)

无论发生什么事都会发生这种情况吗?老实说,我没有玩过原生动作栏。如果您执行inset drawable之类的操作会怎样?这会改变它的绘制方式并缩小图标,但在你找到更好的东西之前可能会有一个解决方案。