Как сделать так, чтобы Скользящие вкладки делались кликабельными в Android Development? - PullRequest
0 голосов
/ 27 апреля 2018

Я сделал функцию скользящих вкладок, которая в настоящее время работает. Я также хочу сделать это кликабельным

public class MainActivity extends AppCompatActivity {
    public List<String> datafragmnt = new ArrayList<String>();
    public ViewPager viewPager;
    public pagerfragmetAdapter myAdapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        datafragmnt.add("Frgmnt 1 ");
        datafragmnt.add("Frgmnt 2 ");
        datafragmnt.add("Frgmnt 3 ");
        datafragmnt.add("Frgmnt 4 ");
        myAdapter = new pagerfragmetAdapter(getSupportFragmentManager());
        myAdapter.setMydata(datafragmnt);
        myAdapter.setFragmntList(new fragment1());
        myAdapter.setFragmntList(new fragment2());
        myAdapter.setFragmntList(new fragment3());
        myAdapter.setFragmntList(new fragment4());

        viewPager = (ViewPager) findViewById(R.id.viewPager);

        viewPager.setAdapter(myAdapter);
        TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
        tabLayout.setupWithViewPager(viewPager);
    }
}

Это то, что я пробовал до сих пор. Любая помощь приветствуется! Пожалуйста, помогите мне!

1 Ответ

0 голосов
/ 27 апреля 2018

Вам нужно создать адаптер для этой страницы просмотра, примерно так:

 class ViewPagerAdapter extends FragmentPagerAdapter {
        private final List<Fragment> mFragmentList = new ArrayList<>();
        private final List<String> mFragmentTitleList = new ArrayList<>();
        public ViewPagerAdapter(FragmentManager manager) {
            super(manager);
        }

        @Override
        public Fragment getItem(int position) {
            return mFragmentList.get(position);
        }

        @Override
        public int getCount() {
            return mFragmentList.size();
        }

        public void addFragment(Fragment fragment, String title) {
            mFragmentList.add(fragment);
            mFragmentTitleList.add(title);
        }
        @Override
        public CharSequence getPageTitle(int position) {
            return mFragmentTitleList.get(position);
        }
    }

И в SetUpViewPager вы добавляете свои фрагменты так:

private void setupViewPager(ViewPager viewPager) {
        Main.ViewPagerAdapter adapter = new Main.ViewPagerAdapter(getSupportFragmentManager());
        adapter.addFragment(new fragment1(), "FRAGN+MENT UNO");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...