Merhaba arkadaşlar, bu gün ki makalemde Tab Activity’nin java kodlamasını yapacağız.
Bir önceki makalemde Tab Activity’ inin xml kodlamasını yapmıştık.Okumadıysanız öncelikle onu okumanızı tavsiye ederim. Buradan okuyabilirsiniz.
public class ActivityGuideTour extends AppCompatActivity { private SectionsPagerAdapter mSectionsPagerAdapter; private ViewPager mViewPager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_guide_tour); mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager()); // Set up the ViewPager with the sections adapter. mViewPager = (ViewPager) findViewById(R.id.container); mViewPager.setAdapter(mSectionsPagerAdapter); TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs); mViewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout)); tabLayout.addOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(mViewPager)); } public class SectionsPagerAdapter extends FragmentPagerAdapter { public SectionsPagerAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { switch (position) { case 0: FragmentGaleri kategoriSayfasi = new FragmentGaleri(); return kategoriSayfasi; case 1: FragmentHotel trendlerSayfasi = new FragmentHotel(); return trendlerSayfasi; case 2: FragmentFestival voiEkleSayfasi = new FragmentFestival(); return voiEkleSayfasi; case 3: FragmentRestorant fragmentRestorant = new FragmentRestorant(); return fragmentRestorant; default: return null; } } @Override public int getCount() { // Show 4 total pages. return 4; } @Override public CharSequence getPageTitle(int position) { switch (position) { case 0: return "TAB1"; case 1: return "TAB2"; case 2: return "TAB3"; case 3: return "TAB4"; } return null; }}}
Kodu inceleyecek olursak, öncelikle PagerAdapter’ ı tanımlıyoruz. Sonra da onu sayfalarımıza göre set ediyoruz. getitem methodu bize seçilen sayfanın hangisi olduğunu döndürür ve dönen değere göre fragment’ler ayarlanır. getCount methodu ile uygulama da kaç tane fragment kullanılacağını belirtiyoruz. getPageTitle methodu ile de sayfalarının title bilgisini set ediyoruz.
Bir makalenin daha sonuna geldik, esenle kalın..