分页加载的adapter

public class MyAdapter extends BaseAdapter{
    private Context context;
    private JSONArray data;

    public MyAdapter(Context context, JSONArray data) {
        this.context = context;
        this.data = data;
    }

    @Override
    public int getCount() {
        return data.length();
    }

    @Override
    public Object getItem(int position) {
        try {
            return data.get(position);
        } catch (JSONException e) {
            e.printStackTrace();

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

        return position;
    }

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

    @Override
    public int getItemViewType(int position) {
        int type = 1;
        if(position==0){
            type = 0;
            return type;
        }else{
            type=1;
            return type;
        }
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        int type = getItemViewType(position);
        Log.i("aaa",type+"----");
        if (type==1){
            ViewHanble hanble;
            if (convertView == null){
                hanble = new ViewHanble();
                convertView = View.inflate(context, R.layout.zi1,null);
                hanble.z1_img = (ImageView) convertView.findViewById(R.id.z1_image);
                hanble.z1_text = (TextView) convertView.findViewById(R.id.z1_text);
                convertView.setTag(hanble);
            }else{
                hanble = (ViewHanble) convertView.getTag();
            }
            try {
                JSONObject jsonObject = data.getJSONObject(position);
                String title = jsonObject.getString("title");
                String thumbnail_pic_s = jsonObject.getString("thumbnail_pic_s");
                DisplayImageOptions options = ImageLoaderUtils.getOptions();
                ImageLoader.getInstance().displayImage(thumbnail_pic_s,hanble.z1_img,options);
                hanble.z1_text.setText(title);
            } catch (JSONException e) {
                e.printStackTrace();
            }

        }else {
            ViewHanble hanble ;

            if (convertView == null){
                hanble = new ViewHanble();
                convertView = View.inflate(context, R.layout.zi2,null);
                hanble.pager= (ViewPager) convertView.findViewById(R.id.z2_pager);
                convertView.setTag(hanble);
            }else{
               hanble = (ViewHanble) convertView.getTag();
            }

扫描二维码关注公众号,回复: 3413375 查看本文章

            try {
                JSONObject jsonObject = data.getJSONObject(position);
                String thumbnail_pic_s = jsonObject.getString("thumbnail_pic_s");
                String thumbnail_pic_s02 = jsonObject.getString("thumbnail_pic_s02");
                String thumbnail_pic_s03 = jsonObject.getString("thumbnail_pic_s03");
                ImageView img1 = new ImageView(context);
                ImageView img2 = new ImageView(context);
                ImageView img3 = new ImageView(context);
                DisplayImageOptions options = ImageLoaderUtils.getOptions();
                ImageLoader.getInstance().displayImage(thumbnail_pic_s,img1,options);
                ImageLoader.getInstance().displayImage(thumbnail_pic_s02,img2,options);
                ImageLoader.getInstance().displayImage(thumbnail_pic_s03,img3,options);
                List<ImageView> list = new ArrayList<>();
                list.add(img1);
                list.add(img2);
                list.add(img3);
                MyPagerAdapter adapter = new MyPagerAdapter(context,list);
                hanble.pager.setAdapter(adapter);
                if (hanble.mHandler !=null){
                    hanble.mHandler.removeCallbacksAndMessages(null);
                }
                hanble.mHandler.sendEmptyMessageDelayed(0,1000);
            } catch (JSONException e) {
                e.printStackTrace();
            }

        }
        return convertView;
    }
    class ViewHanble{
        TextView z1_text;
        ImageView z1_img;
        ViewPager pager;

        public Handler mHandler = new Handler(){
            @Override
            public void handleMessage(Message msg) {
                super.handleMessage(msg);
                if (msg.what==0){
                    int i = pager.getCurrentItem();
                    i++;
                    pager.setCurrentItem(i);
                    mHandler.sendEmptyMessageDelayed(0,1000);
                }
            }
        };
    }

}
 

猜你喜欢

转载自blog.csdn.net/qq_41880253/article/details/81270593
今日推荐