2013-04-15 136 views
0

我有一個ActionBar 2+選項卡。最初我不希望任何選項卡被選中。在handsetTablet的橫向上,它可以按預期工作,當debugging可以看到選定的選項卡是null。但是,在portrait中的手機上運行代碼時,ActionBar將被堆疊,並且第一個標籤看起來像被選中。調試顯示TabListener中的onTabSelected永遠不會被調用,並且在onCreateonResume期間選定的選項卡爲空。第一個選項卡始終選擇堆疊的ActionBar

getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 
getActionBar().addTab(getActionBar().newTab().setTabListener(tabListener).setIcon(R.drawable.tab_icon_1), false); 
getActionBar().addTab(getActionBar().newTab().setTabListener(tabListener).setIcon(R.drawable.tab_icon_2), false); 

回答

1

起初我不希望任何選項卡被選中。

這是不支持的,除非你沒有選項卡。這也是一個奇怪的UI請求 - 我可以想到零個其他環境,其中一組標籤沒有選擇。

+0

那麼,它真的是一個單獨的活動,顯示應用程序的開始/主頁。從那裏用戶可以看到選擇哪些選項(標籤)。當點擊標籤時,一個新的活動開始並選擇適當的標籤。當然,可以選擇添加按鈕而不是標籤,嵌入佈局或作爲操作欄的選項,但決定是使它看起來像標籤,以便它看起來與用戶相同。有關如何解決問題的任何建議? 有趣的是,它工作正常,而我們只支持'不窄'佈局。 – user2282819

+0

@ user2282819:「嗯,它真的是一個單獨的活動,顯示應用程序的開始/主頁。」 - 那麼解決方案就是擺脫這種活動並首先將它們發送到有意義的地方。不要將用戶發送到僅存在於其他活動中的活動。標籤在這裏也是一個不合適的UI隱喻:它們在同一個活動中顯示不同的東西*,而不是表示完全不同的活動*。 – CommonsWare

+0

開始活動也用於顯示大量信息,並使用選項卡作爲快捷方式將用戶帶到真正的選項卡活動。我可以看到你的觀點,即標籤是起始頁面中的UI隱喻,但是當它們被選中時,它們會在同一活動中顯示同一數據集的不同剪切/透視圖。如果你能指導我從起始頁面使用什麼UI隱喻的更好方向,我會非常感激。 – user2282819

相關問題