setupWithViewPager(android.support.v4.view.ViewPager) in TabLayout cannot br applied to (androidx.viewpager..widget.ViewPager)

Hocine Djouamaa :

how to fix this error

setupWithViewPager(android.support.v4.view.ViewPager) in TabLayout cannot br applied to (androidx.viewpager..widget.ViewPager)

here is my class

package org.apoce.app;
import android.content.Intent;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentPagerAdapter;
import androidx.viewpager.widget.ViewPager;
import android.support.design.widget.TabLayout;
import android.support.v7.app.AppCompatActivity;
import android.view.Menu;
import android.view.MenuItem;
import org.apoce.app.fragment.RecentPostsFragment;
import com.google.firebase.auth.FirebaseAuth;
public class PostActivity extends AppCompatActivity {
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView( R.layout.activity_post);
		FragmentPagerAdapter mPagerAdapter = new FragmentPagerAdapter(getSupportFragmentManager()) {
			private final Fragment[] mFragments = new Fragment[] {
					new RecentPostsFragment(),
			};
			@Override
			public Fragment getItem(int position) {
			return mFragments[position];
			}
			@Override
			public int getCount() {
				return mFragments.length;
			}
			@Override
			public CharSequence getPageTitle(int position) {
				return getResources().getStringArray(R.array.headings)[position];
			}
		};
		ViewPager mViewPager = findViewById(R.id.container);
		mViewPager.setAdapter(mPagerAdapter);
		TabLayout tabLayout = findViewById(R.id.tabs);
		tabLayout.setupWithViewPager(mViewPager);
	}
}

Gabriele Mariotti :
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentPagerAdapter;
import androidx.viewpager.widget.ViewPager;
import android.support.design.widget.TabLayout;
import android.support.v7.app.AppCompatActivity;

You are using androidx library and support libraries together.
You can't do it.

Using androidx library:

  • Use import com.google.android.material.tabs.TabLayout; instead of android.support.design.widget.TabLayout;
    The component is included in the Material Components Library.

  • Change the android.support.v7.app.AppCompatActivity to androidx.appcompat.app.AppCompatActivity;

Using support libraries:

  • Change the androidx.viewpager.widget.ViewPager to android.support.v4.view.ViewPager

  • Change the androidx.fragment.app.Fragment to android.support.v4.app.Fragment

  • Change the androidx.fragment.app.FragmentPagerAdapter to android.support.v4.app.FragmentPagerAdapter

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324535&siteId=1
Recommended