package org.cuieney.videolife.ui.act; import android.graphics.Color; import android.util.Log; import android.view.View; import com.arlib.floatingsearchview.FloatingSearchView; import com.ashokvarma.bottomnavigation.BottomNavigationBar; import com.ashokvarma.bottomnavigation.BottomNavigationItem; import com.jaeger.library.StatusBarUtil; import org.cuieney.videolife.R; import org.cuieney.videolife.common.base.SimpleActivity; import org.cuieney.videolife.common.component.EventUtil; import org.cuieney.videolife.common.base.BaseMainFragment; import org.cuieney.videolife.ui.fragment.book.BookFragment; import org.cuieney.videolife.ui.fragment.essay.EssayFragment; import org.cuieney.videolife.ui.fragment.music.MusicFragment; import org.cuieney.videolife.ui.fragment.newstand.NewstandFragment; import org.cuieney.videolife.ui.fragment.video.VideoFragment; import org.greenrobot.eventbus.Subscribe; import java.util.ArrayList; import java.util.List; import butterknife.BindView; import me.yokeyword.fragmentation.SupportFragment; import me.yokeyword.fragmentation.helper.FragmentLifecycleCallbacks; import static com.ashokvarma.bottomnavigation.BottomNavigationBar.BACKGROUND_STYLE_RIPPLE; import static com.ashokvarma.bottomnavigation.BottomNavigationBar.MODE_FIXED; public class MainActivity extends SimpleActivity implements BaseMainFragment.OnBackToFirstListener { private static final String TAG = "Main"; @BindView(R.id.floating_search_view) FloatingSearchView mSearchView; @BindView(R.id.bottom_navigation_bar) BottomNavigationBar mNavigationView; List<SupportFragment> mFragments; @Override protected int getLayout() { return R.layout.design_layout; } @Override protected void initEventAndData() { mFragments = new ArrayList<>(); mFragments.add(VideoFragment.newInstance()); mFragments.add(MusicFragment.newInstance()); mFragments.add(EssayFragment.newInstance()); mFragments.add(VideoFragment.newInstance()); loadMultipleRootFragment(R.id.act_container, 0 , mFragments.get(0) , mFragments.get(1) , mFragments.get(2) , mFragments.get(3) ); initView(); registerFragmentLifecycleCallbacks(new FragmentLifecycleCallbacks() { @Override public void onFragmentSupportVisible(SupportFragment fragment) { Log.i("MainActivity", "onFragmentSupportVisible--->" + fragment.getClass().getSimpleName()); } }); } private void initView() { mNavigationView .addItem(new BottomNavigationItem(R.drawable.movie_icon, "movie").setActiveColor("#6c4a41").setInActiveColor("#CCCCCC")) .addItem(new BottomNavigationItem(R.drawable.music_icon, "music").setActiveColor("#008867")) .addItem(new BottomNavigationItem(R.drawable.book_icon, "essay").setActiveColor("#8b6b64")) .addItem(new BottomNavigationItem(R.drawable.newspaper_icon, "newstand").setActiveColor("#485A66")) .initialise(); mNavigationView.setBackgroundStyle(BACKGROUND_STYLE_RIPPLE); mNavigationView.setMode(MODE_FIXED); mNavigationView.setAutoHideEnabled(true); mNavigationView.setTabSelectedListener(new BottomNavigationBar.OnTabSelectedListener() { @Override public void onTabSelected(int position) { showHideFragment(mFragments.get(position)); switch (position) { case 0: StatusBarUtil.setColor(MainActivity.this, Color.parseColor("#6c4a41")); break; case 1: StatusBarUtil.setColor(MainActivity.this, Color.parseColor("#008867")); break; case 2: StatusBarUtil.setColor(MainActivity.this, Color.parseColor("#8b6b64")); break; case 3: StatusBarUtil.setColor(MainActivity.this, Color.parseColor("#485A66")); break; } } @Override public void onTabUnselected(int position) { } @Override public void onTabReselected(int position) { } }); } @Subscribe public void hide(String isHide) { if (isHide.equals("true")) { mSearchView.setVisibility(View.GONE); } else { mSearchView.setVisibility(View.VISIBLE); } } @Override public void onStart() { super.onStart(); EventUtil.register(this); } @Override public void onDestroy() { super.onDestroy(); EventUtil.unregister(this); } @Override public void onBackToFirstFragment() { mNavigationView.selectTab(0); } }