public class MyBannerActivity extends AppCompatActivity {
private String[] picUrl = {
"https://img.huxiucdn.com/article/cover/201804/11/142701198959.jpg?imageView2/1/w/710/h/400/|imageMogr2/strip/interlace/1/quality/85/format/jpg",
"https://img.huxiucdn.com/article/cover/201809/10/195039242422.jpg?imageView2/1/w/710/h/400/|imageMogr2/strip/interlace/1/quality/85/format/jpg",
"https://img.huxiucdn.com/article/cover/201809/10/143541089263.jpg?imageView2/1/w/710/h/400/|imageMogr2/strip/interlace/1/quality/85/format/jpg"
};
private Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
if(msg.what == 512 ){
int item = viewPager.getCurrentItem()+1;
viewPager.setCurrentItem(item);
}
handler.sendEmptyMessageDelayed(512,2000);
}
};
private Context mcontext;
private LinearLayout linearLayout;
private ViewPager viewPager;
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my_banner);
mcontext = this;
//初始化控件
linearLayout = (LinearLayout) findViewById(R.id.linear);
viewPager = (ViewPager) findViewById(R.id.viewpage);
viewPager.setAdapter(new PagerAdapter() {
@Override
public int getCount() {
return Integer.MAX_VALUE;
}
@Override
public boolean isViewFromObject(@NonNull View view, @NonNull Object o) {
return view == o;
}
@Override
public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) {
container.removeView((View) object);
}
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
@NonNull
@Override
public Object instantiateItem(@NonNull ViewGroup container, int position) {
View view = View.inflate(mcontext, R.layout.layout_image, null);
ImageView image = (ImageView) view.findViewById(R.id.iv_imaeg);
Picasso.with(mcontext).load(picUrl[position % picUrl.length]).into(image);
setPiont(position % picUrl.length);
container.addView(view);
return view;
}
});
viewPager.setCurrentItem(Integer.MAX_VALUE/2-4);
handler.sendEmptyMessageDelayed(512,2000);
}
//设置小圆点
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
private void setPiont(int postion) {
linearLayout.removeAllViews();
for (int i = 0 ; i <picUrl.length ; i ++){
ImageView iamge = new ImageView(mcontext);
if(postion == i){
iamge.setImageDrawable(getDrawable(R.drawable.sildo));
}else{
iamge.setImageDrawable(getDrawable(R.drawable.unsildo));
}
linearLayout.addView(iamge);
LinearLayout.LayoutParams params=(LinearLayout.LayoutParams)iamge.getLayoutParams();
params.width=20;
params.height=20;
params.leftMargin=5;
iamge.setLayoutParams(params);
iamge.setScaleType(ImageView.ScaleType.FIT_XY);
}
}
}