Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cannot resolve method 'addOnTabSelectedListener(anonymous android.support.design.widget.TabLayout.OnTabSelectedListener)'

I don't know why but I'm not able to use addOnTabSelectedListener, though I'm able to use setOnTabSelectedListener() but I don't want to. Here is my code:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_home);

    Display display = getWindowManager().getDefaultDisplay();
    Point size = new Point();
    display.getSize(size);
    int width = size.x;

    drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    back = (ImageView) findViewById(R.id.back_navigation);
    fab = (FloatingActionButton) findViewById(R.id.fab_explore);
    viewPager = (CustomViewPager) findViewById(R.id.viewPager_home);
    tabLayout = (TabLayout) findViewById(R.id.bottom_navigation2);
    navigationView = (NavigationView) findViewById(R.id.nav_view);

    DrawerLayout.LayoutParams params = (DrawerLayout.LayoutParams) navigationView.getLayoutParams();
    params.width = (int) (width * 0.9);
    navigationView.setLayoutParams(params);

    fab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            drawer.openDrawer(GravityCompat.START);
        }
    });
    setupViewPager(viewPager);
    back.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            drawer.closeDrawer(GravityCompat.START);
        }
    });
    tabLayout.setupWithViewPager(viewPager);
    setupIcon();
    tabLayout.getTabAt(0).getIcon().setAlpha(255);
    tabLayout.getTabAt(1).getIcon().setAlpha(100);
    tabLayout.getTabAt(2).getIcon().setAlpha(100);
    tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
        @Override
        public void onTabSelected(TabLayout.Tab tab) {
        }

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

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

        }
    });
}

public void setupIcon() {
    tabLayout.getTabAt(0).setIcon(tabIcons[0]);
    tabLayout.getTabAt(1).setIcon(tabIcons[1]);
    tabLayout.getTabAt(2).setIcon(tabIcons[2]);
}

private void setupViewPager(ViewPager viewPager) {
    ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
    adapter.addFragment(new Digest(), "Digest");
    adapter.addFragment(new Topics(), "Topics");
    adapter.addFragment(new Profile(), "Profile");
    viewPager.setAdapter(adapter);
}

I don't know what I'm doing wrong. My compileSdkVersion is 23 and all android support libraries are 23 as well.

like image 555
Abhi Avatar asked Jan 29 '26 01:01

Abhi


1 Answers

Add dependencies inside your build.gradle file

dependencies {
compile 'com.android.support:design:23.1.1'
}
like image 86
sasikumar Avatar answered Jan 31 '26 14:01

sasikumar



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!