/** * Copyright 2016 JustWayward Team * <p> * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * <p> * http://www.apache.org/licenses/LICENSE-2.0 * <p> * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.justwayward.reader.ui.activity; import android.content.Context; import android.content.Intent; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; import com.justwayward.reader.R; import com.justwayward.reader.base.BaseActivity; import com.justwayward.reader.component.AppComponent; import com.justwayward.reader.component.DaggerFindComponent; import com.justwayward.reader.ui.fragment.SubRankFragment; import com.justwayward.reader.view.RVPIndicator; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import butterknife.Bind; /** * @author yuyh. * @date 16/9/1. */ public class SubRankActivity extends BaseActivity { public static final String INTENT_WEEK = "_id"; public static final String INTENT_MONTH = "month"; public static final String INTENT_ALL = "all"; public static final String INTENT_TITLE = "title"; public static void startActivity(Context context, String week, String month, String all, String title) { context.startActivity(new Intent(context, SubRankActivity.class) .putExtra(INTENT_WEEK, week) .putExtra(INTENT_MONTH, month) .putExtra(INTENT_ALL, all) .putExtra(INTENT_TITLE, title)); } private String week; private String month; private String all; private String title; @Bind(R.id.indicatorSubRank) RVPIndicator mIndicator; @Bind(R.id.viewpagerSubRank) ViewPager mViewPager; private List<Fragment> mTabContents; private FragmentPagerAdapter mAdapter; private List<String> mDatas; @Override public int getLayoutId() { return R.layout.activity_sub_rank; } @Override protected void setupActivityComponent(AppComponent appComponent) { DaggerFindComponent.builder() .appComponent(appComponent) .build() .inject(this); } @Override public void initToolBar() { week = getIntent().getStringExtra(INTENT_WEEK); month = getIntent().getStringExtra(INTENT_MONTH); all = getIntent().getStringExtra(INTENT_ALL); title = getIntent().getStringExtra(INTENT_TITLE).split(" ")[0]; mCommonToolbar.setTitle(title); mCommonToolbar.setNavigationIcon(R.drawable.ab_back); } @Override public void initDatas() { mDatas = Arrays.asList(getResources().getStringArray(R.array.sub_rank_tabs)); mTabContents = new ArrayList<>(); mTabContents.add(SubRankFragment.newInstance(week)); mTabContents.add(SubRankFragment.newInstance(month)); mTabContents.add(SubRankFragment.newInstance(all)); mAdapter = new FragmentPagerAdapter(getSupportFragmentManager()) { @Override public int getCount() { return mTabContents.size(); } @Override public Fragment getItem(int position) { return mTabContents.get(position); } }; } @Override public void configViews() { mIndicator.setTabItemTitles(mDatas); mViewPager.setAdapter(mAdapter); mViewPager.setOffscreenPageLimit(3); mIndicator.setViewPager(mViewPager, 0); } }