VersionsInfoFragment.java 5.3 KB
package com.hjx.personalcenter.fragment;

import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.GridView;
import android.widget.SimpleAdapter;

import com.hjx.personalcenter.R;
import com.hjx.personalcenter.customdialog.VerSionDialog;
import com.hjx.personalcenter.db.SaveParam;
import com.hjx.personalcenter.interfaces.DialogCallBack;
import com.hjx.personalcenter.model.VersionInfo;
import com.hjx.personalcenter.util.AlertUtils;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * Created by h on 2017/8/12.
 */

public class VersionsInfoFragment extends Fragment implements AdapterView.OnItemClickListener,DialogCallBack.VersionCallBack {
    private GridView gridView;
    private List<Map<String, Object>> data_list;
    private SimpleAdapter sim_adapter;
    private View mView;
    private int type;
    public static String TABLAYOUT_FRAGMENT = "tab_fragment";

    public static VersionsInfoFragment newInstance(int type) {
        VersionsInfoFragment fragment = new VersionsInfoFragment();
        Bundle bundle = new Bundle();
        bundle.putSerializable(TABLAYOUT_FRAGMENT, type);
        fragment.setArguments(bundle);
        return fragment;

    }
    // 图片封装为一个数组
    private int[] icon = { R.mipmap.ic_launcher, R.mipmap.ic_launcher,
            R.mipmap.ic_launcher, R.mipmap.ic_launcher, R.mipmap.ic_launcher,
            R.mipmap.ic_launcher, R.mipmap.ic_launcher, R.mipmap.ic_launcher,
            R.mipmap.ic_launcher};
    private String[] subject = { "语文", "数学", "英语", "物理", "化学", "生物", "政治",
            "历史", "地理" };
    private String[] publish = { "人民教育出版社", "人民教育出版社", "人民教育出版社",
            "人民教育出版社", "人民教育出版社", "人民教育出版社", "人民教育出版社",
            "人民教育出版社", "人民教育出版社" };
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        if (mView == null) {
            mView = inflater.inflate(R.layout.fragment_changge_version_info, container, false);
            initView(mView);
            initData();
            setLister();


        }
        return mView;
    }
    //初始化
    private void initView(View mView) {
        gridView =(GridView)  mView.findViewById(R.id.grideview);

    }
    private void initData() {
        data_list = new ArrayList<Map<String, Object>>();
        getData();
        String [] from ={"image","text","text1"};
        int [] to = {R.id.image,R.id.text};
        sim_adapter = new SimpleAdapter(getActivity(), data_list, R.layout.fragment_changge_version_info_itmes, from, to);
        //配置适配器
        gridView.setAdapter(sim_adapter);
    }
    public List<Map<String, Object>> getData(){
        //cion和iconName的长度是相同的,这里任选其一都可以
        for(int i=0;i<icon.length;i++){
            Map<String, Object> map = new HashMap<String, Object>();
            map.put("image", icon[i]);
            map.put("text", subject[i]);
            map.put("text1", publish[i]);
            data_list.add(map);
        }

        return data_list;
    }
    private void setLister() {
        gridView.setOnItemClickListener(this);
    }

    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        switch (position){

            case 0:
                SaveParam.getInstance().saveLoginParam(getActivity(),SaveParam.VERSION,"语文");
                break;
            case 1:
                SaveParam.getInstance().saveLoginParam(getActivity(),SaveParam.VERSION,"数学");
                break;
            case 2:
                SaveParam.getInstance().saveLoginParam(getActivity(),SaveParam.VERSION,"英语");
                break;
            case 3:
                SaveParam.getInstance().saveLoginParam(getActivity(),SaveParam.VERSION,"物理");
                break;
            case 4:
                SaveParam.getInstance().saveLoginParam(getActivity(),SaveParam.VERSION,"化学");
                break;
            case 5:
                SaveParam.getInstance().saveLoginParam(getActivity(),SaveParam.VERSION,"生物");
                break;
            case 6:
                SaveParam.getInstance().saveLoginParam(getActivity(),SaveParam.VERSION,"政治");
                break;
            case 7:
                SaveParam.getInstance().saveLoginParam(getActivity(),SaveParam.VERSION,"历史");
                break;
            case 8:
                SaveParam.getInstance().saveLoginParam(getActivity(),SaveParam.VERSION,"地理");
                break;
        }

        VerSionDialog.getInstance((DialogCallBack.VersionCallBack) this).show(getChildFragmentManager(), "VerSionDialog");

    }

    @Override
    public void versionOnItemClick(ArrayList<VersionInfo.DataBean> data, int position, int type) {
        String regionName = data.get(position).getPressName();
        //SaveParam.getInstance().saveLoginParam(this, "sheng", regionName);
        AlertUtils.showToast(getActivity(),regionName);


    }
}