2012-01-10 145 views
2

我在我的应用程序中使用tabhost。 我用下面的代码添加意图:如何隐藏tabhost的TabWidget

TabHost tabHost = getTabHost(); 
TabHost.TabSpec spec; 
Intent intent; 
Resources res = getResources(); 

intent = new Intent().setClass(this, AActivity.class); 
spec = tabHost.newTabSpec("Files").setIndicator("NAS Files", res.getDrawable(R.drawable.ic)).setContent(intent); 
tabHost.addTab(spec); 

在AActivity,我想隐藏的标签(TabWidget)被点击按钮的同时。 然后单击两次以显示选项卡。 我该怎么办?

回答

6

Android有三种状态可以查看视图。

  1. visible在屏幕上可见;默认值。
  2. 隐形不显示,但在布局过程中考虑(空间留空)。
  3. 不见了完全隐藏,好像视图没有被添加。

以下是您如何以编程方式进行的。

tabhost.setVisibility(View.VISIBLE); 
tabhost.setVisibility(View.INVISIBLE); 
tabhost.setVisibility(View.GONE); 

所以,你可以设置tabHostOnClickListener修改该视图的可见性。

private OnClickListener tabClickListener = new OnClickListener() { 
    public void onClick(View v) { 
     v.setVisibility(View.INVISIBLE); 
    } 
}; 

// Somewhere else in your code... 
tabhost.setOnClickListener(tabClickListener); 

要捕获双击,您可以保留onClick的计数器并在时间阈值后过期。

更多信息,请参见this question上双击

阅读知名度API文档here

+0

放置位置上? – brian 2012-01-10 03:57:01

+0

添加TabActivity? – brian 2012-01-10 04:04:57

+0

但如何让它工作? – brian 2012-01-10 04:05:15