我是Android新手,在我的项目中我有要求
即我有六个标签,但我只在屏幕上显示三个标签,其余标签我使用ScrollView.Here selected标签项必须在中间,首先当我进入屏幕时我显示中间项目是活动的(即选中) )。
那很好但是当我滚动剩下的标签时,如何将这个中间项设置为中间?
任何人都可以提出解决方案的建议。
答案 0 :(得分:7)
检查this:)
public void centerTabItem(int position) {
tabHost.setCurrentTab(position);
final TabWidget tabWidget = tabHost.getTabWidget();
final int screenWidth = getWindowManager().getDefaultDisplay().getWidth();
final int leftX = tabWidget.getChildAt(position).getLeft();
int newX = 0;
newX = leftX + (tabWidget.getChildAt(position).getWidth() / 2) - (screenWidth / 2);
if (newX < 0) {
newX = 0;
}
horizontalScrollView.scrollTo(newX, 0);
}
答案 1 :(得分:0)
我不认为tabhost有这样的行为。据我所知,tabhost可以在没有制表控制器的情况下工作。对于您的情况,图库将替换选项卡控制器,如您所知,库中的选定项目始终位于中间。 然后在gallery的事件监听器中,编写一些代码来控制哪个选项卡将在tabhost中显示。