2012-01-10 130 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