HDL_Widget Android和iOS精简版的库,去掉高德SDK,和iOS裁剪方法
JLChen
2021-01-08 07a4e46efd0d180f881a9761c6f737e5d1c47848
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
package com.hdl.widget.CoverFlowViewPager;
 
import android.support.v4.view.PagerAdapter;
import android.view.View;
import android.view.ViewGroup;
 
import java.util.List;
 
/**
 * Created by JLChen on 2019/8/22
 */
public class HDLCoverFlowViewPagerAdapter extends PagerAdapter {
    private List<View> mList;
    private int mRoundCorners = -1;
 
    /**
     * 设置圆角
     *
     * @param mRoundCorners
     */
    public void setmRoundCorners(int mRoundCorners) {
        this.mRoundCorners = mRoundCorners;
    }
 
    /**
     * 点击回调
     */
    public static interface OnClickViewsListener {
        void onViewsClick(int position);
 
//        void onViewsChange(int position);
    }
 
    private OnClickViewsListener mOnClickViewsListener;
 
    public void setOnClickViewsListener(OnClickViewsListener listener) {
        mOnClickViewsListener = listener;
 
    }
 
    public HDLCoverFlowViewPagerAdapter(List<View> list) {
        this.mList = list;
//        this.mContext = context;
    }
 
    @Override
    public int getCount() {
        return this.mList.size();
    }
 
    @Override
    public boolean isViewFromObject(View view, Object object) {
        return view == object;
    }
 
    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        container.removeView((View) object);
    }
 
    @Override
    public Object instantiateItem(ViewGroup container, final int position) {
//        final int index = position % mList.size();
        View view = mList.get(position);
        view.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                mOnClickViewsListener.onViewsClick(position);
            }
        });
 
        container.addView(view);
        return view;
    }
 
    @Override
    public int getItemPosition(Object object) {
        // 最简单解决 notifyDataSetChanged() 页面不刷新问题的方法
        return POSITION_NONE;
    }
 
    public void updateViewsList(List<View> list){
        mList = list;
//        notifyDataSetChanged();
    }
 
 
 
}