我還沒有使用android 3.0+,也沒有操作欄,所以我有一個關於可以在操作欄中實現的選項卡的問題。它僅限於更換碎片嗎?選項卡可以:第一個活動,第二個片段?從我檢查過的例子中,有一個主要的活動有一個操作欄,每個標籤的內容都是一個單獨的片段。很抱歉,如果我的問題是明顯的。提前感謝你。android 3.0+動作欄選項卡
0
A
回答
2
我沒有看到你使用活動作爲第一個使用片段爲他們所有的優勢嗎?片段非常強大,可以提供與活動一樣多的片段。
話雖如此,你應該能夠得到一個回調時,選擇一個選項卡,所以在該回調中,你所要做的就是加載一個活動。確保您在加載新的活動時通過當前選定的選項卡,以便用戶可以看到選擇了哪一個。
使用片段的原因是您不必加載新的活動,並且可以用新內容替換當前片段。
1
即使基本代碼的結構使其易於操作,也沒有任何說你必須切換片段。
例如,我只是使用製表符來更改一次加載的視圖佈局層次結構中元素的可見性,並且工作正常。如果您的視圖層次結構不那麼複雜,這看起來更有效率,因爲它消除了片段事務。據推測,改變視圖的可見性非常有效。
下面是一個不完整的代碼片段給你怎麼不理片段交易和做自己的事的想法:
public class AudioManagerTabListener<T extends Fragment> implements
ActionBar.TabListener {
@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
switch ((Integer) tab.getTag()) {
case TAG_SHARED:
mGridViewWrapper.setVisibility(View.VISIBLE);
break;
case TAG_PLAYING:
mNowPlayingWrapper.setVisibility(View.VISIBLE);
break;
case TAG_PLAYLIST:
break;
case TAG_ARTISTS:
break;
case TAG_ALBUMS:
break;
case TAG_SONGS:
break;
}
if (DBG.AUDIO) {
Log.d(TAG,
"SettingsTabListener- onTabSelected - Tag: "
+ tab.getText());
}
}
@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
switch ((Integer) tab.getTag()) {
case TAG_SHARED:
mGridViewWrapper.setVisibility(View.GONE);
break;
case TAG_PLAYING:
mNowPlayingWrapper.setVisibility(View.GONE);
break;
case TAG_PLAYLIST:
break;
case TAG_ARTISTS:
break;
case TAG_ALBUMS:
break;
case TAG_SONGS:
break;
}
if (DBG.AUDIO) {
Log.d(TAG,
"SettingsTabListener- onTabUnSelected - Tag: "
+ tab.getText());
}
}
@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
if (DBG.AUDIO) {
Log.d(TAG, "SettingsTabListener- onTabReselected- Position: "
+ tab.getPosition());
}
}
}
+0
謝謝你的回答。我會考慮到另一種情況。目前,我的佈局非常複雜,我通過爲每個選項卡分別創建一個片段來解決我的問題。 – Sandra 2012-05-07 11:39:42
相關問題
- 1. 動作欄和動作欄選項卡純白色{ANDROID}
- 2. Android操作欄選項卡欄divider
- 3. Android選項卡欄在非選項卡活動中可見
- 4. Android sherlock操作欄選項卡對齊
- 5. Android菜單選項卡式操作欄
- 6. Android選項卡式活動:使用ViewPager的動作欄選項卡:每個選項卡的佈局不同
- 7. Android-底部欄選項卡
- 8. robotium - 點擊動作欄選項卡
- 9. 動畫選項卡欄。 Swift
- 10. Android:選項卡式佈局或Android選項卡沒有操作欄?
- 11. Android:刷新活動中的操作欄選項卡
- 12. Android中的動作欄選項卡和重複背景
- 13. 頂部帶有圖像的動作欄選項卡 - android
- 14. 如何設置Android操作欄選項卡滾動樣式
- 15. 更改選定選項卡上的sherlock動作欄選項卡文本顏色
- 16. 手動選擇操作欄選項卡時,選項卡最初開始空白
- 17. 鈦:Android的選項卡組欄和選項卡的定製
- 18. 而不是操作欄選項卡
- 19. Android摺疊工具欄,而滾動/刷卡選項卡
- 20. android,隱藏操作欄選項卡,但保持選項卡功能
- 21. 安卓操作欄 - 與選項卡
- 22. 動作條選項卡中的Android
- 23. API 10中的操作欄選項卡
- 24. 操作欄選項卡選項卡寬度不固定
- 25. ContainerView選項卡欄?
- 26. 更改操作欄選項卡高度
- 27. Android操作欄選項卡和菜單項
- 28. Android - 爲操作欄選擇默認選項卡
- 29. 操作欄選項行動
- 30. Android:工具欄中的選項卡
的事情是,我想在第一個活動兩個片段,這是第一個標籤。因此,如果我使用第一個選項卡的片段,該片段是否可以包含另外兩個片段?我有點困惑,希望我也不會迷惑你。 – Sandra 2012-03-19 16:06:01
您不能在另一片段內嵌入片段。 – Mimminito 2012-03-19 16:08:43
所以我應該將它們嵌入到一個活動中,並且該活動可以是該活動欄的一個選項卡,對吧? :S – Sandra 2012-03-20 09:02:04