抽了点基类重点在initView中的代码。
MainActivity:
public class MainActivity extends BaseActivity<MainPresenter> implements IMainView, View.OnClickListener { private LinearLayout ll_home; private ImageView iv_home; private LinearLayout ll_classify; private ImageView iv_classify; private LinearLayout ll_discover; private ImageView iv_discover; private LinearLayout ll_cart; private ImageView iv_cart; private LinearLayout ll_mine; private ImageView iv_mine; private FragmentHome fragmentHome; private FragmentClassify fragmentClassify; private FragmentDiscover fragmentDiscover; private FragmentCart fragmentCart; private FragmentMine fragmentMine; private FragmentManager supportFragmentManager; @Override MainPresenter initPresenter() { return new MainPresenter(); } @Override int setChildContentView() { return R.layout.activity_main; } @Override void initView() { ll_home = findViewById(R.id.ll_home); iv_home = findViewById(R.id.iv_home); ll_classify = findViewById(R.id.ll_classify); iv_classify = findViewById(R.id.iv_classify); ll_discover = findViewById(R.id.ll_discover); iv_discover = findViewById(R.id.iv_discover); ll_cart = findViewById(R.id.ll_cart); iv_cart = findViewById(R.id.iv_cart); ll_mine = findViewById(R.id.ll_mine); iv_mine = findViewById(R.id.iv_mine); initFragment(); initFragmentAdd(); setImageViewState(iv_home,R.drawable.ac1); setOnClick(); } @Override void initData() { getParent_title().getTitle().setText("京东商城"); } @Override public void onClick(View v) { switch (v.getId()){ case R.id.ll_home: setImageViewState(iv_home,R.drawable.ac1); hideFragment(fragmentHome,fragmentClassify,fragmentDiscover,fragmentCart,fragmentMine); break; case R.id.ll_classify: setImageViewState(iv_classify,R.drawable.abx); hideFragment(fragmentClassify,fragmentHome,fragmentDiscover,fragmentCart,fragmentMine); break; case R.id.ll_discover: setImageViewState(iv_discover,R.drawable.abz); hideFragment(fragmentDiscover,fragmentHome,fragmentClassify,fragmentCart,fragmentMine); break; case R.id.ll_cart: setImageViewState(iv_cart,R.drawable.abv); hideFragment(fragmentCart,fragmentHome,fragmentClassify,fragmentDiscover,fragmentMine); break; case R.id.ll_mine: setImageViewState(iv_mine,R.drawable.ac3); hideFragment(fragmentMine,fragmentClassify,fragmentDiscover,fragmentCart,fragmentHome); break; } } private void setImageViewState(ImageView iv,int id) { iv_home.setImageResource(R.drawable.ac0); iv_classify.setImageResource(R.drawable.abw); iv_discover.setImageResource(R.drawable.aby); iv_cart.setImageResource(R.drawable.abu); iv_mine.setImageResource(R.drawable.ac2); iv.setImageResource(id); } private void hideFragment(Fragment fragmentShow,Fragment...fragmentHide) { supportFragmentManager.beginTransaction().show(fragmentShow).hide(fragmentHide[0]).hide(fragmentHide[1]).hide(fragmentHide[2]).hide(fragmentHide[3]).commit(); } @Override public void onSuccess(String success) { } @Override public void onError(String error) { } private void initFragment() { fragmentHome = new FragmentHome(); fragmentClassify = new FragmentClassify(); fragmentDiscover = new FragmentDiscover(); fragmentCart = new FragmentCart(); fragmentMine = new FragmentMine(); } private void initFragmentAdd() { supportFragmentManager = getSupportFragmentManager(); supportFragmentManager.beginTransaction().add(R.id.fl,fragmentHome).commit(); supportFragmentManager.beginTransaction().add(R.id.fl,fragmentClassify).hide(fragmentClassify).commit(); supportFragmentManager.beginTransaction().add(R.id.fl,fragmentDiscover).hide(fragmentDiscover).commit(); supportFragmentManager.beginTransaction().add(R.id.fl,fragmentCart).hide(fragmentCart).commit(); supportFragmentManager.beginTransaction().add(R.id.fl,fragmentMine).hide(fragmentMine).commit(); } private void setOnClick() { ll_home.setOnClickListener(this); ll_classify.setOnClickListener(this); ll_discover.setOnClickListener(this); ll_cart.setOnClickListener(this); ll_mine.setOnClickListener(this); } @Override protected void onDestroy() { super.onDestroy(); getPresenter().detachView(); } }activity_main.xml:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".view.activity.MainActivity"> <FrameLayout android:id="@+id/fl" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" /> <LinearLayout android:layout_width="match_parent" android:layout_height="56dp" android:orientation="horizontal" android:background="#e0e0e0"> <LinearLayout android:id="@+id/ll_home" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:orientation="vertical" > <ImageView android:id="@+id/iv_home" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ac1" /> </LinearLayout> <LinearLayout android:id="@+id/ll_classify" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:orientation="vertical" > <ImageView android:id="@+id/iv_classify" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/abx" /> </LinearLayout> <LinearLayout android:id="@+id/ll_discover" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:orientation="vertical" > <ImageView android:id="@+id/iv_discover" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/abz" /> </LinearLayout> <LinearLayout android:id="@+id/ll_cart" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:orientation="vertical" > <ImageView android:id="@+id/iv_cart" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/abv" /> </LinearLayout> <LinearLayout android:id="@+id/ll_mine" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:orientation="vertical" > <ImageView android:id="@+id/iv_mine" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ac3" /> </LinearLayout> </LinearLayout> </LinearLayout>