diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt deleted file mode 100644 index f2db4c9..0000000 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.casic.birmm.inspect.widgets - -import android.app.Dialog -import android.content.Context -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.os.Bundle -import android.view.WindowManager -import com.casic.birmm.inspect.R -import com.casic.birmm.inspect.extensions.show -import com.qmuiteam.qmui.util.QMUIDisplayHelper -import kotlinx.android.synthetic.main.dialog_input.* - - -class InputDialog private constructor(builder: Builder) : Dialog(builder.mContext!!) { - - private var ctx: Context? = null - private var title: String? = null - private var hint: String? = null - private var value: String? = null - private var positiveBtn: String? = null - private var negativeBtn: String? = null - private var listener: OnDialogButtonClickListener? = null - - init { - this.ctx = builder.mContext - this.title = builder.title - this.hint = builder.hint - this.value = builder.value - this.positiveBtn = builder.positiveBtn - this.negativeBtn = builder.negativeBtn - this.listener = builder.listener - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - configDialogLayout() - setContentView(R.layout.dialog_input) - setCancelable(false) - setCanceledOnTouchOutside(false) - - dialogTitleView.text = title - dialogInputView.hint = hint!! - value.apply { - dialogInputView.setText(this) - } - - dialogCancelButton.text = negativeBtn - dialogCancelButton.setChangeAlphaWhenPress(true) - dialogCancelButton.setOnClickListener { - this.dismiss() - listener?.onCancelClick() - } - - dialogConfirmButton.text = positiveBtn - dialogConfirmButton.setChangeAlphaWhenPress(true) - dialogConfirmButton.setOnClickListener { - val inputValue = dialogInputView.text.toString().trim() - if (inputValue.isEmpty()) { - "什么都没输入,请重新输入".show(ctx!!) - return@setOnClickListener - } - this.dismiss() - listener?.onConfirmClick(inputValue) - } - } - - private fun configDialogLayout() { - window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - window?.decorView?.setBackgroundColor(Color.TRANSPARENT) - val params: WindowManager.LayoutParams? = window?.attributes - params?.width = QMUIDisplayHelper.dp2px(ctx, 280) - params?.height = WindowManager.LayoutParams.WRAP_CONTENT - window?.attributes = params - } - - class Builder { - var mContext: Context? = null - var title: String? = null - var hint: String? = null - var value: String? = null - var positiveBtn: String? = null - var negativeBtn: String? = null - var listener: OnDialogButtonClickListener? = null - - fun setContext(context: Context?): Builder { - mContext = context - return this - } - - fun setTitle(title: String?): Builder { - this.title = title - return this - } - - fun setHintText(hint: String?): Builder { - this.hint = hint - return this - } - - fun setDefaultValue(value: String?): Builder { - this.value = value - return this - } - - fun setPositiveButton(name: String?): Builder { - positiveBtn = name - return this - } - - fun setNegativeButton(name: String?): Builder { - negativeBtn = name - return this - } - - fun setOnDialogClickListener(listener: OnDialogButtonClickListener): Builder { - this.listener = listener - return this - } - - fun build(): InputDialog { - return InputDialog(this) - } - } - - interface OnDialogButtonClickListener { - fun onCancelClick() - - fun onConfirmClick(input: String) - } -} \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt deleted file mode 100644 index f2db4c9..0000000 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.casic.birmm.inspect.widgets - -import android.app.Dialog -import android.content.Context -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.os.Bundle -import android.view.WindowManager -import com.casic.birmm.inspect.R -import com.casic.birmm.inspect.extensions.show -import com.qmuiteam.qmui.util.QMUIDisplayHelper -import kotlinx.android.synthetic.main.dialog_input.* - - -class InputDialog private constructor(builder: Builder) : Dialog(builder.mContext!!) { - - private var ctx: Context? = null - private var title: String? = null - private var hint: String? = null - private var value: String? = null - private var positiveBtn: String? = null - private var negativeBtn: String? = null - private var listener: OnDialogButtonClickListener? = null - - init { - this.ctx = builder.mContext - this.title = builder.title - this.hint = builder.hint - this.value = builder.value - this.positiveBtn = builder.positiveBtn - this.negativeBtn = builder.negativeBtn - this.listener = builder.listener - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - configDialogLayout() - setContentView(R.layout.dialog_input) - setCancelable(false) - setCanceledOnTouchOutside(false) - - dialogTitleView.text = title - dialogInputView.hint = hint!! - value.apply { - dialogInputView.setText(this) - } - - dialogCancelButton.text = negativeBtn - dialogCancelButton.setChangeAlphaWhenPress(true) - dialogCancelButton.setOnClickListener { - this.dismiss() - listener?.onCancelClick() - } - - dialogConfirmButton.text = positiveBtn - dialogConfirmButton.setChangeAlphaWhenPress(true) - dialogConfirmButton.setOnClickListener { - val inputValue = dialogInputView.text.toString().trim() - if (inputValue.isEmpty()) { - "什么都没输入,请重新输入".show(ctx!!) - return@setOnClickListener - } - this.dismiss() - listener?.onConfirmClick(inputValue) - } - } - - private fun configDialogLayout() { - window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - window?.decorView?.setBackgroundColor(Color.TRANSPARENT) - val params: WindowManager.LayoutParams? = window?.attributes - params?.width = QMUIDisplayHelper.dp2px(ctx, 280) - params?.height = WindowManager.LayoutParams.WRAP_CONTENT - window?.attributes = params - } - - class Builder { - var mContext: Context? = null - var title: String? = null - var hint: String? = null - var value: String? = null - var positiveBtn: String? = null - var negativeBtn: String? = null - var listener: OnDialogButtonClickListener? = null - - fun setContext(context: Context?): Builder { - mContext = context - return this - } - - fun setTitle(title: String?): Builder { - this.title = title - return this - } - - fun setHintText(hint: String?): Builder { - this.hint = hint - return this - } - - fun setDefaultValue(value: String?): Builder { - this.value = value - return this - } - - fun setPositiveButton(name: String?): Builder { - positiveBtn = name - return this - } - - fun setNegativeButton(name: String?): Builder { - negativeBtn = name - return this - } - - fun setOnDialogClickListener(listener: OnDialogButtonClickListener): Builder { - this.listener = listener - return this - } - - fun build(): InputDialog { - return InputDialog(this) - } - } - - interface OnDialogButtonClickListener { - fun onCancelClick() - - fun onConfirmClick(input: String) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt index 216befd..0825a77 100644 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt +++ b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt @@ -13,7 +13,6 @@ import com.casic.birmm.inspect.R import com.qmuiteam.qmui.util.QMUIDisplayHelper import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton -import kotlinx.android.synthetic.main.dialog_input.dialogTitleView import kotlinx.android.synthetic.main.dialog_single_choice.* diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt deleted file mode 100644 index f2db4c9..0000000 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.casic.birmm.inspect.widgets - -import android.app.Dialog -import android.content.Context -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.os.Bundle -import android.view.WindowManager -import com.casic.birmm.inspect.R -import com.casic.birmm.inspect.extensions.show -import com.qmuiteam.qmui.util.QMUIDisplayHelper -import kotlinx.android.synthetic.main.dialog_input.* - - -class InputDialog private constructor(builder: Builder) : Dialog(builder.mContext!!) { - - private var ctx: Context? = null - private var title: String? = null - private var hint: String? = null - private var value: String? = null - private var positiveBtn: String? = null - private var negativeBtn: String? = null - private var listener: OnDialogButtonClickListener? = null - - init { - this.ctx = builder.mContext - this.title = builder.title - this.hint = builder.hint - this.value = builder.value - this.positiveBtn = builder.positiveBtn - this.negativeBtn = builder.negativeBtn - this.listener = builder.listener - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - configDialogLayout() - setContentView(R.layout.dialog_input) - setCancelable(false) - setCanceledOnTouchOutside(false) - - dialogTitleView.text = title - dialogInputView.hint = hint!! - value.apply { - dialogInputView.setText(this) - } - - dialogCancelButton.text = negativeBtn - dialogCancelButton.setChangeAlphaWhenPress(true) - dialogCancelButton.setOnClickListener { - this.dismiss() - listener?.onCancelClick() - } - - dialogConfirmButton.text = positiveBtn - dialogConfirmButton.setChangeAlphaWhenPress(true) - dialogConfirmButton.setOnClickListener { - val inputValue = dialogInputView.text.toString().trim() - if (inputValue.isEmpty()) { - "什么都没输入,请重新输入".show(ctx!!) - return@setOnClickListener - } - this.dismiss() - listener?.onConfirmClick(inputValue) - } - } - - private fun configDialogLayout() { - window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - window?.decorView?.setBackgroundColor(Color.TRANSPARENT) - val params: WindowManager.LayoutParams? = window?.attributes - params?.width = QMUIDisplayHelper.dp2px(ctx, 280) - params?.height = WindowManager.LayoutParams.WRAP_CONTENT - window?.attributes = params - } - - class Builder { - var mContext: Context? = null - var title: String? = null - var hint: String? = null - var value: String? = null - var positiveBtn: String? = null - var negativeBtn: String? = null - var listener: OnDialogButtonClickListener? = null - - fun setContext(context: Context?): Builder { - mContext = context - return this - } - - fun setTitle(title: String?): Builder { - this.title = title - return this - } - - fun setHintText(hint: String?): Builder { - this.hint = hint - return this - } - - fun setDefaultValue(value: String?): Builder { - this.value = value - return this - } - - fun setPositiveButton(name: String?): Builder { - positiveBtn = name - return this - } - - fun setNegativeButton(name: String?): Builder { - negativeBtn = name - return this - } - - fun setOnDialogClickListener(listener: OnDialogButtonClickListener): Builder { - this.listener = listener - return this - } - - fun build(): InputDialog { - return InputDialog(this) - } - } - - interface OnDialogButtonClickListener { - fun onCancelClick() - - fun onConfirmClick(input: String) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt index 216befd..0825a77 100644 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt +++ b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt @@ -13,7 +13,6 @@ import com.casic.birmm.inspect.R import com.qmuiteam.qmui.util.QMUIDisplayHelper import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton -import kotlinx.android.synthetic.main.dialog_input.dialogTitleView import kotlinx.android.synthetic.main.dialog_single_choice.* diff --git a/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml new file mode 100644 index 0000000..96eb93e --- /dev/null +++ b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt deleted file mode 100644 index f2db4c9..0000000 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.casic.birmm.inspect.widgets - -import android.app.Dialog -import android.content.Context -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.os.Bundle -import android.view.WindowManager -import com.casic.birmm.inspect.R -import com.casic.birmm.inspect.extensions.show -import com.qmuiteam.qmui.util.QMUIDisplayHelper -import kotlinx.android.synthetic.main.dialog_input.* - - -class InputDialog private constructor(builder: Builder) : Dialog(builder.mContext!!) { - - private var ctx: Context? = null - private var title: String? = null - private var hint: String? = null - private var value: String? = null - private var positiveBtn: String? = null - private var negativeBtn: String? = null - private var listener: OnDialogButtonClickListener? = null - - init { - this.ctx = builder.mContext - this.title = builder.title - this.hint = builder.hint - this.value = builder.value - this.positiveBtn = builder.positiveBtn - this.negativeBtn = builder.negativeBtn - this.listener = builder.listener - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - configDialogLayout() - setContentView(R.layout.dialog_input) - setCancelable(false) - setCanceledOnTouchOutside(false) - - dialogTitleView.text = title - dialogInputView.hint = hint!! - value.apply { - dialogInputView.setText(this) - } - - dialogCancelButton.text = negativeBtn - dialogCancelButton.setChangeAlphaWhenPress(true) - dialogCancelButton.setOnClickListener { - this.dismiss() - listener?.onCancelClick() - } - - dialogConfirmButton.text = positiveBtn - dialogConfirmButton.setChangeAlphaWhenPress(true) - dialogConfirmButton.setOnClickListener { - val inputValue = dialogInputView.text.toString().trim() - if (inputValue.isEmpty()) { - "什么都没输入,请重新输入".show(ctx!!) - return@setOnClickListener - } - this.dismiss() - listener?.onConfirmClick(inputValue) - } - } - - private fun configDialogLayout() { - window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - window?.decorView?.setBackgroundColor(Color.TRANSPARENT) - val params: WindowManager.LayoutParams? = window?.attributes - params?.width = QMUIDisplayHelper.dp2px(ctx, 280) - params?.height = WindowManager.LayoutParams.WRAP_CONTENT - window?.attributes = params - } - - class Builder { - var mContext: Context? = null - var title: String? = null - var hint: String? = null - var value: String? = null - var positiveBtn: String? = null - var negativeBtn: String? = null - var listener: OnDialogButtonClickListener? = null - - fun setContext(context: Context?): Builder { - mContext = context - return this - } - - fun setTitle(title: String?): Builder { - this.title = title - return this - } - - fun setHintText(hint: String?): Builder { - this.hint = hint - return this - } - - fun setDefaultValue(value: String?): Builder { - this.value = value - return this - } - - fun setPositiveButton(name: String?): Builder { - positiveBtn = name - return this - } - - fun setNegativeButton(name: String?): Builder { - negativeBtn = name - return this - } - - fun setOnDialogClickListener(listener: OnDialogButtonClickListener): Builder { - this.listener = listener - return this - } - - fun build(): InputDialog { - return InputDialog(this) - } - } - - interface OnDialogButtonClickListener { - fun onCancelClick() - - fun onConfirmClick(input: String) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt index 216befd..0825a77 100644 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt +++ b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt @@ -13,7 +13,6 @@ import com.casic.birmm.inspect.R import com.qmuiteam.qmui.util.QMUIDisplayHelper import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton -import kotlinx.android.synthetic.main.dialog_input.dialogTitleView import kotlinx.android.synthetic.main.dialog_single_choice.* diff --git a/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml new file mode 100644 index 0000000..96eb93e --- /dev/null +++ b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_main_selector.xml b/app/src/main/res/drawable/button_main_selector.xml new file mode 100644 index 0000000..5875998 --- /dev/null +++ b/app/src/main/res/drawable/button_main_selector.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt deleted file mode 100644 index f2db4c9..0000000 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.casic.birmm.inspect.widgets - -import android.app.Dialog -import android.content.Context -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.os.Bundle -import android.view.WindowManager -import com.casic.birmm.inspect.R -import com.casic.birmm.inspect.extensions.show -import com.qmuiteam.qmui.util.QMUIDisplayHelper -import kotlinx.android.synthetic.main.dialog_input.* - - -class InputDialog private constructor(builder: Builder) : Dialog(builder.mContext!!) { - - private var ctx: Context? = null - private var title: String? = null - private var hint: String? = null - private var value: String? = null - private var positiveBtn: String? = null - private var negativeBtn: String? = null - private var listener: OnDialogButtonClickListener? = null - - init { - this.ctx = builder.mContext - this.title = builder.title - this.hint = builder.hint - this.value = builder.value - this.positiveBtn = builder.positiveBtn - this.negativeBtn = builder.negativeBtn - this.listener = builder.listener - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - configDialogLayout() - setContentView(R.layout.dialog_input) - setCancelable(false) - setCanceledOnTouchOutside(false) - - dialogTitleView.text = title - dialogInputView.hint = hint!! - value.apply { - dialogInputView.setText(this) - } - - dialogCancelButton.text = negativeBtn - dialogCancelButton.setChangeAlphaWhenPress(true) - dialogCancelButton.setOnClickListener { - this.dismiss() - listener?.onCancelClick() - } - - dialogConfirmButton.text = positiveBtn - dialogConfirmButton.setChangeAlphaWhenPress(true) - dialogConfirmButton.setOnClickListener { - val inputValue = dialogInputView.text.toString().trim() - if (inputValue.isEmpty()) { - "什么都没输入,请重新输入".show(ctx!!) - return@setOnClickListener - } - this.dismiss() - listener?.onConfirmClick(inputValue) - } - } - - private fun configDialogLayout() { - window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - window?.decorView?.setBackgroundColor(Color.TRANSPARENT) - val params: WindowManager.LayoutParams? = window?.attributes - params?.width = QMUIDisplayHelper.dp2px(ctx, 280) - params?.height = WindowManager.LayoutParams.WRAP_CONTENT - window?.attributes = params - } - - class Builder { - var mContext: Context? = null - var title: String? = null - var hint: String? = null - var value: String? = null - var positiveBtn: String? = null - var negativeBtn: String? = null - var listener: OnDialogButtonClickListener? = null - - fun setContext(context: Context?): Builder { - mContext = context - return this - } - - fun setTitle(title: String?): Builder { - this.title = title - return this - } - - fun setHintText(hint: String?): Builder { - this.hint = hint - return this - } - - fun setDefaultValue(value: String?): Builder { - this.value = value - return this - } - - fun setPositiveButton(name: String?): Builder { - positiveBtn = name - return this - } - - fun setNegativeButton(name: String?): Builder { - negativeBtn = name - return this - } - - fun setOnDialogClickListener(listener: OnDialogButtonClickListener): Builder { - this.listener = listener - return this - } - - fun build(): InputDialog { - return InputDialog(this) - } - } - - interface OnDialogButtonClickListener { - fun onCancelClick() - - fun onConfirmClick(input: String) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt index 216befd..0825a77 100644 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt +++ b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt @@ -13,7 +13,6 @@ import com.casic.birmm.inspect.R import com.qmuiteam.qmui.util.QMUIDisplayHelper import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton -import kotlinx.android.synthetic.main.dialog_input.dialogTitleView import kotlinx.android.synthetic.main.dialog_single_choice.* diff --git a/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml new file mode 100644 index 0000000..96eb93e --- /dev/null +++ b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_main_selector.xml b/app/src/main/res/drawable/button_main_selector.xml new file mode 100644 index 0000000..5875998 --- /dev/null +++ b/app/src/main/res/drawable/button_main_selector.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_white_selector.xml b/app/src/main/res/drawable/button_white_selector.xml new file mode 100644 index 0000000..4dd3c0b --- /dev/null +++ b/app/src/main/res/drawable/button_white_selector.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt deleted file mode 100644 index f2db4c9..0000000 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.casic.birmm.inspect.widgets - -import android.app.Dialog -import android.content.Context -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.os.Bundle -import android.view.WindowManager -import com.casic.birmm.inspect.R -import com.casic.birmm.inspect.extensions.show -import com.qmuiteam.qmui.util.QMUIDisplayHelper -import kotlinx.android.synthetic.main.dialog_input.* - - -class InputDialog private constructor(builder: Builder) : Dialog(builder.mContext!!) { - - private var ctx: Context? = null - private var title: String? = null - private var hint: String? = null - private var value: String? = null - private var positiveBtn: String? = null - private var negativeBtn: String? = null - private var listener: OnDialogButtonClickListener? = null - - init { - this.ctx = builder.mContext - this.title = builder.title - this.hint = builder.hint - this.value = builder.value - this.positiveBtn = builder.positiveBtn - this.negativeBtn = builder.negativeBtn - this.listener = builder.listener - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - configDialogLayout() - setContentView(R.layout.dialog_input) - setCancelable(false) - setCanceledOnTouchOutside(false) - - dialogTitleView.text = title - dialogInputView.hint = hint!! - value.apply { - dialogInputView.setText(this) - } - - dialogCancelButton.text = negativeBtn - dialogCancelButton.setChangeAlphaWhenPress(true) - dialogCancelButton.setOnClickListener { - this.dismiss() - listener?.onCancelClick() - } - - dialogConfirmButton.text = positiveBtn - dialogConfirmButton.setChangeAlphaWhenPress(true) - dialogConfirmButton.setOnClickListener { - val inputValue = dialogInputView.text.toString().trim() - if (inputValue.isEmpty()) { - "什么都没输入,请重新输入".show(ctx!!) - return@setOnClickListener - } - this.dismiss() - listener?.onConfirmClick(inputValue) - } - } - - private fun configDialogLayout() { - window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - window?.decorView?.setBackgroundColor(Color.TRANSPARENT) - val params: WindowManager.LayoutParams? = window?.attributes - params?.width = QMUIDisplayHelper.dp2px(ctx, 280) - params?.height = WindowManager.LayoutParams.WRAP_CONTENT - window?.attributes = params - } - - class Builder { - var mContext: Context? = null - var title: String? = null - var hint: String? = null - var value: String? = null - var positiveBtn: String? = null - var negativeBtn: String? = null - var listener: OnDialogButtonClickListener? = null - - fun setContext(context: Context?): Builder { - mContext = context - return this - } - - fun setTitle(title: String?): Builder { - this.title = title - return this - } - - fun setHintText(hint: String?): Builder { - this.hint = hint - return this - } - - fun setDefaultValue(value: String?): Builder { - this.value = value - return this - } - - fun setPositiveButton(name: String?): Builder { - positiveBtn = name - return this - } - - fun setNegativeButton(name: String?): Builder { - negativeBtn = name - return this - } - - fun setOnDialogClickListener(listener: OnDialogButtonClickListener): Builder { - this.listener = listener - return this - } - - fun build(): InputDialog { - return InputDialog(this) - } - } - - interface OnDialogButtonClickListener { - fun onCancelClick() - - fun onConfirmClick(input: String) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt index 216befd..0825a77 100644 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt +++ b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt @@ -13,7 +13,6 @@ import com.casic.birmm.inspect.R import com.qmuiteam.qmui.util.QMUIDisplayHelper import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton -import kotlinx.android.synthetic.main.dialog_input.dialogTitleView import kotlinx.android.synthetic.main.dialog_single_choice.* diff --git a/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml new file mode 100644 index 0000000..96eb93e --- /dev/null +++ b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_main_selector.xml b/app/src/main/res/drawable/button_main_selector.xml new file mode 100644 index 0000000..5875998 --- /dev/null +++ b/app/src/main/res/drawable/button_main_selector.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_white_selector.xml b/app/src/main/res/drawable/button_white_selector.xml new file mode 100644 index 0000000..4dd3c0b --- /dev/null +++ b/app/src/main/res/drawable/button_white_selector.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_big_image.xml b/app/src/main/res/layout/activity_big_image.xml index 8ae4bfc..a5bfa90 100644 --- a/app/src/main/res/layout/activity_big_image.xml +++ b/app/src/main/res/layout/activity_big_image.xml @@ -17,14 +17,14 @@ + android:paddingVertical="@dimen/dp_10"> diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt deleted file mode 100644 index f2db4c9..0000000 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.casic.birmm.inspect.widgets - -import android.app.Dialog -import android.content.Context -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.os.Bundle -import android.view.WindowManager -import com.casic.birmm.inspect.R -import com.casic.birmm.inspect.extensions.show -import com.qmuiteam.qmui.util.QMUIDisplayHelper -import kotlinx.android.synthetic.main.dialog_input.* - - -class InputDialog private constructor(builder: Builder) : Dialog(builder.mContext!!) { - - private var ctx: Context? = null - private var title: String? = null - private var hint: String? = null - private var value: String? = null - private var positiveBtn: String? = null - private var negativeBtn: String? = null - private var listener: OnDialogButtonClickListener? = null - - init { - this.ctx = builder.mContext - this.title = builder.title - this.hint = builder.hint - this.value = builder.value - this.positiveBtn = builder.positiveBtn - this.negativeBtn = builder.negativeBtn - this.listener = builder.listener - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - configDialogLayout() - setContentView(R.layout.dialog_input) - setCancelable(false) - setCanceledOnTouchOutside(false) - - dialogTitleView.text = title - dialogInputView.hint = hint!! - value.apply { - dialogInputView.setText(this) - } - - dialogCancelButton.text = negativeBtn - dialogCancelButton.setChangeAlphaWhenPress(true) - dialogCancelButton.setOnClickListener { - this.dismiss() - listener?.onCancelClick() - } - - dialogConfirmButton.text = positiveBtn - dialogConfirmButton.setChangeAlphaWhenPress(true) - dialogConfirmButton.setOnClickListener { - val inputValue = dialogInputView.text.toString().trim() - if (inputValue.isEmpty()) { - "什么都没输入,请重新输入".show(ctx!!) - return@setOnClickListener - } - this.dismiss() - listener?.onConfirmClick(inputValue) - } - } - - private fun configDialogLayout() { - window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - window?.decorView?.setBackgroundColor(Color.TRANSPARENT) - val params: WindowManager.LayoutParams? = window?.attributes - params?.width = QMUIDisplayHelper.dp2px(ctx, 280) - params?.height = WindowManager.LayoutParams.WRAP_CONTENT - window?.attributes = params - } - - class Builder { - var mContext: Context? = null - var title: String? = null - var hint: String? = null - var value: String? = null - var positiveBtn: String? = null - var negativeBtn: String? = null - var listener: OnDialogButtonClickListener? = null - - fun setContext(context: Context?): Builder { - mContext = context - return this - } - - fun setTitle(title: String?): Builder { - this.title = title - return this - } - - fun setHintText(hint: String?): Builder { - this.hint = hint - return this - } - - fun setDefaultValue(value: String?): Builder { - this.value = value - return this - } - - fun setPositiveButton(name: String?): Builder { - positiveBtn = name - return this - } - - fun setNegativeButton(name: String?): Builder { - negativeBtn = name - return this - } - - fun setOnDialogClickListener(listener: OnDialogButtonClickListener): Builder { - this.listener = listener - return this - } - - fun build(): InputDialog { - return InputDialog(this) - } - } - - interface OnDialogButtonClickListener { - fun onCancelClick() - - fun onConfirmClick(input: String) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt index 216befd..0825a77 100644 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt +++ b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt @@ -13,7 +13,6 @@ import com.casic.birmm.inspect.R import com.qmuiteam.qmui.util.QMUIDisplayHelper import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton -import kotlinx.android.synthetic.main.dialog_input.dialogTitleView import kotlinx.android.synthetic.main.dialog_single_choice.* diff --git a/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml new file mode 100644 index 0000000..96eb93e --- /dev/null +++ b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_main_selector.xml b/app/src/main/res/drawable/button_main_selector.xml new file mode 100644 index 0000000..5875998 --- /dev/null +++ b/app/src/main/res/drawable/button_main_selector.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_white_selector.xml b/app/src/main/res/drawable/button_white_selector.xml new file mode 100644 index 0000000..4dd3c0b --- /dev/null +++ b/app/src/main/res/drawable/button_white_selector.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_big_image.xml b/app/src/main/res/layout/activity_big_image.xml index 8ae4bfc..a5bfa90 100644 --- a/app/src/main/res/layout/activity_big_image.xml +++ b/app/src/main/res/layout/activity_big_image.xml @@ -17,14 +17,14 @@ + android:paddingVertical="@dimen/dp_10"> diff --git a/app/src/main/res/layout/activity_event_detail.xml b/app/src/main/res/layout/activity_event_detail.xml index 618e332..4983690 100644 --- a/app/src/main/res/layout/activity_event_detail.xml +++ b/app/src/main/res/layout/activity_event_detail.xml @@ -12,7 +12,7 @@ android:layout_height="match_parent" android:background="@color/layoutColor" android:orientation="vertical" - android:padding="@dimen/padding_10dp"> + android:padding="@dimen/dp_10"> + android:padding="@dimen/dp_10"> + android:layout_marginBottom="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> - + + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> @@ -76,20 +76,20 @@ + android:padding="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> + android:padding="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:verticalSpacing="@dimen/dp_10" /> diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt deleted file mode 100644 index f2db4c9..0000000 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.casic.birmm.inspect.widgets - -import android.app.Dialog -import android.content.Context -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.os.Bundle -import android.view.WindowManager -import com.casic.birmm.inspect.R -import com.casic.birmm.inspect.extensions.show -import com.qmuiteam.qmui.util.QMUIDisplayHelper -import kotlinx.android.synthetic.main.dialog_input.* - - -class InputDialog private constructor(builder: Builder) : Dialog(builder.mContext!!) { - - private var ctx: Context? = null - private var title: String? = null - private var hint: String? = null - private var value: String? = null - private var positiveBtn: String? = null - private var negativeBtn: String? = null - private var listener: OnDialogButtonClickListener? = null - - init { - this.ctx = builder.mContext - this.title = builder.title - this.hint = builder.hint - this.value = builder.value - this.positiveBtn = builder.positiveBtn - this.negativeBtn = builder.negativeBtn - this.listener = builder.listener - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - configDialogLayout() - setContentView(R.layout.dialog_input) - setCancelable(false) - setCanceledOnTouchOutside(false) - - dialogTitleView.text = title - dialogInputView.hint = hint!! - value.apply { - dialogInputView.setText(this) - } - - dialogCancelButton.text = negativeBtn - dialogCancelButton.setChangeAlphaWhenPress(true) - dialogCancelButton.setOnClickListener { - this.dismiss() - listener?.onCancelClick() - } - - dialogConfirmButton.text = positiveBtn - dialogConfirmButton.setChangeAlphaWhenPress(true) - dialogConfirmButton.setOnClickListener { - val inputValue = dialogInputView.text.toString().trim() - if (inputValue.isEmpty()) { - "什么都没输入,请重新输入".show(ctx!!) - return@setOnClickListener - } - this.dismiss() - listener?.onConfirmClick(inputValue) - } - } - - private fun configDialogLayout() { - window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - window?.decorView?.setBackgroundColor(Color.TRANSPARENT) - val params: WindowManager.LayoutParams? = window?.attributes - params?.width = QMUIDisplayHelper.dp2px(ctx, 280) - params?.height = WindowManager.LayoutParams.WRAP_CONTENT - window?.attributes = params - } - - class Builder { - var mContext: Context? = null - var title: String? = null - var hint: String? = null - var value: String? = null - var positiveBtn: String? = null - var negativeBtn: String? = null - var listener: OnDialogButtonClickListener? = null - - fun setContext(context: Context?): Builder { - mContext = context - return this - } - - fun setTitle(title: String?): Builder { - this.title = title - return this - } - - fun setHintText(hint: String?): Builder { - this.hint = hint - return this - } - - fun setDefaultValue(value: String?): Builder { - this.value = value - return this - } - - fun setPositiveButton(name: String?): Builder { - positiveBtn = name - return this - } - - fun setNegativeButton(name: String?): Builder { - negativeBtn = name - return this - } - - fun setOnDialogClickListener(listener: OnDialogButtonClickListener): Builder { - this.listener = listener - return this - } - - fun build(): InputDialog { - return InputDialog(this) - } - } - - interface OnDialogButtonClickListener { - fun onCancelClick() - - fun onConfirmClick(input: String) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt index 216befd..0825a77 100644 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt +++ b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt @@ -13,7 +13,6 @@ import com.casic.birmm.inspect.R import com.qmuiteam.qmui.util.QMUIDisplayHelper import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton -import kotlinx.android.synthetic.main.dialog_input.dialogTitleView import kotlinx.android.synthetic.main.dialog_single_choice.* diff --git a/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml new file mode 100644 index 0000000..96eb93e --- /dev/null +++ b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_main_selector.xml b/app/src/main/res/drawable/button_main_selector.xml new file mode 100644 index 0000000..5875998 --- /dev/null +++ b/app/src/main/res/drawable/button_main_selector.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_white_selector.xml b/app/src/main/res/drawable/button_white_selector.xml new file mode 100644 index 0000000..4dd3c0b --- /dev/null +++ b/app/src/main/res/drawable/button_white_selector.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_big_image.xml b/app/src/main/res/layout/activity_big_image.xml index 8ae4bfc..a5bfa90 100644 --- a/app/src/main/res/layout/activity_big_image.xml +++ b/app/src/main/res/layout/activity_big_image.xml @@ -17,14 +17,14 @@ + android:paddingVertical="@dimen/dp_10"> diff --git a/app/src/main/res/layout/activity_event_detail.xml b/app/src/main/res/layout/activity_event_detail.xml index 618e332..4983690 100644 --- a/app/src/main/res/layout/activity_event_detail.xml +++ b/app/src/main/res/layout/activity_event_detail.xml @@ -12,7 +12,7 @@ android:layout_height="match_parent" android:background="@color/layoutColor" android:orientation="vertical" - android:padding="@dimen/padding_10dp"> + android:padding="@dimen/dp_10"> + android:padding="@dimen/dp_10"> + android:layout_marginBottom="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> - + + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> @@ -76,20 +76,20 @@ + android:padding="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> + android:padding="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:verticalSpacing="@dimen/dp_10" /> diff --git a/app/src/main/res/layout/activity_event_list.xml b/app/src/main/res/layout/activity_event_list.xml index c24752c..3325a42 100644 --- a/app/src/main/res/layout/activity_event_list.xml +++ b/app/src/main/res/layout/activity_event_list.xml @@ -11,6 +11,6 @@ android:id="@+id/eventRecyclerView" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginTop="@dimen/margin_10dp" + android:layout_marginTop="@dimen/dp_10" android:scrollbars="none" /> \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt deleted file mode 100644 index f2db4c9..0000000 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.casic.birmm.inspect.widgets - -import android.app.Dialog -import android.content.Context -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.os.Bundle -import android.view.WindowManager -import com.casic.birmm.inspect.R -import com.casic.birmm.inspect.extensions.show -import com.qmuiteam.qmui.util.QMUIDisplayHelper -import kotlinx.android.synthetic.main.dialog_input.* - - -class InputDialog private constructor(builder: Builder) : Dialog(builder.mContext!!) { - - private var ctx: Context? = null - private var title: String? = null - private var hint: String? = null - private var value: String? = null - private var positiveBtn: String? = null - private var negativeBtn: String? = null - private var listener: OnDialogButtonClickListener? = null - - init { - this.ctx = builder.mContext - this.title = builder.title - this.hint = builder.hint - this.value = builder.value - this.positiveBtn = builder.positiveBtn - this.negativeBtn = builder.negativeBtn - this.listener = builder.listener - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - configDialogLayout() - setContentView(R.layout.dialog_input) - setCancelable(false) - setCanceledOnTouchOutside(false) - - dialogTitleView.text = title - dialogInputView.hint = hint!! - value.apply { - dialogInputView.setText(this) - } - - dialogCancelButton.text = negativeBtn - dialogCancelButton.setChangeAlphaWhenPress(true) - dialogCancelButton.setOnClickListener { - this.dismiss() - listener?.onCancelClick() - } - - dialogConfirmButton.text = positiveBtn - dialogConfirmButton.setChangeAlphaWhenPress(true) - dialogConfirmButton.setOnClickListener { - val inputValue = dialogInputView.text.toString().trim() - if (inputValue.isEmpty()) { - "什么都没输入,请重新输入".show(ctx!!) - return@setOnClickListener - } - this.dismiss() - listener?.onConfirmClick(inputValue) - } - } - - private fun configDialogLayout() { - window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - window?.decorView?.setBackgroundColor(Color.TRANSPARENT) - val params: WindowManager.LayoutParams? = window?.attributes - params?.width = QMUIDisplayHelper.dp2px(ctx, 280) - params?.height = WindowManager.LayoutParams.WRAP_CONTENT - window?.attributes = params - } - - class Builder { - var mContext: Context? = null - var title: String? = null - var hint: String? = null - var value: String? = null - var positiveBtn: String? = null - var negativeBtn: String? = null - var listener: OnDialogButtonClickListener? = null - - fun setContext(context: Context?): Builder { - mContext = context - return this - } - - fun setTitle(title: String?): Builder { - this.title = title - return this - } - - fun setHintText(hint: String?): Builder { - this.hint = hint - return this - } - - fun setDefaultValue(value: String?): Builder { - this.value = value - return this - } - - fun setPositiveButton(name: String?): Builder { - positiveBtn = name - return this - } - - fun setNegativeButton(name: String?): Builder { - negativeBtn = name - return this - } - - fun setOnDialogClickListener(listener: OnDialogButtonClickListener): Builder { - this.listener = listener - return this - } - - fun build(): InputDialog { - return InputDialog(this) - } - } - - interface OnDialogButtonClickListener { - fun onCancelClick() - - fun onConfirmClick(input: String) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt index 216befd..0825a77 100644 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt +++ b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt @@ -13,7 +13,6 @@ import com.casic.birmm.inspect.R import com.qmuiteam.qmui.util.QMUIDisplayHelper import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton -import kotlinx.android.synthetic.main.dialog_input.dialogTitleView import kotlinx.android.synthetic.main.dialog_single_choice.* diff --git a/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml new file mode 100644 index 0000000..96eb93e --- /dev/null +++ b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_main_selector.xml b/app/src/main/res/drawable/button_main_selector.xml new file mode 100644 index 0000000..5875998 --- /dev/null +++ b/app/src/main/res/drawable/button_main_selector.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_white_selector.xml b/app/src/main/res/drawable/button_white_selector.xml new file mode 100644 index 0000000..4dd3c0b --- /dev/null +++ b/app/src/main/res/drawable/button_white_selector.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_big_image.xml b/app/src/main/res/layout/activity_big_image.xml index 8ae4bfc..a5bfa90 100644 --- a/app/src/main/res/layout/activity_big_image.xml +++ b/app/src/main/res/layout/activity_big_image.xml @@ -17,14 +17,14 @@ + android:paddingVertical="@dimen/dp_10"> diff --git a/app/src/main/res/layout/activity_event_detail.xml b/app/src/main/res/layout/activity_event_detail.xml index 618e332..4983690 100644 --- a/app/src/main/res/layout/activity_event_detail.xml +++ b/app/src/main/res/layout/activity_event_detail.xml @@ -12,7 +12,7 @@ android:layout_height="match_parent" android:background="@color/layoutColor" android:orientation="vertical" - android:padding="@dimen/padding_10dp"> + android:padding="@dimen/dp_10"> + android:padding="@dimen/dp_10"> + android:layout_marginBottom="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> - + + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> @@ -76,20 +76,20 @@ + android:padding="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> + android:padding="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:verticalSpacing="@dimen/dp_10" /> diff --git a/app/src/main/res/layout/activity_event_list.xml b/app/src/main/res/layout/activity_event_list.xml index c24752c..3325a42 100644 --- a/app/src/main/res/layout/activity_event_list.xml +++ b/app/src/main/res/layout/activity_event_list.xml @@ -11,6 +11,6 @@ android:id="@+id/eventRecyclerView" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginTop="@dimen/margin_10dp" + android:layout_marginTop="@dimen/dp_10" android:scrollbars="none" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_guide.xml b/app/src/main/res/layout/activity_guide.xml index e197626..af3d28e 100644 --- a/app/src/main/res/layout/activity_guide.xml +++ b/app/src/main/res/layout/activity_guide.xml @@ -10,10 +10,10 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentEnd="true" - android:paddingHorizontal="7dp" - android:paddingVertical="5dp" + android:paddingHorizontal="@dimen/dp_7" + android:paddingVertical="@dimen/dp_5" android:text="跳过\u30003" android:textColor="@color/white" app:qmui_backgroundColor="@color/transparentBlack" - app:qmui_radius="5dp" /> + app:qmui_radius="@dimen/dp_5" /> \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt deleted file mode 100644 index f2db4c9..0000000 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.casic.birmm.inspect.widgets - -import android.app.Dialog -import android.content.Context -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.os.Bundle -import android.view.WindowManager -import com.casic.birmm.inspect.R -import com.casic.birmm.inspect.extensions.show -import com.qmuiteam.qmui.util.QMUIDisplayHelper -import kotlinx.android.synthetic.main.dialog_input.* - - -class InputDialog private constructor(builder: Builder) : Dialog(builder.mContext!!) { - - private var ctx: Context? = null - private var title: String? = null - private var hint: String? = null - private var value: String? = null - private var positiveBtn: String? = null - private var negativeBtn: String? = null - private var listener: OnDialogButtonClickListener? = null - - init { - this.ctx = builder.mContext - this.title = builder.title - this.hint = builder.hint - this.value = builder.value - this.positiveBtn = builder.positiveBtn - this.negativeBtn = builder.negativeBtn - this.listener = builder.listener - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - configDialogLayout() - setContentView(R.layout.dialog_input) - setCancelable(false) - setCanceledOnTouchOutside(false) - - dialogTitleView.text = title - dialogInputView.hint = hint!! - value.apply { - dialogInputView.setText(this) - } - - dialogCancelButton.text = negativeBtn - dialogCancelButton.setChangeAlphaWhenPress(true) - dialogCancelButton.setOnClickListener { - this.dismiss() - listener?.onCancelClick() - } - - dialogConfirmButton.text = positiveBtn - dialogConfirmButton.setChangeAlphaWhenPress(true) - dialogConfirmButton.setOnClickListener { - val inputValue = dialogInputView.text.toString().trim() - if (inputValue.isEmpty()) { - "什么都没输入,请重新输入".show(ctx!!) - return@setOnClickListener - } - this.dismiss() - listener?.onConfirmClick(inputValue) - } - } - - private fun configDialogLayout() { - window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - window?.decorView?.setBackgroundColor(Color.TRANSPARENT) - val params: WindowManager.LayoutParams? = window?.attributes - params?.width = QMUIDisplayHelper.dp2px(ctx, 280) - params?.height = WindowManager.LayoutParams.WRAP_CONTENT - window?.attributes = params - } - - class Builder { - var mContext: Context? = null - var title: String? = null - var hint: String? = null - var value: String? = null - var positiveBtn: String? = null - var negativeBtn: String? = null - var listener: OnDialogButtonClickListener? = null - - fun setContext(context: Context?): Builder { - mContext = context - return this - } - - fun setTitle(title: String?): Builder { - this.title = title - return this - } - - fun setHintText(hint: String?): Builder { - this.hint = hint - return this - } - - fun setDefaultValue(value: String?): Builder { - this.value = value - return this - } - - fun setPositiveButton(name: String?): Builder { - positiveBtn = name - return this - } - - fun setNegativeButton(name: String?): Builder { - negativeBtn = name - return this - } - - fun setOnDialogClickListener(listener: OnDialogButtonClickListener): Builder { - this.listener = listener - return this - } - - fun build(): InputDialog { - return InputDialog(this) - } - } - - interface OnDialogButtonClickListener { - fun onCancelClick() - - fun onConfirmClick(input: String) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt index 216befd..0825a77 100644 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt +++ b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt @@ -13,7 +13,6 @@ import com.casic.birmm.inspect.R import com.qmuiteam.qmui.util.QMUIDisplayHelper import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton -import kotlinx.android.synthetic.main.dialog_input.dialogTitleView import kotlinx.android.synthetic.main.dialog_single_choice.* diff --git a/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml new file mode 100644 index 0000000..96eb93e --- /dev/null +++ b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_main_selector.xml b/app/src/main/res/drawable/button_main_selector.xml new file mode 100644 index 0000000..5875998 --- /dev/null +++ b/app/src/main/res/drawable/button_main_selector.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_white_selector.xml b/app/src/main/res/drawable/button_white_selector.xml new file mode 100644 index 0000000..4dd3c0b --- /dev/null +++ b/app/src/main/res/drawable/button_white_selector.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_big_image.xml b/app/src/main/res/layout/activity_big_image.xml index 8ae4bfc..a5bfa90 100644 --- a/app/src/main/res/layout/activity_big_image.xml +++ b/app/src/main/res/layout/activity_big_image.xml @@ -17,14 +17,14 @@ + android:paddingVertical="@dimen/dp_10"> diff --git a/app/src/main/res/layout/activity_event_detail.xml b/app/src/main/res/layout/activity_event_detail.xml index 618e332..4983690 100644 --- a/app/src/main/res/layout/activity_event_detail.xml +++ b/app/src/main/res/layout/activity_event_detail.xml @@ -12,7 +12,7 @@ android:layout_height="match_parent" android:background="@color/layoutColor" android:orientation="vertical" - android:padding="@dimen/padding_10dp"> + android:padding="@dimen/dp_10"> + android:padding="@dimen/dp_10"> + android:layout_marginBottom="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> - + + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> @@ -76,20 +76,20 @@ + android:padding="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> + android:padding="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:verticalSpacing="@dimen/dp_10" /> diff --git a/app/src/main/res/layout/activity_event_list.xml b/app/src/main/res/layout/activity_event_list.xml index c24752c..3325a42 100644 --- a/app/src/main/res/layout/activity_event_list.xml +++ b/app/src/main/res/layout/activity_event_list.xml @@ -11,6 +11,6 @@ android:id="@+id/eventRecyclerView" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginTop="@dimen/margin_10dp" + android:layout_marginTop="@dimen/dp_10" android:scrollbars="none" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_guide.xml b/app/src/main/res/layout/activity_guide.xml index e197626..af3d28e 100644 --- a/app/src/main/res/layout/activity_guide.xml +++ b/app/src/main/res/layout/activity_guide.xml @@ -10,10 +10,10 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentEnd="true" - android:paddingHorizontal="7dp" - android:paddingVertical="5dp" + android:paddingHorizontal="@dimen/dp_7" + android:paddingVertical="@dimen/dp_5" android:text="跳过\u30003" android:textColor="@color/white" app:qmui_backgroundColor="@color/transparentBlack" - app:qmui_radius="5dp" /> + app:qmui_radius="@dimen/dp_5" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_inspect_route.xml b/app/src/main/res/layout/activity_inspect_route.xml index 38d2421..10b0e67 100644 --- a/app/src/main/res/layout/activity_inspect_route.xml +++ b/app/src/main/res/layout/activity_inspect_route.xml @@ -20,13 +20,13 @@ + android:layout_margin="@dimen/dp_5" + app:cardCornerRadius="@dimen/dp_5"> + android:padding="@dimen/dp_7"> - + android:layout_marginHorizontal="@dimen/dp_30" + android:layout_marginBottom="@dimen/dp_20" + android:text="事件清单" /> \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 70c3660..61a9130 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,8 +1,6 @@ - - - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index fb00ab5..e4cba14 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,6 +3,31 @@ - + diff --git a/app/build.gradle b/app/build.gradle index a40143c..0d7f214 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,9 +52,11 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + //基础依赖库 + implementation files('libs/lite-release.aar') + implementation 'androidx.appcompat:appcompat:1.4.2' + implementation 'androidx.core:core-ktx:1.8.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' //Google官方授权框架 implementation 'pub.devrel:easypermissions:3.0.0' //腾讯Android UI框架 @@ -65,12 +67,12 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //MVVM+LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1" - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0" implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" //Kotlin协程 - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1' //返回值转换器 implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' implementation 'com.squareup.retrofit2:converter-scalars:2.3.0' @@ -81,7 +83,7 @@ implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:okhttp:4.9.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.8.6' + implementation 'com.google.code.gson:gson:2.9.0' //上拉加载下拉刷新 implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //日期选择器 @@ -93,9 +95,6 @@ //高德地图 implementation 'com.amap.api:3dmap:7.9.1' implementation 'com.amap.api:location:5.3.1' - //仿iOS风格的dialog库 - //基础依赖库 - implementation 'com.github.AndroidCoderPeng:Android-library:1.6.0' //数据库框架 implementation 'org.greenrobot:greendao:3.3.0' } diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar new file mode 100644 index 0000000..95567db --- /dev/null +++ b/app/libs/lite-release.aar Binary files differ diff --git a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt index 89a854e..ad3d4e1 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/InspectRouteActivity.kt @@ -115,7 +115,6 @@ fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, EventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt index c893763..8a08659 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/LoginActivity.kt @@ -2,13 +2,7 @@ import android.content.Intent import android.os.Build -import android.text.Editable import android.text.TextUtils -import android.text.TextWatcher -import android.view.KeyEvent -import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import com.bumptech.glide.Glide @@ -18,7 +12,7 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.vm.AuthenticateViewModel import com.casic.birmm.inspect.vm.LoginInViewModel -import com.casic.birmm.inspect.widgets.InputDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import kotlinx.android.synthetic.main.activity_login.* @@ -55,33 +49,6 @@ } override fun initEvent() { - val editText: EditText? = inputLayout.editText - editText?.addTextChangedListener(object : TextWatcher { - override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { - - } - - override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { - - } - - override fun afterTextChanged(s: Editable) { - if (s.toString().trim { it <= ' ' }.length > 12) { - inputLayout.error = "密码长度超出限制" - } else { - inputLayout.error = null - } - } - }) - //点击输入法键盘"完成" - editText?.setOnEditorActionListener { _: TextView?, actionId: Int, _: KeyEvent? -> - if (actionId == EditorInfo.IME_ACTION_DONE) { - authenticateViewModel.obtainPublicKey() - return@setOnEditorActionListener true - } - false - } - loginButton.setChangeAlphaWhenPress(true) loginButton.setOnClickListener { val account = userNameView.text.toString() val userPassword = userPasswordView.text.toString() @@ -133,7 +100,6 @@ }) //单机模式 - singleModeView.setChangeAlphaWhenPress(true) singleModeView.setOnClickListener { SaveKeyValues.putValue("isSingleMode", true) startActivity(Intent(this, MainActivity::class.java)) @@ -146,15 +112,14 @@ Constant.DEFAULT_SERVER_CONFIG, "http://111.198.10.15:12204" ) as String - InputDialog.Builder().setContext(this) + AlertInputDialog.Builder().setContext(this) .setTitle("请输入后台服务器地址") - .setDefaultValue(defaultValue) - .setHintText("请输入服务器地址") + .setHintMessage(defaultValue) .setNegativeButton("取消") .setPositiveButton("保存") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { - SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, input) + .setOnDialogButtonClickListener(object : AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { + SaveKeyValues.putValue(Constant.DEFAULT_SERVER_CONFIG, value) } override fun onCancelClick() { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt index a5a1c74..ae618e7 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MainActivity.kt @@ -16,7 +16,7 @@ import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.include_base_title.* diff --git a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt index d6bff66..e6bb99c 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/MapActivity.kt @@ -32,11 +32,11 @@ import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener import com.casic.birmm.inspect.vm.AddInspectionViewModel import com.casic.birmm.inspect.vm.NewEventViewModel -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_inspect_route.mapView @@ -143,7 +143,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -310,15 +309,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", userDataModel.name!! @@ -463,7 +463,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index 06947ec..21209de 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -20,7 +20,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* import java.io.File @@ -121,7 +121,6 @@ OtherUtils.dismissLoadingDialog() }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { if (eventEditTextView.text.toString().filterString().isEmpty()) { "事件情况说明还未填写,请检查".show(this) @@ -173,30 +172,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@NewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@NewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt index 9412e31..2e0bc86 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeInspectRouteActivity.kt @@ -94,7 +94,6 @@ override fun initEvent() { leftBackView.setOnClickListener { this.finish() } - eventButton.setChangeAlphaWhenPress(true) eventButton.setOnClickListener { val intent = Intent(this, SingleModeEventListActivity::class.java) intent.putExtra("id", id) diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt index 4bba338..b4f58d8 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeMapActivity.kt @@ -28,11 +28,11 @@ import com.casic.birmm.inspect.utils.* import com.casic.birmm.inspect.utils.callback.OnBleConnectListener import com.casic.birmm.inspect.utils.callback.OnDeviceSearchListener -import com.casic.birmm.inspect.widgets.InputDialog import com.casic.birmm.inspect.widgets.SingleChoiceDialog import com.google.gson.Gson import com.gyf.immersionbar.ImmersionBar -import com.pengxh.app.multilib.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertControlDialog +import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.qmuiteam.qmui.util.QMUIStatusBarHelper import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.activity_map.* @@ -113,7 +113,6 @@ //需要判断是否是上次未完的巡检 selectInspectMode() - newEventButton.setChangeAlphaWhenPress(true) newEventButton.setOnClickListener { SingleChoiceDialog.Builder() .setContext(this) @@ -259,15 +258,16 @@ private fun selectInspectMode() { val isCompleted = SaveKeyValues.getValue(Constant.INSPECTION_COMPLETED, true) as Boolean if (isCompleted) { - InputDialog.Builder().setContext(this).setTitle("请输入巡检标签") - .setHintText("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") - .setOnDialogClickListener(object : InputDialog.OnDialogButtonClickListener { - override fun onConfirmClick(input: String) { + AlertInputDialog.Builder().setContext(this).setTitle("请输入巡检标签") + .setHintMessage("如:xxx区间巡检").setNegativeButton("放弃").setPositiveButton("开始巡检") + .setOnDialogButtonClickListener(object : + AlertInputDialog.OnDialogButtonClickListener { + override fun onConfirmClick(value: String) { val currentTimeMillis = System.currentTimeMillis() val completeDate = TimeOrDateUtil.timestampToCompleteDate(currentTimeMillis) model = NewInspectionModel( - currentTimeMillis.id(), input, completeDate, + currentTimeMillis.id(), value, completeDate, "", TimeOrDateUtil.timestampToDate(currentTimeMillis), 0.0, 0.0, 0.0, 0.0, "", resources.getString(R.string.app_name) @@ -412,7 +412,6 @@ sheetBuilder.setTitle("请选择要连接的设备") mapActivity.blueToothBeans.forEach { sheetBuilder.addItem(it.bluetoothDevice.name) - Log.d(Tag, it.bluetoothDevice.name) } sheetBuilder.setGravityCenter(true).setAddCancelBtn(true) .setOnSheetItemClickListener { dialog, _, position, _ -> diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt index 258d6f3..c3bb46b 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeNewEventActivity.kt @@ -19,7 +19,7 @@ import com.luck.picture.lib.PictureSelector import com.luck.picture.lib.config.PictureConfig import com.luck.picture.lib.config.PictureMimeType -import com.pengxh.app.multilib.widget.dialog.BottomActionSheet +import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_new_event.* import kotlinx.android.synthetic.main.include_base_title.* @@ -88,7 +88,6 @@ } }) - addEventButton.setChangeAlphaWhenPress(true) addEventButton.setOnClickListener { this.taskId = "t".id() if (eventEditTextView.text.toString().filterString().isEmpty()) { @@ -130,30 +129,32 @@ private fun selectPicture() { BottomActionSheet.Builder() .setContext(this) - .setActionItemTitles(arrayOf("拍照", "相册")) - .setOnActionSheetListener { position -> - when (position) { - 0 -> { - PictureSelector.create(this) - .openCamera(PictureMimeType.ofImage()) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .forResult(PictureConfig.REQUEST_CAMERA) - } - 1 -> { - PictureSelector.create(this) - .openGallery(PictureMimeType.ofImage()) - .isWeChatStyle(true) - .isCamera(false) - .isCompress(true) - .compressSavePath(FileUtils.imageCompressPath) - .imageEngine(GlideLoadEngine.createGlideEngine()) - .maxSelectNum(3) - .forResult(PictureConfig.CHOOSE_REQUEST) + .setActionItemTitle(listOf("拍照", "相册")) + .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { + override fun onActionItemClick(position: Int) { + when (position) { + 0 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openCamera(PictureMimeType.ofImage()) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .forResult(PictureConfig.REQUEST_CAMERA) + } + 1 -> { + PictureSelector.create(this@SingleModeNewEventActivity) + .openGallery(PictureMimeType.ofImage()) + .isWeChatStyle(true) + .isCamera(false) + .isCompress(true) + .compressSavePath(FileUtils.imageCompressPath) + .imageEngine(GlideLoadEngine.createGlideEngine()) + .maxSelectNum(3) + .forResult(PictureConfig.CHOOSE_REQUEST) + } } } - }.build().show() + }).build().show() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt index 5fa5a60..0713f94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/SingleModeUserSettingsActivity.kt @@ -69,7 +69,6 @@ SaveKeyValues.putValue(Constant.AUTO_RECORD, false) } } - backToLoginViewButton.setChangeAlphaWhenPress(true) backToLoginViewButton.setOnClickListener { startActivity( Intent( diff --git a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt index 06f680d..68e4cdb 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/UserSettingsActivity.kt @@ -80,7 +80,6 @@ logLayout.setOnClickListener { startActivity(Intent(this, ShowLogActivity::class.java)) } - loginOutButton.setChangeAlphaWhenPress(true) loginOutButton.setOnClickListener { QMUIDialog.MessageDialogBuilder(this) .setTitle("提示") diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt deleted file mode 100644 index f2db4c9..0000000 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/InputDialog.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.casic.birmm.inspect.widgets - -import android.app.Dialog -import android.content.Context -import android.graphics.Color -import android.graphics.drawable.ColorDrawable -import android.os.Bundle -import android.view.WindowManager -import com.casic.birmm.inspect.R -import com.casic.birmm.inspect.extensions.show -import com.qmuiteam.qmui.util.QMUIDisplayHelper -import kotlinx.android.synthetic.main.dialog_input.* - - -class InputDialog private constructor(builder: Builder) : Dialog(builder.mContext!!) { - - private var ctx: Context? = null - private var title: String? = null - private var hint: String? = null - private var value: String? = null - private var positiveBtn: String? = null - private var negativeBtn: String? = null - private var listener: OnDialogButtonClickListener? = null - - init { - this.ctx = builder.mContext - this.title = builder.title - this.hint = builder.hint - this.value = builder.value - this.positiveBtn = builder.positiveBtn - this.negativeBtn = builder.negativeBtn - this.listener = builder.listener - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - configDialogLayout() - setContentView(R.layout.dialog_input) - setCancelable(false) - setCanceledOnTouchOutside(false) - - dialogTitleView.text = title - dialogInputView.hint = hint!! - value.apply { - dialogInputView.setText(this) - } - - dialogCancelButton.text = negativeBtn - dialogCancelButton.setChangeAlphaWhenPress(true) - dialogCancelButton.setOnClickListener { - this.dismiss() - listener?.onCancelClick() - } - - dialogConfirmButton.text = positiveBtn - dialogConfirmButton.setChangeAlphaWhenPress(true) - dialogConfirmButton.setOnClickListener { - val inputValue = dialogInputView.text.toString().trim() - if (inputValue.isEmpty()) { - "什么都没输入,请重新输入".show(ctx!!) - return@setOnClickListener - } - this.dismiss() - listener?.onConfirmClick(inputValue) - } - } - - private fun configDialogLayout() { - window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) - window?.decorView?.setBackgroundColor(Color.TRANSPARENT) - val params: WindowManager.LayoutParams? = window?.attributes - params?.width = QMUIDisplayHelper.dp2px(ctx, 280) - params?.height = WindowManager.LayoutParams.WRAP_CONTENT - window?.attributes = params - } - - class Builder { - var mContext: Context? = null - var title: String? = null - var hint: String? = null - var value: String? = null - var positiveBtn: String? = null - var negativeBtn: String? = null - var listener: OnDialogButtonClickListener? = null - - fun setContext(context: Context?): Builder { - mContext = context - return this - } - - fun setTitle(title: String?): Builder { - this.title = title - return this - } - - fun setHintText(hint: String?): Builder { - this.hint = hint - return this - } - - fun setDefaultValue(value: String?): Builder { - this.value = value - return this - } - - fun setPositiveButton(name: String?): Builder { - positiveBtn = name - return this - } - - fun setNegativeButton(name: String?): Builder { - negativeBtn = name - return this - } - - fun setOnDialogClickListener(listener: OnDialogButtonClickListener): Builder { - this.listener = listener - return this - } - - fun build(): InputDialog { - return InputDialog(this) - } - } - - interface OnDialogButtonClickListener { - fun onCancelClick() - - fun onConfirmClick(input: String) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt index 216befd..0825a77 100644 --- a/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt +++ b/app/src/main/java/com/casic/birmm/inspect/widgets/SingleChoiceDialog.kt @@ -13,7 +13,6 @@ import com.casic.birmm.inspect.R import com.qmuiteam.qmui.util.QMUIDisplayHelper import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton -import kotlinx.android.synthetic.main.dialog_input.dialogTitleView import kotlinx.android.synthetic.main.dialog_single_choice.* diff --git a/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml new file mode 100644 index 0000000..96eb93e --- /dev/null +++ b/app/src/main/res/drawable/bg_solid_layout_gray_radius_5.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_main_selector.xml b/app/src/main/res/drawable/button_main_selector.xml new file mode 100644 index 0000000..5875998 --- /dev/null +++ b/app/src/main/res/drawable/button_main_selector.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/button_white_selector.xml b/app/src/main/res/drawable/button_white_selector.xml new file mode 100644 index 0000000..4dd3c0b --- /dev/null +++ b/app/src/main/res/drawable/button_white_selector.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_big_image.xml b/app/src/main/res/layout/activity_big_image.xml index 8ae4bfc..a5bfa90 100644 --- a/app/src/main/res/layout/activity_big_image.xml +++ b/app/src/main/res/layout/activity_big_image.xml @@ -17,14 +17,14 @@ + android:paddingVertical="@dimen/dp_10"> diff --git a/app/src/main/res/layout/activity_event_detail.xml b/app/src/main/res/layout/activity_event_detail.xml index 618e332..4983690 100644 --- a/app/src/main/res/layout/activity_event_detail.xml +++ b/app/src/main/res/layout/activity_event_detail.xml @@ -12,7 +12,7 @@ android:layout_height="match_parent" android:background="@color/layoutColor" android:orientation="vertical" - android:padding="@dimen/padding_10dp"> + android:padding="@dimen/dp_10"> + android:padding="@dimen/dp_10"> + android:layout_marginBottom="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> - + + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> @@ -76,20 +76,20 @@ + android:padding="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:textSize="@dimen/sp_16" /> + android:padding="@dimen/dp_10"> + android:textSize="@dimen/sp_16" /> + android:verticalSpacing="@dimen/dp_10" /> diff --git a/app/src/main/res/layout/activity_event_list.xml b/app/src/main/res/layout/activity_event_list.xml index c24752c..3325a42 100644 --- a/app/src/main/res/layout/activity_event_list.xml +++ b/app/src/main/res/layout/activity_event_list.xml @@ -11,6 +11,6 @@ android:id="@+id/eventRecyclerView" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginTop="@dimen/margin_10dp" + android:layout_marginTop="@dimen/dp_10" android:scrollbars="none" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_guide.xml b/app/src/main/res/layout/activity_guide.xml index e197626..af3d28e 100644 --- a/app/src/main/res/layout/activity_guide.xml +++ b/app/src/main/res/layout/activity_guide.xml @@ -10,10 +10,10 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentEnd="true" - android:paddingHorizontal="7dp" - android:paddingVertical="5dp" + android:paddingHorizontal="@dimen/dp_7" + android:paddingVertical="@dimen/dp_5" android:text="跳过\u30003" android:textColor="@color/white" app:qmui_backgroundColor="@color/transparentBlack" - app:qmui_radius="5dp" /> + app:qmui_radius="@dimen/dp_5" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_inspect_route.xml b/app/src/main/res/layout/activity_inspect_route.xml index 38d2421..10b0e67 100644 --- a/app/src/main/res/layout/activity_inspect_route.xml +++ b/app/src/main/res/layout/activity_inspect_route.xml @@ -20,13 +20,13 @@ + android:layout_margin="@dimen/dp_5" + app:cardCornerRadius="@dimen/dp_5"> + android:padding="@dimen/dp_7"> - + android:layout_marginHorizontal="@dimen/dp_30" + android:layout_marginBottom="@dimen/dp_20" + android:text="事件清单" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index 2744a43..c780a62 100644 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -1,8 +1,8 @@ + android:layout_height="match_parent" + android:background="@color/white"> + android:textSize="@dimen/sp_22" /> - + android:layout_height="@dimen/titleViewHeight" + android:layout_above="@id/userPasswordLayout" + android:layout_marginHorizontal="@dimen/dp_50" + android:layout_marginBottom="@dimen/dp_5" + android:background="@drawable/bg_solid_layout_gray_radius_5" + android:gravity="center_vertical" + android:orientation="horizontal"> - + + - + - + android:layout_height="@dimen/titleViewHeight" + android:layout_above="@id/anchorView" + android:layout_marginHorizontal="@dimen/dp_50" + android:layout_marginTop="@dimen/dp_5" + android:background="@drawable/bg_solid_layout_gray_radius_5" + android:gravity="center_vertical" + android:orientation="horizontal"> - + + - + - + +