From c73c26af5cf7edbdb81c499ac96739e5ec30015a Mon Sep 17 00:00:00 2001 From: eric ho Date: Mon, 24 Jul 2017 11:21:34 +0800 Subject: [PATCH 1/2] fix library configuration --- .idea/modules.xml | 3 +++ app/build.gradle | 15 ++++++++++----- build.gradle | 7 ++++++- gradle/wrapper/gradle-wrapper.properties | 4 ++-- loadingviewlib/build.gradle | 9 +++++++-- 5 files changed, 28 insertions(+), 10 deletions(-) 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/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/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() +} From aacbaf7a33491cca2ba16d170f7cf3be971a3682 Mon Sep 17 00:00:00 2001 From: eric ho Date: Mon, 24 Jul 2017 11:31:20 +0800 Subject: [PATCH 2/2] convert app module to kotlin code --- app/src/main/AndroidManifest.xml | 5 +- .../com/ldoublem/loadingView/MacActivity.java | 42 -- .../com/ldoublem/loadingView/MacActivity.kt | 42 ++ .../ldoublem/loadingView/MainActivity.java | 377 ------------------ .../com/ldoublem/loadingView/MainActivity.kt | 315 +++++++++++++++ .../ldoublem/loadingView/TestActivity.java | 92 ----- .../com/ldoublem/loadingView/TestActivity.kt | 89 +++++ gradle.properties | 3 + 8 files changed, 451 insertions(+), 514 deletions(-) delete mode 100644 app/src/main/java/com/ldoublem/loadingView/MacActivity.java create mode 100644 app/src/main/java/com/ldoublem/loadingView/MacActivity.kt delete mode 100644 app/src/main/java/com/ldoublem/loadingView/MainActivity.java create mode 100644 app/src/main/java/com/ldoublem/loadingView/MainActivity.kt delete mode 100644 app/src/main/java/com/ldoublem/loadingView/TestActivity.java create mode 100644 app/src/main/java/com/ldoublem/loadingView/TestActivity.kt 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/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