Banner
Banner
//首先先导入banner的依赖
implementation 'com.youth.banner:banner:1.4.10'
然后看下xml布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical">
//创建Banner控件
<com.youth.banner.Banner
android:id="@+id/ban"
android:layout_weight="2"
android:layout_height="0dp"
android:layout_width="match_parent"/>
<TextView
android:layout_weight="4"
android:layout_width="match_parent"
android:layout_height="0dp" />
</LinearLayout>
看Mainactivity
public class MainActivity extends AppCompatActivity {
//声明一个banner对象
Banner banner;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//与布局中banner-id绑定
banner=findViewById(R.id.ban);
//创建图片id集合
List<Integer> images=new ArrayList<>();
//创建title集合
List<String> titles=new ArrayList<>();
//添加图片id
images.add(R.mipmap.c1);
images.add(R.mipmap.c2);
images.add(R.mipmap.c3);
images.add(R.mipmap.c4);
images.add(R.mipmap.c5);
images.add(R.mipmap.c6);
//添加title数据
titles.add("小王子");
titles.add("小蜜蜂");
titles.add("负责");
titles.add("自强");
titles.add("认真");
titles.add("努力");
//设置标题集合
banner.setBannerTitles(titles);
//设置图片集合
banner.setImages(images);
//设置图片加载器
banner.setImageLoader(new ImageLoadBanner());
//设置轮播时间
banner.setDelayTime(2000);
//设置自动轮播,默认为true
banner.isAutoPlay(true);
//设置banner动画效果(此效果是翻书效果)
banner.setBannerAnimation(Transformer.DepthPage);
//设置banner样式
banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE);
//开启banner
banner.start();
}
}
//自定图片加载器
//Imageloader源码中有创建好的Imageview
class ImageLoadBanner extends ImageLoader{
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
//给Imageview设置图片来源
imageView.setImageResource(Integer.parseInt(path.toString()));
}
}
效果
//图片和标题混排