diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..a4da117
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,43 @@
+# Built application files
+*.apk
+*.ap_
+
+# Files for the ART/Dalvik VM
+*.dex
+
+# Java class files
+*.class
+
+# Generated files
+bin/
+gen/
+out/
+
+# Gradle files
+.gradle/
+build/
+
+# Local configuration file (sdk path, etc)
+local.properties
+
+# Proguard folder generated by Eclipse
+proguard/
+
+# Log Files
+*.log
+
+# Android Studio Navigation editor temp files
+.navigation/
+
+# Android Studio captures folder
+captures/
+
+# Intellij
+*.iml
+.idea
+
+# Keystore files
+*.jks
+
+# MacOS
+.DS_Store
diff --git a/app/.gitignore b/app/.gitignore
new file mode 100644
index 0000000..a4da117
--- /dev/null
+++ b/app/.gitignore
@@ -0,0 +1,43 @@
+# Built application files
+*.apk
+*.ap_
+
+# Files for the ART/Dalvik VM
+*.dex
+
+# Java class files
+*.class
+
+# Generated files
+bin/
+gen/
+out/
+
+# Gradle files
+.gradle/
+build/
+
+# Local configuration file (sdk path, etc)
+local.properties
+
+# Proguard folder generated by Eclipse
+proguard/
+
+# Log Files
+*.log
+
+# Android Studio Navigation editor temp files
+.navigation/
+
+# Android Studio captures folder
+captures/
+
+# Intellij
+*.iml
+.idea
+
+# Keystore files
+*.jks
+
+# MacOS
+.DS_Store
diff --git a/app/build.gradle b/app/build.gradle
new file mode 100644
index 0000000..2e83379
--- /dev/null
+++ b/app/build.gradle
@@ -0,0 +1,27 @@
+apply plugin: 'com.android.application'
+
+
+android {
+ compileSdkVersion 27
+ defaultConfig {
+ applicationId "com.wikikii.revealbanner"
+ minSdkVersion 15
+ targetSdkVersion 27
+ versionCode 1
+ versionName "1.0"
+ }
+ buildTypes {
+ release {
+ minifyEnabled false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
+ }
+ }
+}
+
+dependencies {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+ implementation 'com.android.support:appcompat-v7:27.1.1'
+ implementation 'com.android.support.constraint:constraint-layout:1.1.2'
+ implementation project(":bannerlib")
+
+}
diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
new file mode 100644
index 0000000..f1b4245
--- /dev/null
+++ b/app/proguard-rules.pro
@@ -0,0 +1,21 @@
+# Add project specific ProGuard rules here.
+# You can control the set of applied configuration files using the
+# proguardFiles setting in build.gradle.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
+
+# Uncomment this to preserve the line number information for
+# debugging stack traces.
+#-keepattributes SourceFile,LineNumberTable
+
+# If you keep the line number information, uncomment this to
+# hide the original source file name.
+#-renamesourcefileattribute SourceFile
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..e7559a9
--- /dev/null
+++ b/app/src/main/AndroidManifest.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/java/com/wikikii/revealbanner/BannerActivity.java b/app/src/main/java/com/wikikii/revealbanner/BannerActivity.java
new file mode 100644
index 0000000..71857ec
--- /dev/null
+++ b/app/src/main/java/com/wikikii/revealbanner/BannerActivity.java
@@ -0,0 +1,98 @@
+package com.wikikii.revealbanner;
+
+import android.graphics.Color;
+import android.os.Build;
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v7.app.AppCompatActivity;
+import android.view.View;
+import android.view.Window;
+import android.view.WindowManager;
+import android.widget.ImageView;
+
+import com.bumptech.glide.Glide;
+import com.wikikii.bannerlib.banner.IndicatorLocation;
+import com.wikikii.bannerlib.banner.LoopLayout;
+import com.wikikii.bannerlib.banner.LoopStyle;
+import com.wikikii.bannerlib.banner.OnDefaultImageViewLoader;
+import com.wikikii.bannerlib.banner.bean.BannerInfo;
+import com.wikikii.bannerlib.banner.listener.OnBannerItemClickListener;
+import com.wikikii.bannerlib.banner.view.BannerBgContainer;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Banner指示图
+ */
+public class BannerActivity extends AppCompatActivity implements OnBannerItemClickListener {
+
+ BannerBgContainer bannerBgContainer;
+ LoopLayout loopLayout;
+
+ @Override
+ protected void onCreate(@Nullable Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_banner);
+ setFullScreen();
+ loopLayout = findViewById(R.id.loop_layout);
+ bannerBgContainer = findViewById(R.id.banner_bg_container);
+ loopLayout.setLoop_ms(3000);//轮播的速度(毫秒)
+ loopLayout.setLoop_duration(400);//滑动的速率(毫秒)
+ loopLayout.setScaleAnimation(true);// 设置是否需要动画
+ loopLayout.setLoop_style(LoopStyle.Empty);//轮播的样式-默认empty
+ loopLayout.setIndicatorLocation(IndicatorLocation.Center);//指示器位置-中Center
+ loopLayout.initializeData(this);
+ // 准备数据
+ ArrayList bannerInfos = new ArrayList<>();
+ List