【Android】Android中使用CarouselView实现轮播图的效果

实现图片每隔一秒的自动播放,或者可以自己左右滑动,再点击对应的图片会提示相关信息。

目录

一、添加依赖

二、布局文件

三、在drawable中引入图片资源

 四、在java文件中写控制功能:


轮播图

一、添加依赖

在build.grade(module)中添加依赖:

implementation 'com.synnapps:carouselview:0.1.5'

二、布局文件

在布局中加入CarouselView控件:

activity_main.xml:

 <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:padding="20dp">
        <com.synnapps.carouselview.CarouselView
            android:layout_width="350dp"
            android:layout_height="200dp"
            android:id="@+id/carouselView"
            android:layout_centerHorizontal="true"
            android:layout_marginBottom="10dp"
            app:fillColor="#0010d4"
            app:pageColor="#00000000"
            app:radius="5dp"
            app:slideInterval="3000"
            app:strokeColor="#FF777777"
            app:strokeWidth="1dp" />

    </RelativeLayout>

三、在drawable中引入图片资源

 四、在java文件中写控制功能:

MainActivity.java:

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.widget.ImageView;
import android.widget.Toast;

import com.synnapps.carouselview.CarouselView;
import com.synnapps.carouselview.ImageClickListener;
import com.synnapps.carouselview.ImageListener;

public class MainActivity extends AppCompatActivity {
    CarouselView carouselView;
    int[] sampleImages={R.drawable.shijing1,R.drawable.shijing2,R.drawable.shijing3,R.drawable.shijing4,R.drawable.shijing5,R.drawable.shijing6,R.drawable.shijing7,R.drawable.shijng8,R.drawable.shijng9,R.drawable.shijng10};
    String[] message = {
            "苏堤春晓",
            "断桥残雪",
            "平湖秋月",
            "柳浪闻莺",
            "双峰插云",
            "三潭映月",
            "花港观鱼",
            "南屏晚钟",
            "雷峰夕照",
            "曲院风荷"
    };


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        carouselView = this.findViewById(R.id.carouselView);

        carouselView.setPageCount(sampleImages.length);
        carouselView.setImageListener(imageListener);
        carouselView.setImageClickListener(new ImageClickListener() {
            @Override
            public void onClick(int position) {
                Toast.makeText(MainActivity.this, message[position], Toast.LENGTH_SHORT).show();
            }
        });
    }
    ImageListener imageListener = new ImageListener() {
        @Override
        public void setImageForPosition(int position, ImageView imageView) {
            imageView.setImageResource(sampleImages[position]);
        }
    };
}

简单粗暴!

感谢ლ(°◕‵ƹ′◕ლ)!!!

猜你喜欢

转载自blog.csdn.net/yao_yaoya/article/details/128287525