Простое помещение TabWidget
в HorizontalScrollView
приведет к проблеме:
View
в TabWidget
не будет заполнять экран и иметь другую ширину.
Вы можете избежать этого, установив его minWidth иустановите андроид HorizontalScrollView
: fillViewport в значение true.
<HorizontalScrollView ... android:fillViewport="true">
<TabWidget android:id="@android:id/tabs" ... />
</HorizontalScrollView>
и
int dips = 70; // The min width you want in DIP
int pixels = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, (float) dips, getResources().getDisplayMetrics());
TabWidget widget = tabHost.getTabWidget();
for (int i = 0; i < widget.getChildCount(); ++i) {
View v = widget.getChildAt(i);
v.setMinimumWidth(pixels);
}
}
Так что вам не нужно создавать собственные View
для TabSpec
индикаторов.