Ошибка с getSupportFragmentManager () ... проблема установки фрагмента - PullRequest
0 голосов
/ 10 апреля 2020

У меня ошибка при использовании getSupportFragmentManager ()

getSupportFragmentManager ().

Я использую вкладки для использования фрагментов. Но я получаю ошибку при использовании getSupportFragmentManager , Я думаю, что я должен использовать android .support.v4.app.Fragment, но у меня возникает проблема, где его использовать.

вот моя основная деятельность ...

package com.example.tubelight;

 import android.os.Bundle;

           import com.google.android.material.floatingactionbutton.FloatingActionButton;
        import com.google.android.material.snackbar.Snackbar;
     import com.google.android.material.tabs.TabLayout;


       import androidx.viewpager.widget.ViewPager;
         import androidx.appcompat.app.AppCompatActivity;

       import android.util.Log;
         import android.view.Menu;
         import android.view.MenuItem;
         import android.view.View;

        import com.example.tubelight.ui.main.SectionsPagerAdapter;

       public class MainActivity extends AppCompatActivity {
  private static final String  TAG="MainActivity";
     private ViewPager mViewPager;

 private SectionsPagerAdapter mSectionPageAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Log.d(TAG, "onCreate: Starting.");

    mSectionPageAdapter=new SectionsPagerAdapter(getSupportFragmentManager());

    mViewPager =(ViewPager)findViewById(R.id.container);
    setupViewPager(mViewPager);

    TabLayout tabLayout=(TabLayout) findViewById(R.id.tabs);
    tabLayout.setupWithViewPager(mViewPager);


}

public  void setupViewPager(ViewPager viewPager){
    SectionsPagerAdapter adapter= new SectionsPagerAdapter(getSupportFragmentManager());

    adapter.addFragment(new tab1fragments(),"Tab1");
    adapter.addFragment(new tab2fragments(),"Tab1");
    adapter.addFragment(new tab3fragments(),"Tab1");
    viewPager.setAdapter(adapter);

       }

    }

и вот мой раздел pageradapter. java

 package com.example.tubelight;

  import androidx.annotation.NonNull;
  import androidx.annotation.Nullable;
  import androidx.fragment.app.Fragment;
  import androidx.fragment.app.FragmentManager;
  import androidx.fragment.app.FragmentPagerAdapter;


 import java.util.ArrayList;
 import java.util.List;

 public class SectionsPagerAdapter extends FragmentPagerAdapter {
  private final List<Fragment>  mfragmentList= new ArrayList<>();
  private  final List<String> mfragmentTitleList = new ArrayList<>();


public void addFragment(Fragment fragment,String title){
    mfragmentList.add(fragment);
    mfragmentTitleList.add(title);
}

public SectionsPagerAdapter(@NonNull FragmentManager fm) {
    super(fm);
}


@Nullable
@Override
public CharSequence getPageTitle(int position) {
    return mfragmentTitleList.get(position);
}

@NonNull
@Override
public Fragment getItem(int position) {
    return mfragmentList.get(position);
}

@Override
public int getCount() {
    return mfragmentList.size();
}

}

...