Прокручиваемая вкладка Android - PullRequest
3 голосов
/ 28 октября 2010

возможно ли иметь горизонтальную прокручиваемую панель вкладок, если их больше, например, 10 вкладок в нем?

Кто-нибудь реализовал что-то подобное?

alt text

Mur

Ps. Это было нехорошо, что я сделал: я удалил почти ту же тему, которую я начал вчера. Большое извинение за человека, который уже ответил на него, даже если это был не тот ответ, который я ищу.

1 Ответ

0 голосов
/ 17 июня 2014

На самом деле есть способ реализовать это, и он называется разметкой вкладок.Мне удалось использовать его в одном из приложений, которые я разработал и опубликовал в Google Play.Вот код для его реализации:

Класс SectionPagerAdapter:

public class SectionsPagerAdapter extends FragmentPagerAdapter {

        public SectionsPagerAdapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public Fragment getItem(int position) {
            Fragment fragment = new Fragment();
            switch (position) {
            case 0:
                return fragment = new HomeFragment();
            case 1:
                return fragment = new EventFragment();
            case 2:
                return fragment = new CoreTeamFragment();
            case 3:
                return fragment = new MapsFragment();
            case 4:
                return fragment = new FacebookFragment();
            default:
                break;
            }
            return fragment;
        }

        @Override
        public int getCount() {
            // Show 5 total pages.
            return 5;
        }

        @Override
        public CharSequence getPageTitle(int position) {
            Locale l = Locale.getDefault();
            switch (position) {
            case 0:
                return getString(R.string.title_section1).toUpperCase(l);
            case 1:
                return getString(R.string.title_section2).toUpperCase(l);
            case 2:
                return getString(R.string.title_section3).toUpperCase(l);
            case 3:
                return getString(R.string.title_section4).toUpperCase(l);
            case 4:
                return getString(R.string.title_section5).toUpperCase(l);
            }
            return null;
        }
    }

Основной класс

public class CentruActivity extends FragmentActivity {

    SectionsPagerAdapter mSectionsPagerAdapter;
    ViewPager mViewPager;
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_centru);

        mSectionsPagerAdapter = new SectionsPagerAdapter(
                getSupportFragmentManager());
        mViewPager = (ViewPager) findViewById(R.id.pager);
        mViewPager.setAdapter(mSectionsPagerAdapter);

        // getActionBar();
    }

    public ActionBar getActionBar() {
        return null;
    }
}

Надеюсь, это поможет:)

...