4

現在選択されている項目のタブ位置を取得するにはどうすればよいので、Android デザイン ライブラリ TabLayout を使用しています。

  ViewPager pager = (ViewPager) view.findViewById(R.id.pager);      
  MyPagerAdapter adapter = new MyPagerAdapter(getChildFragmentManager());
  pager.setAdapter(adapter);
  tabLayout.setupWithViewPager(pager);
4

4 に答える 4

3
  mTabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
        @Override
        public void onTabSelected(TabLayout.Tab tab) {
            int position = tab.getPosition();
        }

        @Override
        public void onTabUnselected(TabLayout.Tab tab) {
        }

        @Override
        public void onTabReselected(TabLayout.Tab tab) {
        }
于 2016-06-29T08:25:07.767 に答える
3

ViewPager を呼び出しgetCurrentItem()て、現在表示されているアイテムのインデックスを取得できます。

于 2015-06-10T13:43:57.963 に答える
1

[2016 年 7 月 29 日更新]

以下の回答は非推奨であるため、受け入れられた回答を参照してください。古いバージョンを使用している場合は、それを参照してください。

あなたは簡単にそれを行うことができます...

tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
                @Override
                public void onTabSelected(TabLayout.Tab tab) {
                    pos = tab.getPosition();
                }

                @Override
                public void onTabUnselected(TabLayout.Tab tab) {

                }

                @Override
                public void onTabReselected(TabLayout.Tab tab) {

                }
            });
于 2015-06-10T13:46:48.410 に答える