package cn.flightfeather.thirdapp.dataanalysis;
|
|
|
import android.content.Context;
|
import android.os.Bundle;
|
import android.support.annotation.NonNull;
|
import android.support.annotation.Nullable;
|
import android.support.design.widget.NavigationView;
|
import android.support.v4.app.Fragment;
|
import android.support.v4.app.FragmentManager;
|
import android.support.v4.widget.DrawerLayout;
|
import android.view.Gravity;
|
import android.view.LayoutInflater;
|
import android.view.MenuItem;
|
import android.view.View;
|
import android.view.ViewGroup;
|
import android.widget.ImageView;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
import cn.flightfeather.thirdapp.R;
|
import cn.flightfeather.thirdapp.CommonApplication;
|
import cn.flightfeather.thirdapp.httpservice.TaskService;
|
|
/**
|
* 数据分析模块
|
*/
|
public class AnysisFragment extends Fragment implements View.OnClickListener {
|
|
private CommonApplication application;
|
private TaskService taskService;
|
private Context context;
|
private Boolean visible = true;
|
|
private DrawerLayout drawerLayout;
|
private NavigationView NV_analysis;
|
|
private List<Fragment> fragmentList = new ArrayList<>();
|
private FragmentManager fragmentManager;
|
private Fragment fragmentCurrent;
|
|
private ImageView IV_menu;
|
|
|
@Override
|
public View onCreateView(LayoutInflater inflater, ViewGroup container,
|
Bundle savedInstanceState) {
|
|
return inflater.inflate(R.layout.fragment_anysis, container, false);
|
}
|
|
@Override
|
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
|
super.onViewCreated(view, savedInstanceState);
|
|
application = (CommonApplication) getActivity().getApplication();
|
taskService = application.getRetrofit().create(TaskService.class);
|
context = getContext();
|
fragmentManager = getActivity().getSupportFragmentManager();
|
|
initActionbar(view);
|
initNavigationView(view);
|
initFragment();
|
}
|
|
private void initNavigationView(View view){
|
drawerLayout = (DrawerLayout) view.findViewById(R.id.DL_analysis);
|
NV_analysis = (NavigationView) view.findViewById(R.id.NV_analysis);
|
|
// ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(getActivity(), drawerLayout, R.string.action_settings, R.string.action_settings);
|
// drawerLayout.setDrawerListener(toggle);
|
// toggle.syncState();
|
|
// NV_analysis.setItemIconTintList(null);//设置图标颜色为本身颜色
|
|
NV_analysis.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
|
@Override
|
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
|
int order = item.getOrder();
|
try {
|
switchSelectedFragment(fragmentList.get(order));
|
IV_menu.refreshDrawableState();
|
}catch (Exception e){
|
e.printStackTrace();
|
}
|
drawerLayout.closeDrawer(Gravity.END);
|
return true;
|
}
|
});
|
}
|
|
private void initFragment(){
|
fragmentList.add(new AnysisProgressFragment());
|
fragmentList.add(new AnysisProblemFragment());
|
// fragmentList.add(new AnysisRankFragment());
|
fragmentManager.beginTransaction().add(R.id.FL_analysis, fragmentList.get(0)).commit();
|
fragmentCurrent = fragmentList.get(0);
|
}
|
|
private void switchSelectedFragment(Fragment fragment){
|
if (fragment.isAdded()){
|
fragmentManager.beginTransaction().hide(fragmentCurrent).show(fragment).commit();
|
}else {
|
fragmentManager.beginTransaction().add(R.id.FL_analysis, fragment).hide(fragmentCurrent).show(fragment).commit();
|
}
|
|
fragmentCurrent = fragment;
|
}
|
|
private void initActionbar(View view) {
|
// view.findViewById(R.id.img_left).setVisibility(View.GONE);
|
// view.findViewById(R.id.spinner_topclass_task).setVisibility(View.GONE);
|
// view.findViewById(R.id.img_right).setOnClickListener(this);
|
// ((TextView) view.findViewById(R.id.actionbar_title)).setTitle("数据分析");
|
IV_menu = (ImageView) view.findViewById(R.id.IV_menu);
|
IV_menu.setOnClickListener(this);
|
}
|
|
|
@Override
|
public void onHiddenChanged(boolean hidden) {
|
super.onHiddenChanged(hidden);
|
// taskProgressAdapter.notifyDataSetChanged();
|
}
|
|
@Override
|
public void onClick(View v) {
|
switch (v.getId()) {
|
case R.id.IV_menu:
|
if (visible)drawerLayout.openDrawer(Gravity.END);
|
else drawerLayout.closeDrawer(Gravity.END);
|
visible = !visible;
|
break;
|
|
}
|
}
|
}
|