banner图片轮播+PulltoRefresh 多条目

1.banner适配器



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

import com.nostra13.universalimageloader.core.ImageLoader;
import com.recker.flybanner.FlyBanner;

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

import bw.com.rk_day20.Person.ApiPerson;
import bw.com.rk_day20.R;


public class ApiAdapter extends BaseAdapter {
    private Context context;
    private List<ApiPerson.DataBean> list;
    private int A = 0;
    private int B = 1;
    int c = 1;
    public ApiAdapter(Context context) {
        this.context = context;
        list = new ArrayList<>();
    }

    public void setList(List<ApiPerson.DataBean> list) {
        if (list != null){
            this.list = list;
        }
        notifyDataSetChanged();
    }
    public void addList(List<ApiPerson.DataBean> list) {
        if (list != null){
            this.list.addAll(list);
        }
        notifyDataSetChanged();
    }

    @Override
    public int getItemViewType(int position) {
        switch (position){
            case 0:
                c = 0;
                return A;
                default:
                    c = 1;
                    return B;
        }


    }

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

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

    @Override
    public ApiPerson.DataBean 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 holder;
        if (convertView == null){
            if (c == 1){
                convertView = LayoutInflater.from(context).inflate(R.layout.item,parent,false);
                holder = new ViewHolder(convertView);
            }else {
                convertView = LayoutInflater.from(context).inflate(R.layout.itme2,parent,false);
                holder = new ViewHolder(convertView);
            }

        }{
            holder = (ViewHolder) convertView.getTag();
        }
        holder.setText(getItem(position));
        return convertView;
    }
    class ViewHolder{
        TextView summary;
        TextView title;
        ImageView pic_url;
        FlyBanner fly;
        public ViewHolder(View convertView) {

           summary = convertView.findViewById(R.id.summary);
            title = convertView.findViewById(R.id.title);
            pic_url = convertView.findViewById(R.id.pic_url);
            fly = convertView.findViewById(R.id.fly);
            convertView.setTag(this);
        }

        public void setText(ApiPerson.DataBean item) {
            if (c==1){
                summary.setText(item.getNews_summary());
                title.setText(item.getNews_title());
                ImageLoader.getInstance().displayImage(item.getPic_url(),pic_url);
            }else {
                ArrayList<String> bann = new ArrayList<>();
                bann.add("http://www.zhaoapi.cn//images//quarter//ad1.png");
                bann.add("http://www.zhaoapi.cn//images//quarter//ad2.png");
                bann.add("http://www.zhaoapi.cn//images//quarter//ad3.png");
                bann.add("http://www.zhaoapi.cn//images//quarter//ad4.png");
                fly.setImagesUrl(bann);
            }

        }
    }
}

banner布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.recker.flybanner.FlyBanner
        android:id="@+id/fly"
        android:layout_width="match_parent"
        android:layout_height="150dp"></com.recker.flybanner.FlyBanner>

</LinearLayout>

猜你喜欢

转载自blog.csdn.net/weixin_43920581/article/details/85126901
今日推荐