diff --git a/.idea/modules.xml b/.idea/modules.xml
index fe2dd13..00748f0 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -3,8 +3,11 @@
+
+
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index de6345c..22e54ac 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,7 +1,8 @@
apply plugin: 'com.android.application'
+apply plugin: 'kotlin-android'
android {
compileSdkVersion 23
- buildToolsVersion "23.0.3"
+ buildToolsVersion "25.0.3"
defaultConfig {
applicationId "com.ldoublem.loadingView"
minSdkVersion 15
@@ -20,16 +21,20 @@ android {
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
- compile 'com.android.support:appcompat-v7:23.4.0'
- compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha3'
- compile 'com.android.support:design:23.4.0'
+ compile "com.android.support:appcompat-v7:$project.ext.supportLibraryVersion"
+ compile 'com.android.support.constraint:constraint-layout:+'
+ compile "com.android.support:design:$project.ext.supportLibraryVersion"
testCompile 'junit:junit:4.12'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2'
androidTestCompile 'com.android.support.test:runner:0.5'
- androidTestCompile 'com.android.support:support-annotations:23.4.0'
+ androidTestCompile "com.android.support:support-annotations:$project.ext.supportLibraryVersion"
compile 'com.ldoublem.appleviewlib:appleviewlib:0.0.1'
compile project(path: ':loadingviewlib')
+ compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
// compile 'com.ldoublem.loadingview:loadingviewlib:1.0'
}
+repositories {
+ mavenCentral()
+}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 8593808..c1f7f07 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -15,9 +15,8 @@
-
-
-
+
+
\ No newline at end of file
diff --git a/app/src/main/java/com/ldoublem/loadingView/MacActivity.java b/app/src/main/java/com/ldoublem/loadingView/MacActivity.java
deleted file mode 100644
index ca9a18c..0000000
--- a/app/src/main/java/com/ldoublem/loadingView/MacActivity.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package com.ldoublem.loadingView;
-
-import android.os.Bundle;
-
-import android.support.v7.app.AppCompatActivity;
-import android.view.View;
-import android.view.WindowManager;
-
-import com.ldoublem.appleviewlib.LVComputer;
-import com.ldoublem.appleviewlib.LVComputerDesktop;
-import com.ldoublem.appleviewlib.LVComputerIpad;
-
-
-
-public class MacActivity extends AppCompatActivity {
-
- LVComputerDesktop mLVComputerDesktop;
- LVComputer mLVComputer;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
- WindowManager.LayoutParams.FLAG_FULLSCREEN);//去掉信息栏
- setContentView(R.layout.layout_mac);
- mLVComputerDesktop = (LVComputerDesktop) (findViewById(R.id.lv_computer_desktop));
- mLVComputer = (LVComputer) (findViewById(R.id.lv_computer));
-
- }
-
- public void startAnim(View v) {
- if (v.getId() == R.id.lv_computer_ipad) {
- ((LVComputerIpad) v).startAnim(4000);
- mLVComputerDesktop.startAnim(4000);
- mLVComputer.startAnim(4000);
- } else if (v.getId() == R.id.lv_computer_desktop) {
- ((LVComputerDesktop) v).startAnim(4000);
- } else if (v.getId() == R.id.lv_computer) {
- ((LVComputer) v).startAnim(6000);
- }
- }
-}
diff --git a/app/src/main/java/com/ldoublem/loadingView/MacActivity.kt b/app/src/main/java/com/ldoublem/loadingView/MacActivity.kt
new file mode 100644
index 0000000..7c794e7
--- /dev/null
+++ b/app/src/main/java/com/ldoublem/loadingView/MacActivity.kt
@@ -0,0 +1,42 @@
+package com.ldoublem.loadingView
+
+import android.os.Bundle
+import android.support.v7.app.AppCompatActivity
+import android.view.View
+import android.view.WindowManager
+import com.ldoublem.appleviewlib.LVComputer
+import com.ldoublem.appleviewlib.LVComputerDesktop
+import com.ldoublem.appleviewlib.LVComputerIpad
+
+/**
+ * Created by steve_000 on 24/7/2017.
+ * for project LoadingView
+ * package name com.ldoublem.loadingView
+ */
+class MacActivity: AppCompatActivity(){
+
+ lateinit internal var mLVComputerDesktop: LVComputerDesktop
+ lateinit internal var mLVComputer: LVComputer
+
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ this.window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
+ WindowManager.LayoutParams.FLAG_FULLSCREEN)//去掉信息栏
+ setContentView(R.layout.layout_mac)
+ mLVComputerDesktop = findViewById(R.id.lv_computer_desktop) as LVComputerDesktop
+ mLVComputer = findViewById(R.id.lv_computer) as LVComputer
+
+ }
+
+ fun startAnim(v: View) {
+ if (v.id == R.id.lv_computer_ipad) {
+ (v as LVComputerIpad).startAnim(4000)
+ mLVComputerDesktop.startAnim(4000)
+ mLVComputer.startAnim(4000)
+ } else if (v.id == R.id.lv_computer_desktop) {
+ (v as LVComputerDesktop).startAnim(4000)
+ } else if (v.id == R.id.lv_computer) {
+ (v as LVComputer).startAnim(6000)
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/ldoublem/loadingView/MainActivity.java b/app/src/main/java/com/ldoublem/loadingView/MainActivity.java
deleted file mode 100644
index a5d4357..0000000
--- a/app/src/main/java/com/ldoublem/loadingView/MainActivity.java
+++ /dev/null
@@ -1,377 +0,0 @@
-package com.ldoublem.loadingView;
-
-import android.graphics.Color;
-import android.os.Handler;
-import android.os.Message;
-import android.support.v7.app.AppCompatActivity;
-import android.os.Bundle;
-import android.view.View;
-import android.view.WindowManager;
-
-import com.ldoublem.loadingviewlib.view.LVBattery;
-import com.ldoublem.loadingviewlib.view.LVBlazeWood;
-import com.ldoublem.loadingviewlib.view.LVBlock;
-import com.ldoublem.loadingviewlib.LVChromeLogo;
-import com.ldoublem.loadingviewlib.LVCircular;
-import com.ldoublem.loadingviewlib.LVCircularCD;
-import com.ldoublem.loadingviewlib.view.LVCircularJump;
-import com.ldoublem.loadingviewlib.view.LVCircularRing;
-import com.ldoublem.loadingviewlib.view.LVCircularSmile;
-import com.ldoublem.loadingviewlib.view.LVCircularZoom;
-import com.ldoublem.loadingviewlib.view.LVEatBeans;
-import com.ldoublem.loadingviewlib.view.LVFinePoiStar;
-import com.ldoublem.loadingviewlib.view.LVFunnyBar;
-import com.ldoublem.loadingviewlib.view.LVGears;
-import com.ldoublem.loadingviewlib.view.LVGearsTwo;
-import com.ldoublem.loadingviewlib.view.LVGhost;
-import com.ldoublem.loadingviewlib.LVLineWithText;
-import com.ldoublem.loadingviewlib.view.LVNews;
-import com.ldoublem.loadingviewlib.view.LVPlayBall;
-import com.ldoublem.loadingviewlib.view.LVRingProgress;
-import com.ldoublem.loadingviewlib.view.LVWifi;
-
-import java.util.Timer;
-import java.util.TimerTask;
-
-
-public class MainActivity extends AppCompatActivity {
-
-
- LVPlayBall mLVPlayBall;
- LVCircularRing mLVCircularRing;
- LVCircular mLVCircular;
- LVCircularJump mLVCircularJump;
- LVCircularZoom mLVCircularZoom;
- LVLineWithText mLVLineWithText;
- LVEatBeans mLVEatBeans;
- LVCircularCD mLVCircularCD;
- LVCircularSmile mLVCircularSmile;
-
- LVGears mLVGears;
- LVGearsTwo mLVGearsTwo;
- LVFinePoiStar mLVFinePoiStar;
- LVChromeLogo mLVChromeLogo;
- LVBattery mLVBattery;
- LVWifi mLVWifi;
-
- LVNews mLVNews;
- LVBlock mLVBlock;
- LVGhost mLVGhost;
- LVFunnyBar mLVFunnyBar;
- LVRingProgress mLVRingProgress;
-
- LVBlazeWood mLVBlazeWood;
-
- int mValueLVLineWithText = 0;
- int mValueLVNews = 0;
-
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
- WindowManager.LayoutParams.FLAG_FULLSCREEN);//去掉信息栏
-
- setContentView(R.layout.activity_main);
-
- mLVCircular = (LVCircular) findViewById(R.id.lv_circular);
- mLVCircular.setViewColor(Color.rgb(255, 99, 99));
- mLVCircular.setRoundColor(Color.rgb(255, 0, 0));
-
- mLVCircularCD = (LVCircularCD) findViewById(R.id.lv_circularCD);
- mLVCircularCD.setViewColor(Color.rgb(0, 255, 0));
-
-
- mLVLineWithText = (LVLineWithText) findViewById(R.id.lv_linetext);
- mLVLineWithText.setViewColor(Color.rgb(33, 66, 77));
- mLVLineWithText.setTextColor(Color.rgb(233, 166, 177));
-
-
- mLVCircularJump = (LVCircularJump) findViewById(R.id.lv_circularJump);
- mLVCircularJump.setViewColor(Color.rgb(133, 66, 99));
-
-
- mLVCircularRing = (LVCircularRing) findViewById(R.id.lv_circularring);
- mLVCircularRing.setViewColor(Color.argb(100, 255, 255, 255));
- mLVCircularRing.setBarColor(Color.YELLOW);
-
- mLVCircularSmile = (LVCircularSmile) findViewById(R.id.lv_circularSmile);
- mLVCircularSmile.setViewColor(Color.rgb(144, 238, 146));
-
-
- mLVCircularZoom = (LVCircularZoom) findViewById(R.id.lv_circularZoom);
- mLVCircularZoom.setViewColor(Color.rgb(255, 0, 122));
-
-
- mLVEatBeans = (LVEatBeans) findViewById(R.id.lv_eatBeans);
- mLVEatBeans.setViewColor(Color.WHITE);
- mLVEatBeans.setEyeColor(Color.BLUE);
-
-
- mLVFinePoiStar = (LVFinePoiStar) findViewById(R.id.lv_finePoiStar);
- mLVFinePoiStar.setViewColor(Color.WHITE);
- mLVFinePoiStar.setCircleColor(Color.YELLOW);
- mLVFinePoiStar.setDrawPath(true);
-
- mLVGears = (LVGears) findViewById(R.id.lv_gears);
- mLVGears.setViewColor(Color.rgb(55, 155, 233));
-
- mLVGearsTwo = (LVGearsTwo) findViewById(R.id.lv_gears_two);
- mLVGearsTwo.setViewColor(Color.rgb(155, 55, 233));
-
-
- mLVWifi = (LVWifi) findViewById(R.id.lv_wifi);
- mLVWifi.setViewColor(Color.BLACK);
-
-
- mLVNews = (LVNews) findViewById(R.id.lv_news);
- mLVNews.setViewColor(Color.WHITE);
-
-
- mLVRingProgress = (LVRingProgress) findViewById(R.id.lv_ringp);
- mLVRingProgress.setViewColor(Color.WHITE);
- mLVRingProgress.setTextColor(Color.BLACK);
- mLVRingProgress.setPorBarStartColor(Color.YELLOW);
- mLVRingProgress.setPorBarEndColor(Color.BLUE);
-
-
- mLVGhost = (LVGhost) findViewById(R.id.lv_ghost);
- mLVGhost.setViewColor(Color.WHITE);
- mLVGhost.setHandColor(Color.BLACK);
-
- mLVPlayBall = (LVPlayBall) findViewById(R.id.lv_playball);
- mLVPlayBall.setViewColor(Color.WHITE);
- mLVPlayBall.setBallColor(Color.RED);
-
-
- mLVChromeLogo = (LVChromeLogo) findViewById(R.id.lv_chromeLogo);
-
- mLVBattery = (LVBattery) findViewById(R.id.lv_battery);
- mLVBattery.setBatteryOrientation(LVBattery.BatteryOrientation.VERTICAL);//LVBattery.BatteryOrientation.HORIZONTAL
- mLVBattery.setShowNum(false);
-
- mLVBattery.setViewColor(Color.WHITE);
- mLVBattery.setCellColor(Color.GREEN);
-
- mLVBlock = (LVBlock) findViewById(R.id.lv_block);
-
- mLVBlock.setViewColor(Color.rgb(245,209,22));
- mLVBlock.setShadowColor(Color.BLACK);
-// mLVBlock.isShadow(false);
-
-
-
- mLVFunnyBar = (LVFunnyBar) findViewById(R.id.lv_funnybar);
- mLVFunnyBar.setViewColor(Color.rgb(234, 167, 107));
-
-
-
- mLVBlazeWood = (LVBlazeWood) findViewById(R.id.lv_wood);
-
-// mLVLineWithText.setValue(50);
-
-
- }
-
- public void startAnim(View v) {
-
- stopAll();
- if (v instanceof LVCircular) {
- ((LVCircular) v).startAnim();
- } else if (v instanceof LVCircularCD) {
- ((LVCircularCD) v).startAnim();
- } else if (v instanceof LVCircularSmile) {
- ((LVCircularSmile) v).startAnim();
- } else if (v instanceof LVCircularRing) {
- ((LVCircularRing) v).startAnim();
- } else if (v instanceof LVCircularZoom) {
- ((LVCircularZoom) v).startAnim();
- } else if (v instanceof LVCircularJump) {
- ((LVCircularJump) v).startAnim();
- } else if (v instanceof LVEatBeans) {
- ((LVEatBeans) v).startAnim(3500);
- } else if (v instanceof LVPlayBall) {
- ((LVPlayBall) v).startAnim();
- } else if (v instanceof LVLineWithText) {
- startLVLineWithTextAnim();
- } else if (v instanceof LVGears) {
- ((LVGears) v).startAnim();
- } else if (v instanceof LVGearsTwo) {
- ((LVGearsTwo) v).startAnim();
- } else if (v instanceof LVFinePoiStar) {
- ((LVFinePoiStar) v).setDrawPath(false);
- ((LVFinePoiStar) v).startAnim(3500);
- } else if (v instanceof LVChromeLogo) {
- ((LVChromeLogo) v).startAnim();
- } else if (v instanceof LVBattery) {
- ((LVBattery) v).startAnim(5000);
- } else if (v instanceof LVWifi) {
- ((LVWifi) v).startAnim(9000);
- } else if (v instanceof LVNews) {
- startLVNewsAnim();
- } else if (v instanceof LVBlock) {
- ((LVBlock) v).startAnim();
-
- } else if (v instanceof LVGhost) {
- ((LVGhost) v).startAnim();
- } else if (v instanceof LVFunnyBar) {
- ((LVFunnyBar) v).startAnim();
- } else if (v instanceof LVRingProgress) {
- ((LVRingProgress) v).startAnim(3000);
- } else if (v instanceof LVBlazeWood) {
- ((LVBlazeWood) v).startAnim(500);
- }
-
-
- }
-
- public void startAnimAll(View v) {
- mLVCircular.startAnim();
- mLVCircularRing.startAnim();
- mLVPlayBall.startAnim();
- mLVCircularJump.startAnim();
- mLVCircularZoom.startAnim();
- startLVLineWithTextAnim();
- mLVEatBeans.startAnim(3500);
- mLVCircularCD.startAnim();
- mLVCircularSmile.startAnim(1000);
- mLVGears.startAnim();
- mLVGearsTwo.startAnim();
- mLVFinePoiStar.setDrawPath(true);
- mLVFinePoiStar.startAnim(3500);
- mLVChromeLogo.startAnim();
- mLVBattery.startAnim(5000);
- mLVWifi.startAnim(9000);
- startLVNewsAnim();
- mLVBlock.startAnim();
- mLVGhost.startAnim();
- mLVFunnyBar.startAnim();
- mLVRingProgress.startAnim(3000);
- mLVBlazeWood.startAnim(500);
- }
-
-
- public void stopAnim(View v) {
-
- stopAll();
-
- }
-
- private void stopAll() {
- mLVCircular.stopAnim();
- mLVPlayBall.stopAnim();
- mLVCircularJump.stopAnim();
- mLVCircularZoom.stopAnim();
- mLVCircularRing.stopAnim();
- mLVEatBeans.stopAnim();
- stopLVLineWithTextAnim();
- mLVCircularCD.stopAnim();
- mLVCircularSmile.stopAnim();
- mLVGears.stopAnim();
- mLVGearsTwo.stopAnim();
- mLVFinePoiStar.stopAnim();
- mLVChromeLogo.stopAnim();
- mLVBattery.stopAnim();
- mLVWifi.stopAnim();
- stopLVNewsAnim();
-// mLVNews.stopLVNewsAnim();
- mLVBlock.stopAnim();
- mLVGhost.stopAnim();
- mLVFunnyBar.stopAnim();
- mLVRingProgress.stopAnim();
- mLVBlazeWood.stopAnim();
-
- }
-
-
- public Timer mTimerLVLineWithText = new Timer();// 定时器
- public Timer mTimerLVNews = new Timer();// 定时器
-
-
- private void startLVLineWithTextAnim() {
- mValueLVLineWithText = 0;
- if (mTimerLVLineWithText != null) {
- mTimerLVLineWithText.cancel();// 退出之前的mTimer
- }
- mTimerLVLineWithText = new Timer();
- timerTaskLVLineWithText();
- }
-
- private void stopLVLineWithTextAnim() {
- if (mTimerLVLineWithText != null) {
- mTimerLVLineWithText.cancel();// 退出之前的mTimer
- mLVNews.setValue(mValueLVNews);
- }
- }
-
-
- private void startLVNewsAnim() {
- mValueLVNews = 0;
- if (mTimerLVNews != null) {
-
- mTimerLVNews.cancel();
- }
- mTimerLVNews = new Timer();
- timerTaskLVNews();
- }
-
- private void stopLVNewsAnim() {
- mLVNews.stopAnim();
- if (mTimerLVNews != null) {
- mTimerLVNews.cancel();
- mLVLineWithText.setValue(mValueLVLineWithText);
- }
- }
-
-
- public void timerTaskLVNews() {
- mTimerLVNews.schedule(new TimerTask() {
- @Override
- public void run() {
- if (mValueLVNews < 100) {
- mValueLVNews++;
- Message msg = mHandle.obtainMessage(1);
- msg.arg1 = mValueLVNews;
- mHandle.sendMessage(msg);
- } else {
- mTimerLVNews.cancel();
- }
- }
- }, 0, 10);
- }
-
-
- public void timerTaskLVLineWithText() {
- mTimerLVLineWithText.schedule(new TimerTask() {
- @Override
- public void run() {
- if (mValueLVLineWithText < 100) {
-
- mValueLVLineWithText++;
- Message msg = mHandle.obtainMessage(2);
- msg.arg1 = mValueLVLineWithText;
- mHandle.sendMessage(msg);
-
- } else {
- mTimerLVLineWithText.cancel();
- }
- }
- }, 0, 50);
- }
-
-
- private Handler mHandle = new Handler() {
-
- @Override
- public void handleMessage(Message msg) {
- super.handleMessage(msg);
- if (msg.what == 2)
- mLVLineWithText.setValue(msg.arg1);
- else if (msg.what == 1) {
- mLVNews.setValue(msg.arg1);
- }
- }
- };
-
-
-}
diff --git a/app/src/main/java/com/ldoublem/loadingView/MainActivity.kt b/app/src/main/java/com/ldoublem/loadingView/MainActivity.kt
new file mode 100644
index 0000000..28c800a
--- /dev/null
+++ b/app/src/main/java/com/ldoublem/loadingView/MainActivity.kt
@@ -0,0 +1,315 @@
+package com.ldoublem.loadingView
+
+import android.graphics.Color
+import android.os.Bundle
+import android.os.Handler
+import android.os.Message
+import android.support.v7.app.AppCompatActivity
+import android.view.View
+import android.view.WindowManager
+import com.ldoublem.loadingviewlib.LVChromeLogo
+import com.ldoublem.loadingviewlib.LVCircular
+import com.ldoublem.loadingviewlib.LVCircularCD
+import com.ldoublem.loadingviewlib.LVLineWithText
+import com.ldoublem.loadingviewlib.view.*
+import java.util.*
+
+/**
+ * Created by steve_000 on 24/7/2017.
+ * for project LoadingView
+ * package name com.ldoublem.loadingView
+ */
+class MainActivity:AppCompatActivity() {
+
+ lateinit internal var mLVPlayBall: LVPlayBall
+ lateinit internal var mLVCircularRing: LVCircularRing
+ lateinit internal var mLVCircular: LVCircular
+ lateinit internal var mLVCircularJump: LVCircularJump
+ lateinit internal var mLVCircularZoom: LVCircularZoom
+ lateinit internal var mLVLineWithText: LVLineWithText
+ lateinit internal var mLVEatBeans: LVEatBeans
+ lateinit internal var mLVCircularCD: LVCircularCD
+ lateinit internal var mLVCircularSmile: LVCircularSmile
+
+ lateinit internal var mLVGears: LVGears
+ lateinit internal var mLVGearsTwo: LVGearsTwo
+ lateinit internal var mLVFinePoiStar: LVFinePoiStar
+ lateinit internal var mLVChromeLogo: LVChromeLogo
+ lateinit internal var mLVBattery: LVBattery
+ lateinit internal var mLVWifi: LVWifi
+
+ lateinit internal var mLVNews: LVNews
+ lateinit internal var mLVBlock: LVBlock
+ lateinit internal var mLVGhost: LVGhost
+ lateinit internal var mLVFunnyBar: LVFunnyBar
+ lateinit internal var mLVRingProgress: LVRingProgress
+
+ lateinit internal var mLVBlazeWood: LVBlazeWood
+
+ internal var mValueLVLineWithText = 0
+ internal var mValueLVNews = 0
+
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ this.window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
+ WindowManager.LayoutParams.FLAG_FULLSCREEN)//去掉信息栏
+
+ setContentView(R.layout.activity_main)
+
+ mLVCircular = findViewById(R.id.lv_circular) as LVCircular
+ mLVCircular.setViewColor(Color.rgb(255, 99, 99))
+ mLVCircular.setRoundColor(Color.rgb(255, 0, 0))
+
+ mLVCircularCD = findViewById(R.id.lv_circularCD) as LVCircularCD
+ mLVCircularCD.setViewColor(Color.rgb(0, 255, 0))
+
+
+ mLVLineWithText = findViewById(R.id.lv_linetext) as LVLineWithText
+ mLVLineWithText.setViewColor(Color.rgb(33, 66, 77))
+ mLVLineWithText.setTextColor(Color.rgb(233, 166, 177))
+
+
+ mLVCircularJump = findViewById(R.id.lv_circularJump) as LVCircularJump
+ mLVCircularJump.setViewColor(Color.rgb(133, 66, 99))
+
+
+ mLVCircularRing = findViewById(R.id.lv_circularring) as LVCircularRing
+ mLVCircularRing.setViewColor(Color.argb(100, 255, 255, 255))
+ mLVCircularRing.setBarColor(Color.YELLOW)
+
+ mLVCircularSmile = findViewById(R.id.lv_circularSmile) as LVCircularSmile
+ mLVCircularSmile.setViewColor(Color.rgb(144, 238, 146))
+
+
+ mLVCircularZoom = findViewById(R.id.lv_circularZoom) as LVCircularZoom
+ mLVCircularZoom.setViewColor(Color.rgb(255, 0, 122))
+
+
+ mLVEatBeans = findViewById(R.id.lv_eatBeans) as LVEatBeans
+ mLVEatBeans.setViewColor(Color.WHITE)
+ mLVEatBeans.setEyeColor(Color.BLUE)
+
+
+ mLVFinePoiStar = findViewById(R.id.lv_finePoiStar) as LVFinePoiStar
+ mLVFinePoiStar.setViewColor(Color.WHITE)
+ mLVFinePoiStar.setCircleColor(Color.YELLOW)
+ mLVFinePoiStar.setDrawPath(true)
+
+ mLVGears = findViewById(R.id.lv_gears) as LVGears
+ mLVGears.setViewColor(Color.rgb(55, 155, 233))
+
+ mLVGearsTwo = findViewById(R.id.lv_gears_two) as LVGearsTwo
+ mLVGearsTwo.setViewColor(Color.rgb(155, 55, 233))
+
+
+ mLVWifi = findViewById(R.id.lv_wifi) as LVWifi
+ mLVWifi.setViewColor(Color.BLACK)
+
+
+ mLVNews = findViewById(R.id.lv_news) as LVNews
+ mLVNews.setViewColor(Color.WHITE)
+
+
+ mLVRingProgress = findViewById(R.id.lv_ringp) as LVRingProgress
+ mLVRingProgress.setViewColor(Color.WHITE)
+ mLVRingProgress.setTextColor(Color.BLACK)
+ mLVRingProgress.setPorBarStartColor(Color.YELLOW)
+ mLVRingProgress.setPorBarEndColor(Color.BLUE)
+
+
+ mLVGhost = findViewById(R.id.lv_ghost) as LVGhost
+ mLVGhost.setViewColor(Color.WHITE)
+ mLVGhost.setHandColor(Color.BLACK)
+
+ mLVPlayBall = findViewById(R.id.lv_playball) as LVPlayBall
+ mLVPlayBall.setViewColor(Color.WHITE)
+ mLVPlayBall.setBallColor(Color.RED)
+
+
+ mLVChromeLogo = findViewById(R.id.lv_chromeLogo) as LVChromeLogo
+
+ mLVBattery = findViewById(R.id.lv_battery) as LVBattery
+ mLVBattery.setBatteryOrientation(LVBattery.BatteryOrientation.VERTICAL)//LVBattery.BatteryOrientation.HORIZONTAL
+ mLVBattery.setShowNum(false)
+
+ mLVBattery.setViewColor(Color.WHITE)
+ mLVBattery.setCellColor(Color.GREEN)
+
+ mLVBlock = findViewById(R.id.lv_block) as LVBlock
+
+ mLVBlock.setViewColor(Color.rgb(245, 209, 22))
+ mLVBlock.setShadowColor(Color.BLACK)
+ // mLVBlock.isShadow(false);
+
+
+ mLVFunnyBar = findViewById(R.id.lv_funnybar) as LVFunnyBar
+ mLVFunnyBar.setViewColor(Color.rgb(234, 167, 107))
+
+
+
+ mLVBlazeWood = findViewById(R.id.lv_wood) as LVBlazeWood
+
+ // mLVLineWithText.setValue(50);
+
+
+ }
+
+ fun startAnim(v: View) {
+
+ stopAll()
+ (v as? LVCircular)?.startAnim() ?: ((v as? LVCircularCD)?.startAnim() ?: ((v as? LVCircularSmile)?.startAnim() ?: ((v as? LVCircularRing)?.startAnim() ?: ((v as? LVCircularZoom)?.startAnim() ?: ((v as? LVCircularJump)?.startAnim() ?: ((v as? LVEatBeans)?.startAnim(3500) ?: ((v as? LVPlayBall)?.startAnim() ?: if (v is LVLineWithText) {
+ startLVLineWithTextAnim()
+ } else (v as? LVGears)?.startAnim() ?: ((v as? LVGearsTwo)?.startAnim() ?: if (v is LVFinePoiStar) {
+ v.setDrawPath(false)
+ v.startAnim(3500)
+ } else (v as? LVChromeLogo)?.startAnim() ?: ((v as? LVBattery)?.startAnim(5000) ?: ((v as? LVWifi)?.startAnim(9000) ?: if (v is LVNews) {
+ startLVNewsAnim()
+ } else (v as? LVBlock)?.startAnim() ?: ((v as? LVGhost)?.startAnim() ?: ((v as? LVFunnyBar)?.startAnim() ?: ((v as? LVRingProgress)?.startAnim(3000) ?: (v as? LVBlazeWood)?.startAnim(500))))))))))))))
+
+
+ }
+
+ fun startAnimAll(v: View) {
+ mLVCircular.startAnim()
+ mLVCircularRing.startAnim()
+ mLVPlayBall.startAnim()
+ mLVCircularJump.startAnim()
+ mLVCircularZoom.startAnim()
+ startLVLineWithTextAnim()
+ mLVEatBeans.startAnim(3500)
+ mLVCircularCD.startAnim()
+ mLVCircularSmile.startAnim(1000)
+ mLVGears.startAnim()
+ mLVGearsTwo.startAnim()
+ mLVFinePoiStar.setDrawPath(true)
+ mLVFinePoiStar.startAnim(3500)
+ mLVChromeLogo.startAnim()
+ mLVBattery.startAnim(5000)
+ mLVWifi.startAnim(9000)
+ startLVNewsAnim()
+ mLVBlock.startAnim()
+ mLVGhost.startAnim()
+ mLVFunnyBar.startAnim()
+ mLVRingProgress.startAnim(3000)
+ mLVBlazeWood.startAnim(500)
+ }
+
+ fun stopAnim(v: View) {
+
+ stopAll()
+
+ }
+
+ private fun stopAll() {
+ mLVCircular.stopAnim()
+ mLVPlayBall.stopAnim()
+ mLVCircularJump.stopAnim()
+ mLVCircularZoom.stopAnim()
+ mLVCircularRing.stopAnim()
+ mLVEatBeans.stopAnim()
+ stopLVLineWithTextAnim()
+ mLVCircularCD.stopAnim()
+ mLVCircularSmile.stopAnim()
+ mLVGears.stopAnim()
+ mLVGearsTwo.stopAnim()
+ mLVFinePoiStar.stopAnim()
+ mLVChromeLogo.stopAnim()
+ mLVBattery.stopAnim()
+ mLVWifi.stopAnim()
+ stopLVNewsAnim()
+ // mLVNews.stopLVNewsAnim();
+ mLVBlock.stopAnim()
+ mLVGhost.stopAnim()
+ mLVFunnyBar.stopAnim()
+ mLVRingProgress.stopAnim()
+ mLVBlazeWood.stopAnim()
+
+ }
+
+
+ var mTimerLVLineWithText: Timer? = Timer()// 定时器
+ var mTimerLVNews: Timer? = Timer()// 定时器
+
+
+ private fun startLVLineWithTextAnim() {
+ mValueLVLineWithText = 0
+ if (mTimerLVLineWithText != null) {
+ mTimerLVLineWithText!!.cancel()// 退出之前的mTimer
+ }
+ mTimerLVLineWithText = Timer()
+ timerTaskLVLineWithText()
+ }
+
+ private fun stopLVLineWithTextAnim() {
+ if (mTimerLVLineWithText != null) {
+ mTimerLVLineWithText!!.cancel()// 退出之前的mTimer
+ mLVNews.setValue(mValueLVNews)
+ }
+ }
+
+
+ private fun startLVNewsAnim() {
+ mValueLVNews = 0
+ if (mTimerLVNews != null) {
+
+ mTimerLVNews!!.cancel()
+ }
+ mTimerLVNews = Timer()
+ timerTaskLVNews()
+ }
+
+ private fun stopLVNewsAnim() {
+ mLVNews.stopAnim()
+ if (mTimerLVNews != null) {
+ mTimerLVNews!!.cancel()
+ mLVLineWithText.setValue(mValueLVLineWithText)
+ }
+ }
+
+
+ fun timerTaskLVNews() {
+ mTimerLVNews?.schedule(object : TimerTask() {
+ override fun run() {
+ if (mValueLVNews < 100) {
+ mValueLVNews++
+ val msg = mHandle.obtainMessage(1)
+ msg.arg1 = mValueLVNews
+ mHandle.sendMessage(msg)
+ } else {
+ mTimerLVNews?.cancel()
+ }
+ }
+ }, 0, 10)
+ }
+
+
+ fun timerTaskLVLineWithText() {
+ mTimerLVLineWithText?.schedule(object : TimerTask() {
+ override fun run() {
+ if (mValueLVLineWithText < 100) {
+
+ mValueLVLineWithText++
+ val msg = mHandle.obtainMessage(2)
+ msg.arg1 = mValueLVLineWithText
+ mHandle.sendMessage(msg)
+
+ } else {
+ mTimerLVLineWithText?.cancel()
+ }
+ }
+ }, 0, 50)
+ }
+
+
+ private val mHandle = object : Handler() {
+
+ override fun handleMessage(msg: Message) {
+ super.handleMessage(msg)
+ if (msg.what == 2)
+ mLVLineWithText.setValue(msg.arg1)
+ else if (msg.what == 1) {
+ mLVNews.setValue(msg.arg1)
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/ldoublem/loadingView/TestActivity.java b/app/src/main/java/com/ldoublem/loadingView/TestActivity.java
deleted file mode 100644
index e483c8b..0000000
--- a/app/src/main/java/com/ldoublem/loadingView/TestActivity.java
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.ldoublem.loadingView;
-
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.Message;
-import android.support.v7.app.AppCompatActivity;
-import android.view.View;
-import android.view.WindowManager;
-
-import com.ldoublem.loadingviewlib.view.LVRingProgress;
-
-import java.util.Timer;
-import java.util.TimerTask;
-
-
-public class TestActivity extends AppCompatActivity {
-
-
- LVRingProgress mLVRingProgress;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
- WindowManager.LayoutParams.FLAG_FULLSCREEN);//去掉信息栏
- setContentView(R.layout.layout_test);
- mLVRingProgress = (LVRingProgress) findViewById(R.id.lv_ringp);
- }
-
- int mValueLVRingProgress = 0;
- public Timer mTimerLVRingProgress = new Timer();// 定时器
-
- public void timerTaskLVRingProgress() {
- mTimerLVRingProgress.schedule(new TimerTask() {
- @Override
- public void run() {
- if (mValueLVRingProgress < 100) {
-
- mValueLVRingProgress++;
- Message msg = mHandle.obtainMessage(0);
- msg.arg1 = mValueLVRingProgress;
- mHandle.sendMessage(msg);
-
- } else {
- mTimerLVRingProgress.cancel();
- }
- }
- }, 0, 50);
- }
-
- public void automatic(View v) {
-
- mLVRingProgress.startAnim();
-
-
- }
-
- public void byuser(View v) {
- mLVRingProgress.stopAnim();
- startLVRingProgressAnim();
-
-
- }
-
- private void startLVRingProgressAnim() {
- mValueLVRingProgress = 0;
- if (mTimerLVRingProgress != null) {
- mTimerLVRingProgress.cancel();// 退出之前的mTimer
- }
- mTimerLVRingProgress = new Timer();
- timerTaskLVRingProgress();
- }
-
- private void stopLVRingProgressAnim() {
- if (mTimerLVRingProgress != null) {
- mTimerLVRingProgress.cancel();// 退出之前的mTimer
- mLVRingProgress.setProgress(mValueLVRingProgress);
- }
- }
-
-
- private Handler mHandle = new Handler() {
-
- @Override
- public void handleMessage(Message msg) {
- super.handleMessage(msg);
- mLVRingProgress.setProgress(msg.arg1);
- }
- };
-
-
-}
diff --git a/app/src/main/java/com/ldoublem/loadingView/TestActivity.kt b/app/src/main/java/com/ldoublem/loadingView/TestActivity.kt
new file mode 100644
index 0000000..d65faee
--- /dev/null
+++ b/app/src/main/java/com/ldoublem/loadingView/TestActivity.kt
@@ -0,0 +1,89 @@
+package com.ldoublem.loadingView
+
+import android.os.Bundle
+import android.os.Handler
+import android.os.Message
+import android.support.v7.app.AppCompatActivity
+import android.view.View
+import android.view.WindowManager
+import com.ldoublem.loadingviewlib.view.LVRingProgress
+import java.util.*
+
+/**
+ * Created by steve_000 on 24/7/2017.
+ * for project LoadingView
+ * package name com.ldoublem.loadingView
+ */
+class TestActivity:AppCompatActivity() {
+
+
+ lateinit var mLVRingProgress: LVRingProgress
+
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ this.window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
+ WindowManager.LayoutParams.FLAG_FULLSCREEN)//去掉信息栏
+ setContentView(R.layout.layout_test)
+ mLVRingProgress = findViewById(R.id.lv_ringp) as LVRingProgress
+ }
+
+ internal var mValueLVRingProgress = 0
+ var mTimerLVRingProgress: Timer? = Timer()// 定时器
+
+ fun timerTaskLVRingProgress() {
+ mTimerLVRingProgress!!.schedule(object : TimerTask() {
+ override fun run() {
+ if (mValueLVRingProgress < 100) {
+
+ mValueLVRingProgress++
+ val msg = mHandle.obtainMessage(0)
+ msg.arg1 = mValueLVRingProgress
+ mHandle.sendMessage(msg)
+
+ } else {
+ mTimerLVRingProgress!!.cancel()
+ }
+ }
+ }, 0, 50)
+ }
+
+ fun automatic(v: View) {
+
+ mLVRingProgress.startAnim()
+
+
+ }
+
+ fun byuser(v: View) {
+ mLVRingProgress.stopAnim()
+ startLVRingProgressAnim()
+
+
+ }
+
+ private fun startLVRingProgressAnim() {
+ mValueLVRingProgress = 0
+ if (mTimerLVRingProgress != null) {
+ mTimerLVRingProgress!!.cancel()// 退出之前的mTimer
+ }
+ mTimerLVRingProgress = Timer()
+ timerTaskLVRingProgress()
+ }
+
+ private fun stopLVRingProgressAnim() {
+ if (mTimerLVRingProgress != null) {
+ mTimerLVRingProgress!!.cancel()// 退出之前的mTimer
+ mLVRingProgress.progress = mValueLVRingProgress
+ }
+ }
+
+
+ private val mHandle = object : Handler() {
+
+ override fun handleMessage(msg: Message) {
+ super.handleMessage(msg)
+ mLVRingProgress.progress = msg.arg1
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index 728324a..a3ec476 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,18 +1,23 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
+ ext.kotlin_version = '1.1.3-2'
repositories {
jcenter()
}
dependencies {
- classpath 'com.android.tools.build:gradle:2.2.2'
+ classpath 'com.android.tools.build:gradle:2.3.3'
classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:1.1"
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
+ classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
allprojects {
+ ext{
+ supportLibraryVersion = "23.4.0"
+ }
repositories {
jcenter()
}
diff --git a/gradle.properties b/gradle.properties
index aac7c9b..eb4e1bc 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -15,3 +15,6 @@ org.gradle.jvmargs=-Xmx1536m
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
+
+org.gradle.deamon=true
+kotlin.increment=true
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index fcbc9a1..f8e6ead 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Wed Aug 24 11:50:55 CST 2016
+#Mon Jul 24 11:14:40 CST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
diff --git a/loadingviewlib/build.gradle b/loadingviewlib/build.gradle
index b57a15c..f12c95b 100644
--- a/loadingviewlib/build.gradle
+++ b/loadingviewlib/build.gradle
@@ -1,8 +1,9 @@
apply plugin: 'com.android.library'
+apply plugin: 'kotlin-android'
android {
compileSdkVersion 23
- buildToolsVersion "23.0.3"
+ buildToolsVersion "25.0.3"
defaultConfig {
minSdkVersion 15
@@ -26,8 +27,9 @@ dependencies {
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
- compile 'com.android.support:appcompat-v7:23.4.0'
+ compile "com.android.support:appcompat-v7:$project.ext.supportLibraryVersion"
testCompile 'junit:junit:4.12'
+ compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
}
@@ -115,4 +117,7 @@ bintray {
publish = true
}
}
+repositories {
+ mavenCentral()
+}