代码如下仅供参考
Java
package com.example.login_register;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentPagerAdapter;
import androidx.viewpager.widget.PagerAdapter;
import androidx.viewpager.widget.ViewPager;
import android.os.Bundle;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
RadioGroup radioGroup;
TextView textView;
ViewPager viewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = findViewById(R.id.title);
radioGroup = findViewById(R.id.rg);
radioGroup.check(R.id.rb1);
radioGroup.setonCheckedChangeListener(new RadioGroup.onCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup radioGroup, int i) {
int c = viewPager.getCurrentItem();
switch (i) {
case R.id.rb1:
textView.setText("首页");
c = 0;
break;
case R.id.rb2:
textView.setText("服务");
c = 1;
break;
case R.id.rb3:
textView.setText("党建");
c = 2;
break;
case R.id.rb4:
textView.setText("新闻");
c = 3;
break;
case R.id.rb5:
textView.setText("我的");
c = 4;
break;
}
if (viewPager.getCurrentItem() != c) {
viewPager.setCurrentItem(c);
}
}
});
viewPager = findViewById(R.id.viewpager);
ArrayList fragments = new ArrayList<>();
Fragment hf = new Home();
Fragment sf = new Service();
Fragment df = new Dangjian();
Fragment nf = new News();
Fragment pf = new Person();
fragments.add(hf);
fragments.add(sf);
fragments.add(df);
fragments.add(nf);
fragments.add(pf);
viewPager.setCurrentItem(0);
viewPager.setAdapter(new Myadapter(getSupportFragmentManager(), 0, fragments));
viewPager.setonPageChangeListener(new ViewPager.onPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
int a=viewPager.getCurrentItem();
switch (a){
case 0:
radioGroup.check(R.id.rb1);
break;
case 1:
radioGroup.check(R.id.rb2);
break;
case 2:
radioGroup.check(R.id.rb3);
break;
case 3:
radioGroup.check(R.id.rb4);
break;
case 4:
radioGroup.check(R.id.rb5);
break;
}
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
}
private class Myadapter extends FragmentPagerAdapter {
ArrayList fragments;
FragmentManager fm;
public Myadapter(FragmentManager fm, int i, ArrayList fragments) {
super(fm, i);
this.fragments=fragments;
this.fm=fm;
}
@NonNull
@Override
public Fragment getItem(int position) {
return fragments.get(position);
}
@Override
public int getCount() {
return fragments.size();
}
}
}
xml



