2012-02-07 2 views
0

Я пытаюсь создать приложение, используя фрагменты/вкладки и пейджер из библиотеки поддержки v4 для Android. Я хочу, чтобы мое приложение совместимо с Android 2.3, но у меня проблема. Это видно на скриншоте: имя вкладки завершается. Я хочу иметь около 20-40 вкладок и иметь возможность перемещаться с помощью салфетки (как видно на рынке).Android Fragment/Tabs and Pager: обертывание имен таблиц

Скриншот: http://imageshack.us/photo/my-images/17/device20120207161609.png/

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

    setContentView(R.layout.fragment_tabs_pager); 
    mTabHost = (TabHost)findViewById(android.R.id.tabhost); 
    mTabHost.setup(); 

    mViewPager = (ViewPager)findViewById(R.id.pager); 

    mTabsAdapter = new TabsAdapter(this, mTabHost, mViewPager); 

    mTabsAdapter.addTab(mTabHost.newTabSpec("simple").setIndicator("Simple"), 
      FragmentStackSupport.CountingFragment.class, null); 
    mTabsAdapter.addTab(mTabHost.newTabSpec("contacts").setIndicator("Contacts"), 
      LoaderCursorSupport.CursorLoaderListFragment.class, null); 
    mTabsAdapter.addTab(mTabHost.newTabSpec("custom").setIndicator("Custom"), 
      LoaderCustomSupport.AppListFragment.class, null); 
    mTabsAdapter.addTab(mTabHost.newTabSpec("throttle").setIndicator("Throttle"), 
      LoaderThrottleSupport.ThrottledLoaderListFragment.class, null); 

    if (savedInstanceState != null) { 
     mTabHost.setCurrentTabByTag(savedInstanceState.getString("tab")); 
    } 
} 

XML

<TabHost 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/tabhost" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <LinearLayout 
     android:orientation="vertical" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 

     <TabWidget 
      android:id="@android:id/tabs" 
      android:orientation="horizontal" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_weight="0"/> 

     <FrameLayout 
      android:id="@android:id/tabcontent" 
      android:layout_width="0dp" 
      android:layout_height="0dp" 
      android:layout_weight="0"/> 

     <android.support.v4.view.ViewPager 
      android:id="@+id/pager" 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_weight="1"/> 

    </LinearLayout> 
</TabHost> 

ответ

0

Может быть, вы хотите, чтобы проверить этот проект:

https://github.com/JakeWharton/Android-ViewPagerIndicator

И использовать ViewPagerIndicator вместо вкладок. В любом случае TabActivity устарела.

+0

это выглядит потрясающе, возможно, это то, что я искал – manniakk

Смежные вопросы