自定义控件:图片轮播,点击图片进入webview
版权声明:本文为博主原创文章,未经博主允许不得转载。
很方便的先自定义控件,可以直接使用,添加属性和实现功能:
import java.util.ArrayList;
import android.content.Context;
import android.os.Handler;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import jr.xiaomai.com.xmjr.R;
import jr.xiaomai.com.xmjr.entity.Banners;
/**
* 广告图片自动轮播控件</br>
* <p/>
* <pre>
* 集合ViewPager和指示器的一个轮播控件,主要用于一般常见的广告图片轮播,具有自动轮播和手动轮播功能
* 使用:只需在xml文件中使用{@code <com.minking.imagecycleview.ImageCycleView/>} ,
* 然后在页面中调用 {@link #setImageResources(ArrayList, SlideADViewListener) }即可!
*
* 另外提供{@link #startImageCycle() } \ {@link #pushImageCycle() }两种方法,用于在Activity不可见之时节省资源;
* 因为自动轮播需要进行控制,有利于内存管理
* </pre>
*/
public class MyViewPager extends LinearLayout {
/**
* 上下文
*/
private Context mContext;
/**
* 图片轮播视图
*/
private ViewPager mAdvPager = null;
/**
* 滚动图片视图适配器
*/
private ImageCycleAdapter mAdvAdapter;
/**
* 图片轮播指示器控件
*/
private ViewGroup mGroup;
/**
* 图片轮播指示器-个图
*/
private ImageView mImageView = null;
/**
* 滚动图片指示器-视图列表
*/
private ImageView[] mImageViews = null;
/**
* 图片滚动当前图片下标
*/
private int mImageIndex = 0;
/**
* 手机密度
*/
private float mScale;
/**
* @param context
*/
public MyViewPager(Context context) {
super(context);
}
/**
* @param context
* @param attrs
*/
public MyViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
mContext = context;
mScale = context.getResources().getDisplayMetrics().density;
LayoutInflater.from(context).inflate(R.layout.layout_slide_ad_view, this);
mAdvPager = (ViewPager) findViewById(R.id.adv_pager);
mAdvPager.setOnPageChangeListener(new GuidePageChangeListener());
mAdvPager.setOnTouchListener(new OnTouchListener()