有没有办法取消选择 TabHost 中的所有元素。我想我可以制作一个存根标签,其宽度为 0dp。这是一条路吗?它是如何完成的 - 我如何将样式应用于一个特定的选项卡?
问问题
1700 次
2 回答
2
要使标签伸展开:
fakeTab.setVisibility(View.GONE);
于 2012-11-01T17:34:50.183 回答
1
如果这是您使用 Id 的方法,建议您为“假标签”创建自己的标签视图。
像这样的东西
private class TabView extends FrameLayout {
public TabView(Context c) {
super(c);
View indicator = new View(c);
//Might even wanna go for 0 here?
LayoutParams params = new FrameLayout.LayoutParams(1, 1);
indicator.setLayoutParams(params);
addView(indicator);
}
}
然后只需通过以下方式将其添加到您的 TabHost :
TabView fakeTab = new TabView(this, 0, "faketab");
spec = tabHost.newTabSpec("about").setIndicator(fakeTab);
tabHost.addTab(spec);
当您想将所有选项卡显示为未选中时,您只需让 TabHost 选择您的假选项卡。
于 2012-07-23T15:11:14.300 回答