准备步骤在build中编写 SliderLayout的dependence依赖
dependencies {
compile "com.android.support:support-v4:+"
compile 'com.squareup.picasso:picasso:2.3.2'
compile 'com.nineoldandroids:library:2.4.0'
compile 'com.daimajia.slider:library:1.1.5@aar'
}
第一步 在 layout文件里放置SliderLayout
<com.daimajia.slider.library.SliderLayout
android:id="@+id/slider"
android:layout_width="match_parent"
app:pager_animation="Accordion"
app:auto_cycle="true"
app:indicator_visibility="visible"
app:pager_animation_span="1100"
android:layout_height="150sp">
</com.daimajia.slider.library.SliderLayout>
第二步 获取 SliderLayout实例化
实例化
SliderLayout sliderShow = (SliderLayout) findViewById(R.id.slider);
第三步 初始化 TextSliderView 并添加到sliderLayout.addSlider
TextSliderView textSliderView4 = new TextSliderView(this.getActivity());
textSliderView4
.description("风雅水壶")
.image(R.mipmap.slider_four)
.setOnSliderClickListener(new BaseSliderView.OnSliderClickListener() {
@Override
public void onSliderClick(BaseSliderView slider) {
Toast.makeText(getContext(),"你点击了风雅水壶", Toast.LENGTH_SHORT).show();
}
});
sliderLayout.addSlider(textSliderView4);
第四步 进行动画细节设置
sliderLayout.setPresetIndicator(SliderLayout.PresetIndicators.Center_Bottom); //这个为默认的indicator
//sliderLayout.setCustomIndicator(pagerIndicator); //自己设置的pagerIndicator点 注意最好在正中间
sliderLayout.setCustomAnimation(new DescriptionAnimation()); //动画效果
sliderLayout.setPresetTransformer(SliderLayout.Transformer.Default); //设置转动模式,下面的文字说明自动出来
sliderLayout.setDuration(3000); //设置动画效果3秒自动转动
//sliderLayout的监听事件,这个监听事件
sliderLayout.addOnPageChangeListener(new ViewPagerEx.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
Log.d(TAG,"onPageScrolled");
}
@Override
public void onPageSelected(int position) {
Log.d(TAG,"onPageSelected");
}
@Override
public void onPageScrollStateChanged(int state) {
Log.d(TAG,"onPageScrollStateChanged");
}
});
当你不满意他的Custom Indicators时你可以使用自定义的com.daimajia.slider.library.Indicators.PagerIndicator
他给我们提供了6种 点击这里访问那六种写法
例如
<com.daimajia.slider.library.Indicators.PagerIndicator
android:id="@+id/custom_indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
custom:selected_color="#555555"
custom:unselected_color="#55555555"
custom:shape="oval"
custom:selected_padding_left="3dp"
custom:selected_padding_right="3dp"
custom:unselected_padding_left="3dp"
custom:unselected_padding_right="3dp"
custom:selected_width="8dp"
custom:selected_height="8dp"
custom:unselected_width="4dp"
custom:unselected_height="4dp"
/>