2011-12-20 19 views
0

アンドロイドマーケットのようなタブを作成したいと思います。Androidマーケットタブフラグメントなしの効果

私はここでそれをやってチュートリアルを発見した:https://github.com/JakeWharton/Android-ViewPagerIndicator

私の問題は、私は(彼らは古いもの2.3アンドロイドからサポートされていないため)フラグメントを使用したくないということですが、可能性というactivities.Is?

これは私のコードです:

あなたはActionBarSherlockライブラリを使用していないのはなぜ
public class Activity extends FragmentActivity { 
    private PagerAdapter mPagerAdapter; 
    static final String[] CONTENT = new String[] { "categories", "Featured", 
      "Top Paid", "Top Free", "Top Grossing", "Top New Paid", 
      "Top New Free", "Trending", "Staff choices", "Editor's Choices" }; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 

     super.setContentView(R.layout.simple_tabs); 

     // initialize the pagerz 
     this.initialisePaging(); 
    } 

    /** 
    * Initialize the fragments to be paged 
    */ 
    private void initialisePaging() { 

     List<Fragment> fragments = new Vector<Fragment>(); 
     fragments.add(Fragment.instantiate(this, frag3.class.getName())); 
     fragments.add(Fragment.instantiate(this, frag4.class.getName())); 

     fragments.add(Fragment.instantiate(this, frag0.class.getName())); 
     fragments.add(Fragment.instantiate(this, frag0.class.getName())); 
     fragments.add(Fragment.instantiate(this, frag0.class.getName())); 
     fragments.add(Fragment.instantiate(this, frag0.class.getName())); 
     fragments.add(Fragment.instantiate(this, frag0.class.getName())); 
     fragments.add(Fragment.instantiate(this, frag0.class.getName())); 
     fragments.add(Fragment.instantiate(this, frag0.class.getName())); 
     fragments.add(Fragment.instantiate(this, frag0.class.getName())); 
     fragments.add(Fragment.instantiate(this, frag0.class.getName())); 

     this.mPagerAdapter = new FragmentPagerAdapter2(super 
       .getSupportFragmentManager(), fragments); 

     ViewPager pager = (ViewPager) super.findViewById(R.id.pager); 
     pager.setAdapter(this.mPagerAdapter); 
     pager.setCurrentItem(1); 
     TabPageIndicator indicator = (TabPageIndicator) findViewById(R.id.indicator); 
     indicator.setViewPager(pager); 
     indicator.setCurrentItem(1); 

    } 

} 

答えて

2

http://actionbarsherlock.com/

このライブラリを使用すると、フラグメントを使用して、すべての方法ダウンAPIレベル4(1.6をターゲット)に互換性があることができます。もちろん、フラグメントの動作は、3.0より前のバージョンで実行されている場合にのみシミュレートされますが、APIは常に同じであり、3.0で実行され、最新のバージョンでは、それらをシミュレートする代わりにネイティブのフラグメントを使用します。

フラグメントは非常に便利であり、アプリケーション全体の「パズル」の自己完結型の部分であるため、アクティビティをより再利用可能にします。

関連する問題