package com.reactnativenavigation.activities; import android.support.design.widget.TabLayout; import android.support.v4.view.ViewPager; import android.support.v7.widget.Toolbar; import com.reactnativenavigation.R; import com.reactnativenavigation.adapters.ViewPagerAdapter; import com.reactnativenavigation.core.RctManager; import com.reactnativenavigation.core.Screen; import java.util.ArrayList; /** * Created by guyc on 02/04/16. */ public class TabActivity extends BaseReactActivity { public static final String EXTRA_SCREENS = "extraTabs"; private Toolbar mToolbar; private TabLayout mTabLayout; private ViewPager mViewPager; @Override protected void handleOnCreate() { mReactInstanceManager = RctManager.getInstance().getReactInstanceManager(); setContentView(R.layout.tab_activity); mToolbar = (Toolbar) findViewById(R.id.toolbar); mTabLayout = (TabLayout) findViewById(R.id.tabLayout); mViewPager = (ViewPager) findViewById(R.id.viewPager); setupToolbar(); setupViewPager(); } private void setupToolbar() { setSupportActionBar(mToolbar); } private void setupViewPager() { ArrayList screens = (ArrayList) getIntent().getSerializableExtra(EXTRA_SCREENS); ViewPagerAdapter adapter = new ViewPagerAdapter(this, mViewPager, screens); mViewPager.setAdapter(adapter); mTabLayout.setupWithViewPager(mViewPager); mTabLayout.setOnTabSelectedListener(adapter); adapter.notifyDataSetChanged(); } }