2011-12-11 88 views
0

有沒有辦法檢測用戶在TabWidget的標籤按鈕上點擊?檢測點擊已經選擇的標籤按鈕

我知道OnTabChangeListener,但我想檢測一個選項卡按鈕上的點擊,即使該選項卡已被選中。

這是需要複製iOS標準的行爲。以App Store App爲例:選擇「Categories」選項卡。深入幾個級別進入類別。然後再次點擊「類別」選項卡。這會使你回到頂層。 (作爲在後退按鈕上點擊多次的替代方案)。我覺得這非常直觀,因此也適用於Android。

之前詢問過此問題:Android Tab Button: handle tap/click event。然而,接受的答案沒有用。

我在TabWidget上試過OnClickListener和OnTouchListeners。但他們從未被觸發。

回答

1

隱藏標籤小部件並使用標準按鈕在標籤之間切換。您可以使用切換標籤

tabhost.setCurrentTab('index of the tab'); 

您可以使用可繪製狀態並將按鈕設置爲選中狀態來使按鈕看起來被選中。

button.setSelected(true); 

那麼,要做你的要求,你可以把相應的代碼放在onClick監聽器的按鈕上。這project可能會給你一個設置選項卡的想法。

+0

這確實可行。最後,我保留了tabwidget,並使用自定義視圖而不是圖標,從而允許我添加輕敲偵聽器並動態修改選項卡的圖標。 –