如何修复操作栏Sherlock标签宽度不一致?

时间:2013-05-01 15:57:47

标签: android android-actionbar actionbarsherlock

Android 2.2中的标签占据全宽。

enter image description here

enter image description here

Android 4.2 nexus 7中的标签,标签不占用全宽。 两者都有相同的代码。使用actionBarsherlock
例如

final ActionBar actionBar = getSupportActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
// add tabs
Tab tab1 = actionBar.newTab().setText("TabTitle1")
 .setTabListener(new MyTabListener(null));
actionBar.addTab(tab1);

我错过了什么?这应该在主题中修复!我只是希望标签占据完整的可用宽度

1 个答案:

答案 0 :(得分:7)

这不是一个错误,原因有两个:

  1. ActionBarSherlock是Android 4.0操作栏UI和API的后端,适用于以前版本的Android。 Android 4.0之后操作栏的行为的任何更改都不会被移植。 Android 4.2中此行为已更改。
  2. 您正在比较两种截然不同的设备尺寸。如果您使用运行Android 4.2的1280x720 XHDPI手机,您会看到两个标签在纵向时跨越设备的宽度。在4.2上使用1280x768 XHDPI手机(例如Nexus 4),你会看到两个标签没有跨越整个宽度,因为尺寸变得太大而无法容纳全宽。