class HeaderViewHolder extends RecyclerView.ViewHolder {
@BindView(R.id.slider)
SliderLayout slider;
public HeaderViewHolder(View itemView) {
super(itemView);
ButterKnife.bind(this, itemView);
//给SliderLayout添加图片,数据来源于data对象
for (int i = 0; i < data.getHead().getPromotionList().size(); i++) {
Promotion promotion = data.getHead().getPromotionList().get(i);
//TextSliderView 等同于ImageView+TextView 即能显示文本又能显示图片
TextSliderView textSliderView = new TextSliderView(activity);
textSliderView
.description(promotion.getInfo())//指定描述文本内容
.image(promotion.getPic())//指定需要加载图片
.setScaleType(BaseSliderView.ScaleType.Fit);//前景对背景填充方式 FitXY centercrop
//将textSliderView控件添加在SliderLayout内部
slider.addSlider(textSliderView);
}
//动画效果指定
slider.setPresetTransformer(SliderLayout.Transformer.DepthPage);//指定SliderLayout图片切换动画效果
slider.setPresetIndicator(SliderLayout.PresetIndicators.Center_Bottom);//指定点位置
slider.setCustomAnimation(new DescriptionAnimation());//描述文字出现动画效果
slider.setDuration(4000);//图片翻页时长
}
}
//
<com.daimajia.slider.library.SliderLayout
android:id="@+id/slider"
android:layout_width="match_parent"
android:layout_height="200dp" />
//picasso图片异步加载框架 类似于Glide compile 'com.squareup.picasso:picasso:2.3.2' //兼容低版本sdk动画的jar包 compile 'com.nineoldandroids:library:2.4.0' //自定义控件所在的jar包 compile 'com.daimajia.slider:library:1.1.5@aar'