3

我在Android 4.0.3的應用程序中有一個Action Bar。每個選項卡都有一些按鈕(一種繼續),這會改變片段,但不會改變選項卡。我遵循http://developer.android.com的官方開發者指南,但它不起作用。Android Action Bar?

這就是我想要的:

enter image description here

是否有可能這種類型的交互與操作欄福爾摩斯?

+0

如果我明白你想要在當前標籤中做一個導航?由於ViewPager使用的是Adapter,所以我沒有想到實現這一點的簡單方法:ActionBarSherlock與官方ActionBar相同,它只與以前版本的Android兼容。你不能只用前一個按鈕打開一個新的活動? –

+0

是的,這正是我需要的!我也會使用活動,但不幸的是,我不能,我必須保持酒吧。 – user1738741

+0

你可以發佈你的代碼嗎? ViewPager和ViewPager適配器?解決方法是:) –

回答

2

我相信你可以通過正確覆蓋選項卡onTabSelected(Tab選項卡,FragmentTransaction ft)中的選項卡回調類方法來指定所需的選項卡行爲。 它看起來像

 public void onTabSelected(Tab tab, FragmentTransaction ft) { 
     // Check if the fragment is already initialized 
     if (mFragment == null) { 
      // If not, instantiate and add it to the activity 
      mFragment = Fragment.instantiate(mActivity, mClass.getName()); 
      ft.add(R.id.realtabcontent, mFragment, mTag); 
     } else { 
      //Here we look if current fragment aren't default fragment for this tab 
      //Remember that detached fragments are still managed by system, so manage it the way u need 
      // If it exists, simply attach it in order to show it 
      // ft.attach(mFragment); 
      if (mFragment.getTag().equals("defaultFragment")) 
       ft.show(mFragment); 
      else { 
       ft.detach(mFragment); 

       mFragment = fragmentManager.findFragmentByTag("defaultFragment"); 
       if (mFragment == null) 
        mFragment = Fragment.instantiate(mActivity, mClass.getName()); 
       ft.add(R.id.realtabcontent, mFragment, "defaultFragment"); 
      } 
     } 
    } 
+0

我不明白,如果你的mFragment是導航片段還是選項卡?這是我的代碼http://stackoverflow.com/questions/12843944/actionbar-and-fragments-on-ics-4-0-3 – user1738741