// Path: app/src/main/java/com/github/bigexcalibur/herovideo/util/DisplayUtil.java
// public class DisplayUtil
// {
// 
//     public static int px2dp(Context context, float pxValue)
//     {
// 
//         final float scale = context.getResources().getDisplayMetrics().density;
//         return (int) (pxValue / scale + 0.5f);
//     }
// 
//     public static int dp2px(Context context, float dipValue)
//     {
// 
//         final float scale = context.getResources().getDisplayMetrics().density;
//         return (int) (dipValue * scale + 0.5f);
//     }
// 
//     public static int px2sp(Context context, float pxValue)
//     {
// 
//         final float fontScale = context.getResources().getDisplayMetrics().scaledDensity;
//         return (int) (pxValue / fontScale + 0.5f);
//     }
// 
//     public static int sp2px(Context context, float spValue)
//     {
// 
//         final float fontScale = context.getResources().getDisplayMetrics().scaledDensity;
//         return (int) (spValue * fontScale + 0.5f);
//     }
// 
//     public static int getScreenWidth(Context context)
//     {
// 
//         DisplayMetrics dm = context.getResources().getDisplayMetrics();
//         return dm.widthPixels;
//     }
// 
//     public static int getScreenHeight(Context context)
//     {
// 
//         DisplayMetrics dm = context.getResources().getDisplayMetrics();
//         return dm.heightPixels;
//     }
// 
//     public static float getDisplayDensity(Context context)
//     {
// 
//         if (context == null)
//         {
//             return -1;
//         }
//         return context.getResources().getDisplayMetrics().density;
//     }
// }


import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import com.bilibili.magicasakura.widgets.TintView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.github.bigexcalibur.herovideo.R;
import com.github.bigexcalibur.herovideo.util.DisplayUtil;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;
import butterknife.BindView;
import butterknife.ButterKnife;
import rx.Observable;
import rx.Subscription;
import rx.android.schedulers.AndroidSchedulers;
import rx.schedulers.Schedulers;
import rx.subscriptions.CompositeSubscription;
        destory();

        if (list.size() == 0)
        {
            this.setVisibility(GONE);
            return;
        }

        bannerList = new ArrayList<>();
        bannerList.addAll(list);
        final int pointSize;
        pointSize = bannerList.size();

        if (pointSize == 2)
        {
            bannerList.addAll(list);
        }
        //判断是否清空 指示器点
        if (points.getChildCount() != 0)
        {
            points.removeAllViewsInLayout();
        }

        //初始化与个数相同的指示器点
        for (int i = 0; i < pointSize; i++)
        {
            TintView dot = new TintView(getContext());
            dot.setBackgroundResource(unSelcetRes);
            LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
                    DisplayUtil.dp2px(getContext(), 5),
// Path: app/src/main/java/com/github/bigexcalibur/herovideo/util/DisplayUtil.java
// public class DisplayUtil
// {
// 
//     public static int px2dp(Context context, float pxValue)
//     {
// 
//         final float scale = context.getResources().getDisplayMetrics().density;
//         return (int) (pxValue / scale + 0.5f);
//     }
// 
//     public static int dp2px(Context context, float dipValue)
//     {
// 
//         final float scale = context.getResources().getDisplayMetrics().density;
//         return (int) (dipValue * scale + 0.5f);
//     }
// 
//     public static int px2sp(Context context, float pxValue)
//     {
// 
//         final float fontScale = context.getResources().getDisplayMetrics().scaledDensity;
//         return (int) (pxValue / fontScale + 0.5f);
//     }
// 
//     public static int sp2px(Context context, float spValue)
//     {
// 
//         final float fontScale = context.getResources().getDisplayMetrics().scaledDensity;
//         return (int) (spValue * fontScale + 0.5f);
//     }
// 
//     public static int getScreenWidth(Context context)
//     {
// 
//         DisplayMetrics dm = context.getResources().getDisplayMetrics();
//         return dm.widthPixels;
//     }
// 
//     public static int getScreenHeight(Context context)
//     {
// 
//         DisplayMetrics dm = context.getResources().getDisplayMetrics();
//         return dm.heightPixels;
//     }
// 
//     public static float getDisplayDensity(Context context)
//     {
// 
//         if (context == null)
//         {
//             return -1;
//         }
//         return context.getResources().getDisplayMetrics().density;
//     }
// }


// Path: app/src/main/java/com/github/bigexcalibur/herovideo/ui/widget/banner/BannerView.java
import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import com.bilibili.magicasakura.widgets.TintView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.github.bigexcalibur.herovideo.R;
import com.github.bigexcalibur.herovideo.util.DisplayUtil;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;
import butterknife.BindView;
import butterknife.ButterKnife;
import rx.Observable;
import rx.Subscription;
import rx.android.schedulers.AndroidSchedulers;
import rx.schedulers.Schedulers;
import rx.subscriptions.CompositeSubscription;

        destory();

        if (list.size() == 0)
        {
            this.setVisibility(GONE);
            return;
        }

        bannerList = new ArrayList<>();
        bannerList.addAll(list);
        final int pointSize;
        pointSize = bannerList.size();

        if (pointSize == 2)
        {
            bannerList.addAll(list);
        }
        //判断是否清空 指示器点
        if (points.getChildCount() != 0)
        {
            points.removeAllViewsInLayout();
        }

        //初始化与个数相同的指示器点
        for (int i = 0; i < pointSize; i++)
        {
            TintView dot = new TintView(getContext());
            dot.setBackgroundResource(unSelcetRes);
            LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
                    DisplayUtil.dp2px(getContext(), 5),
                    DisplayUtil.dp2px(getContext(), 5));