多条目+

Adapter

package com.example.test01.Adapter;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.example.test01.Bean.MyloadBean;
import com.example.test01.R;
import com.nostra13.universalimageloader.core.ImageLoader;

import java.util.ArrayList;
import java.util.List;

public class MyloadAdapter extends BaseAdapter {
    private static final int Count = 2;
    private List<MyloadBean.Result01> list;
    private Context context;
    private int TYPE01=0;
    private int TYPE02=1;

    public MyloadAdapter(Context context) {
        this.context = context;
        list = new ArrayList<>();
    }

    public void setList(List<MyloadBean.Result01> lists) {
        list.clear();
        if(lists!=null){
            list.addAll(lists);
        }
        notifyDataSetChanged();
    }

    public void addList(List<MyloadBean.Result01> lists) {
        if(lists!=null){
            list.addAll(lists);
        }
        notifyDataSetChanged();
    }

    @Override
    public int getItemViewType(int position) {
        return position%2;
    }

    @Override
    public int getViewTypeCount() {
        return Count;
    }

    @Override
    public int getCount() {
        return list.size();
    }

    @Override
    public MyloadBean.Result01 getItem(int position) {
        return list.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder viewHolder;
        if(convertView==null){

            viewHolder = new ViewHolder();

            convertView = View.inflate(context,
                    getItemViewType(position)==TYPE01?R.layout.item02:R.layout.item01,
                    null);

            viewHolder.t_summary=convertView.findViewById(R.id.item01_summary);
            viewHolder.urlImager=convertView.findViewById(R.id.item01_image);

            viewHolder.id=convertView.findViewById(R.id.item02_id);
            viewHolder.name=convertView.findViewById(R.id.item02_name);

            convertView.setTag(viewHolder);

        }else{
            viewHolder = (ViewHolder) convertView.getTag();
        }

        if(getItemViewType(position)==TYPE01){
            viewHolder.id.setText(list.get(position).getId());
            viewHolder.name.setText(list.get(position).getName());
        }

        if(getItemViewType(position)==TYPE02){
            viewHolder.t_summary.setText(list.get(position).getSummary());
            ImageLoader.getInstance().displayImage(list.get(position).getImageUrl(),viewHolder.urlImager);
        }

        return convertView;
    }

    class ViewHolder{
        TextView id,name;
        TextView t_summary;
        ImageView urlImager;
    }
}

Activity

package com.example.test01.Fragment.Dianying_Fragment;

import android.os.Bundle;
import android.support.annotation.NonNull;
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.ListView;
import android.widget.Toast;

import com.example.test01.Adapter.MyloadAdapter;
import com.example.test01.Bean.MyloadBean;
import com.example.test01.R;
import com.example.test01.Utils.Utils;
import com.handmark.pulltorefresh.library.PullToRefreshBase;
import com.handmark.pulltorefresh.library.PullToRefreshListView;


public class ZhengZai_Fragment extends Fragment {
    private int mPage;
    private MyloadAdapter adapter;
    private PullToRefreshListView listView;

    @Nullable
    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {

        return inflater.inflate(R.layout.dian_shangying,container,false);

    }

    private String urlStr="http://172.17.8.100/movieApi/movie/v1/findHotMovieList?count=10&page=%d";

    @Override
    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);

        listView = view.findViewById(R.id.zheng_pull);

        adapter = new MyloadAdapter(getActivity());

        listView.setAdapter(adapter);

        listView.setMode(PullToRefreshBase.Mode.BOTH);
        mPage=1;
        initData();

        listView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
            @Override
            public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
                mPage=1;
                initData();
            }

            @Override
            public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
                initData();
            }
        });
        initData();
    }

    private void initData() {
        Utils.getInstance().getRequest03(String.format(urlStr,mPage),MyloadBean.class, new Utils.netCallBack<MyloadBean>() {
            @Override
            public void onSuceescc(MyloadBean o) {
                //
                if(o==null){
                    Toast.makeText(getActivity(),"数据请求错误,请重试",Toast.LENGTH_SHORT).show();
                    return;
                }
                if(mPage==1){
                    adapter.setList(o.getResult());
                }else{
                    adapter.addList(o.getResult());

                }
                mPage++;
                listView.onRefreshComplete();
            }
        });

    }
}

猜你喜欢

转载自blog.csdn.net/qq_41972756/article/details/84323977