package cn.flightfeather.thirdapp.dataanalysis.rank; import android.content.Intent; import android.graphics.Color; import android.os.Build; import android.os.Bundle; import android.support.annotation.RequiresApi; import android.support.design.widget.TabLayout; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.content.ContextCompat; import android.support.v4.view.ViewCompat; import android.support.v4.view.ViewPager; import android.support.v7.app.AppCompatActivity; import android.view.Gravity; import android.view.View; import android.widget.TextView; import java.util.ArrayList; import java.util.List; import butterknife.BindView; import butterknife.ButterKnife; import butterknife.OnClick; import butterknife.Unbinder; import cn.flightfeather.thirdapp.R; import cn.flightfeather.thirdapp.bean.vo.RankVo; public class AnalysisRankActivity extends AppCompatActivity { // public static final String ARG_PARAM1 = "RankVo"; public static final String ARG_PARAM2 = "topTask"; public static final String ARG_PARAM3 = "sceneTypeName"; public static final String ARG_PARAM4 = "rankType";//首次展示的排名类型,场景综合排名 或 街道综合排名 private final String TITLE = "排名"; private RankVo rankVo; private String topTask; private String sceneTypeName; private int rankType; private Unbinder unbinder; // // @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_analysis_rank); unbinder = ButterKnife.bind(this); Intent intent = getIntent(); this.rankVo = (RankVo) intent.getSerializableExtra(ARG_PARAM1); this.topTask = intent.getStringExtra(ARG_PARAM2); this.sceneTypeName = intent.getStringExtra(ARG_PARAM3); this.rankType = intent.getIntExtra(ARG_PARAM4, 0); initToolBar(); initTitle(); initTab(); initViewPager(); } @Override protected void onDestroy() { super.onDestroy(); if (unbinder != null) { unbinder.unbind(); } } // // @BindView(R.id.action_bar_rank) View action_bar; @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) private void initToolBar() { action_bar.setElevation(0); action_bar.setBackgroundColor(Color.alpha(0)); action_bar.findViewById(R.id.spinner_topclass_task).setVisibility(View.GONE); // action_bar.findViewById(R.id.img_left).setVisibility(View.GONE); action_bar.findViewById(R.id.img_right).setVisibility(View.INVISIBLE); action_bar.findViewById(R.id.ll_menu_text).setVisibility(View.VISIBLE); TextView title = action_bar.findViewById(R.id.actionbar_title); title.setText(TITLE); } @OnClick(R.id.img_left) void onClickBack() { this.finish(); } // // @BindView(R.id.text_topTask) TextView text_topTask; @BindView(R.id.text_scene) TextView text_scene; private void initTitle() { text_topTask.setText(topTask); text_scene.setText(sceneTypeName); } // // @BindView(R.id.tabLayout) TabLayout tabLayout; @BindView(R.id.viewPager) ViewPager viewPager; private List tabIndicators;//tab标题 private List tabFragments;//内容 private ContentPagerAdapter contentAdapter;//viewPager内容页面适配器 private void initTab(){ tabLayout.setTabMode(TabLayout.MODE_SCROLLABLE); tabLayout.setTabGravity(Gravity.CENTER_HORIZONTAL); tabLayout.setTabTextColors(ContextCompat.getColor(this, R.color.black), ContextCompat.getColor(this, R.color.orange)); tabLayout.setSelectedTabIndicatorColor(ContextCompat.getColor(this, R.color.orange)); ViewCompat.setElevation(tabLayout, 2); tabLayout.setupWithViewPager(viewPager);//将tab和viewPager绑定 } private void initViewPager(){ tabIndicators = new ArrayList<>(); tabIndicators.add("场景综合排名"); tabIndicators.add("街道综合排名"); tabFragments = new ArrayList<>(); tabFragments.add(SceneRankContentFragment.newInstance(rankVo.getSceneRanks())); tabFragments.add(TownRankContentFragment.newInstance(rankVo.getTownRanks())); contentAdapter = new ContentPagerAdapter(getSupportFragmentManager()); viewPager.setAdapter(contentAdapter); try { viewPager.setCurrentItem(rankType); } catch (Exception e) { e.printStackTrace(); } } /** * viewPager适配器 */ class ContentPagerAdapter extends FragmentPagerAdapter { public ContentPagerAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { return tabFragments.get(position); } @Override public int getCount() { return tabIndicators.size(); } @Override public CharSequence getPageTitle(int position) { return tabIndicators.get(position); } } // }