1
+ package in .rafique .androidbasics .viewpager .vp5 ;
2
+
3
+ import android .content .Context ;
4
+ import android .os .Bundle ;
5
+
6
+ import androidx .appcompat .app .AppCompatActivity ;
7
+ import androidx .viewpager .widget .ViewPager ;
8
+
9
+ import com .google .android .material .tabs .TabLayout ;
10
+
11
+ import in .rafique .androidbasics .viewpager .R ;
12
+
13
+ import static androidx .fragment .app .FragmentStatePagerAdapter .BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT ;
14
+
15
+ public class Activity5_TabLayoutViewPager extends AppCompatActivity {
16
+ Context context ;
17
+ ViewPager viewPager ;
18
+
19
+ @ Override
20
+ protected void onCreate (Bundle savedInstanceState ) {
21
+ super .onCreate (savedInstanceState );
22
+ setContentView (R .layout .activity5_tabs );
23
+ context = this ;
24
+
25
+ setupViewPager () ;
26
+ setupTabLayout () ;
27
+ }
28
+
29
+ private void setupViewPager () {
30
+ viewPager = findViewById (R .id .viewPager );
31
+ VPAdapter5_TabLayout vpAdapter = new VPAdapter5_TabLayout (getSupportFragmentManager (), BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT );
32
+ viewPager .setAdapter (vpAdapter );
33
+
34
+
35
+ }
36
+ private void setupTabLayout (){
37
+ TabLayout tabLayout = findViewById (R .id .tabLayout ) ;
38
+ tabLayout .setupWithViewPager (viewPager );
39
+
40
+ tabLayout .getTabAt (0 ).setIcon (R .drawable .pizza_white ) ; // can also set tab icons programatically
41
+ tabLayout .getTabAt (1 ).setIcon (R .drawable .hamburger_white ) ; // can also set tab icons programatically
42
+ tabLayout .getTabAt (2 ).setIcon (R .drawable .coffee_white ) ; // can also set tab icons programatically
43
+ tabLayout .getTabAt (3 ).setIcon (R .drawable .cupcake_white ) ; // can also set tab icons programatically
44
+ tabLayout .getTabAt (4 ).setIcon (R .drawable .donut_white ) ; // can also set tab icons programatically
45
+ tabLayout .getTabAt (5 ).setIcon (R .drawable .drink_white ) ; // can also set tab icons programatically
46
+
47
+ tabLayout .getTabAt (1 ).select ();
48
+ tabLayout .getTabAt (0 ).select ();
49
+
50
+
51
+
52
+ tabLayout .addOnTabSelectedListener (
53
+ new TabLayout .ViewPagerOnTabSelectedListener (viewPager ) {
54
+
55
+ @ Override
56
+ public void onTabSelected (TabLayout .Tab tab ) {
57
+ super .onTabSelected (tab );
58
+ // int tabIconColor = ContextCompat.getColor(context, R.color.white);
59
+ // tab.getIcon().setColorFilter(tabIconColor, PorterDuff.Mode.SRC_IN);
60
+ }
61
+
62
+ @ Override
63
+ public void onTabUnselected (TabLayout .Tab tab ) {
64
+ super .onTabUnselected (tab );
65
+ // int tabIconColor = ContextCompat.getColor(context, R.color.grey);
66
+ // tab.getIcon().setColorFilter(tabIconColor, PorterDuff.Mode.SRC_IN);
67
+ }
68
+
69
+ @ Override
70
+ public void onTabReselected (TabLayout .Tab tab ) {
71
+ super .onTabReselected (tab );
72
+ }
73
+ }
74
+ );
75
+ }
76
+
77
+
78
+ }
0 commit comments