//BaseActivity
public abstract class BaseActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(initLayout()); //初始化控件 initView(); //设置数据 getNews(); } /** * 设置布局 * * @return 布局文件 */ protected abstract int initLayout(); /** * 初始化控件 */ protected abstract void initView(); /** * 设置数据 */ protected abstract void getNews(); }
//主Activity
public class MainActivity extends BaseActivity implements View.OnClickListener { private ViewPager view_pager; private ArrayList<Fragment> fragmentlist; private Button btn_1,btn_2,btn_3,btn_4,btn_5; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //创建集合 fragmentlist = new ArrayList<>(); OneFragment oneFragment = new OneFragment(); TwoFragment twoFragment = new TwoFragment(); ThreeFragment threeFragment = new ThreeFragment(); FourFragment fourFragment = new FourFragment(); FiveFragment fiveFragment = new FiveFragment(); fragmentlist.add(oneFragment); fragmentlist.add(twoFragment); fragmentlist.add(threeFragment); fragmentlist.add(fourFragment); fragmentlist.add(fiveFragment); //设置监听 view_pager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) { @Override public Fragment getItem(int i) { return fragmentlist.get(i); } @Override public int getCount() { return fragmentlist.size(); } }); btn_1.setOnClickListener(this); btn_2.setOnClickListener(this); btn_3.setOnClickListener(this); btn_4.setOnClickListener(this); btn_5.setOnClickListener(this); } @Override protected int initLayout() { return R.layout.activity_main; } @Override protected void initView() { //初始化控件 view_pager = findViewById(R.id.view_pager); btn_1 = findViewById(R.id.bnt_1); btn_2=findViewById(R.id.bnt_2); btn_3=findViewById(R.id.bnt_3); btn_4=findViewById(R.id.bnt_4); btn_5=findViewById(R.id.bnt_5); //初始化数据 view_pager.setOffscreenPageLimit(4); } @Override protected void getNews() { // } @Override public void onClick(View v) { switch (v.getId()){ case R.id.bnt_1: view_pager.setCurrentItem(0); break; case R.id.bnt_2: view_pager.setCurrentItem(1); break; case R.id.bnt_3: view_pager.setCurrentItem(2); break; case R.id.bnt_4: