diff --git a/app/src/main/java/com/casic/br/operationsite/fragments/DeviceControllerFragment.kt b/app/src/main/java/com/casic/br/operationsite/fragments/DeviceControllerFragment.kt index a0f9438..1a9c186 100644 --- a/app/src/main/java/com/casic/br/operationsite/fragments/DeviceControllerFragment.kt +++ b/app/src/main/java/com/casic/br/operationsite/fragments/DeviceControllerFragment.kt @@ -2,6 +2,7 @@ import android.annotation.SuppressLint import android.os.Bundle +import android.util.Log import android.view.LayoutInflater import android.view.MotionEvent import android.view.View @@ -104,6 +105,12 @@ binding.currentSpeedView.text = "速度:${speed}" } + val selection = if (pointBeanDao.firstLinePoints.isEmpty()) { + 0 + } else { + pointBeanDao.firstLinePoints.size - 1 + } + binding.pointSpinner.setSelection(selection) binding.pointSpinner.onItemSelectedListener = object : AdapterView.OnItemSelectedListener { override fun onItemSelected( parent: AdapterView<*>?, view: View?, position: Int, id: Long @@ -133,6 +140,11 @@ handler.sendMessage(message) } "添加成功".show(requireContext()) + if (pointBeanDao.firstLinePoints.size == 8) { + Log.d(kTag, "initEvent: 点达到最大值,不能继续添加") + return@setOnClickListener + } + binding.pointSpinner.setSelection(pointBeanDao.firstLinePoints.size) } binding.startInspectionButton.setOnClickListener { @@ -145,7 +157,7 @@ lifecycleScope.launch(Dispatchers.IO) { CameraInspectionService.weakReferenceHandler?.let { it.sendEmptyMessage(LocaleConstant.START_INSPECTION_CODE) - delay(500) + delay(1000) it.sendEmptyMessage(LocaleConstant.SELECT_LINE_CODE) } } @@ -162,22 +174,38 @@ .setContext(requireContext()) .setOnDialogButtonClickListener(object : ManagePointDialog.OnDialogButtonClickListener { + override fun onCancelClick() { + val selection = if (pointBeanDao.firstLinePoints.isEmpty()) { + 0 + } else { + pointBeanDao.firstLinePoints.size - 1 + } + binding.pointSpinner.setSelection(selection) + } + override fun onConfirmClick() { - lifecycleScope.launch(Dispatchers.IO) { - CameraInspectionService.weakReferenceHandler?.let { - it.sendEmptyMessage(LocaleConstant.START_ADD_POINT_CONFIG_CODE) - delay(500) - it.sendEmptyMessage(LocaleConstant.SELECT_LINE_CODE) - //循环设置巡航点 - for (i in 1..beans.size) { - val message = it.obtainMessage() - message.what = LocaleConstant.SETUP_POINT_CODE - message.obj = i - it.sendMessageDelayed(message, 500) + if (pointBeanDao.firstLinePoints.isEmpty()) { + binding.pointSpinner.setSelection(0) + } else { + binding.pointSpinner.setSelection(pointBeanDao.firstLinePoints.size - 1) + lifecycleScope.launch(Dispatchers.IO) { + CameraInspectionService.weakReferenceHandler?.let { + it.sendEmptyMessage(LocaleConstant.START_ADD_POINT_CONFIG_CODE) + delay(1000) + it.sendEmptyMessage(LocaleConstant.SELECT_LINE_CODE) + delay(1000) + //循环设置巡航点 + for (i in 1..beans.size) { + val message = it.obtainMessage() + message.what = LocaleConstant.SETUP_POINT_CODE + message.obj = i + it.sendMessage(message) + delay(1000) + } + it.sendEmptyMessage(LocaleConstant.START_ADD_POINT_CONFIG_CODE) + delay(1000) + it.sendEmptyMessage(LocaleConstant.END_ADD_POINT_CONFIG_CODE) } - it.sendEmptyMessage(LocaleConstant.START_ADD_POINT_CONFIG_CODE) - delay(500) - it.sendEmptyMessage(LocaleConstant.END_ADD_POINT_CONFIG_CODE) } } } diff --git a/app/src/main/java/com/casic/br/operationsite/fragments/DeviceControllerFragment.kt b/app/src/main/java/com/casic/br/operationsite/fragments/DeviceControllerFragment.kt index a0f9438..1a9c186 100644 --- a/app/src/main/java/com/casic/br/operationsite/fragments/DeviceControllerFragment.kt +++ b/app/src/main/java/com/casic/br/operationsite/fragments/DeviceControllerFragment.kt @@ -2,6 +2,7 @@ import android.annotation.SuppressLint import android.os.Bundle +import android.util.Log import android.view.LayoutInflater import android.view.MotionEvent import android.view.View @@ -104,6 +105,12 @@ binding.currentSpeedView.text = "速度:${speed}" } + val selection = if (pointBeanDao.firstLinePoints.isEmpty()) { + 0 + } else { + pointBeanDao.firstLinePoints.size - 1 + } + binding.pointSpinner.setSelection(selection) binding.pointSpinner.onItemSelectedListener = object : AdapterView.OnItemSelectedListener { override fun onItemSelected( parent: AdapterView<*>?, view: View?, position: Int, id: Long @@ -133,6 +140,11 @@ handler.sendMessage(message) } "添加成功".show(requireContext()) + if (pointBeanDao.firstLinePoints.size == 8) { + Log.d(kTag, "initEvent: 点达到最大值,不能继续添加") + return@setOnClickListener + } + binding.pointSpinner.setSelection(pointBeanDao.firstLinePoints.size) } binding.startInspectionButton.setOnClickListener { @@ -145,7 +157,7 @@ lifecycleScope.launch(Dispatchers.IO) { CameraInspectionService.weakReferenceHandler?.let { it.sendEmptyMessage(LocaleConstant.START_INSPECTION_CODE) - delay(500) + delay(1000) it.sendEmptyMessage(LocaleConstant.SELECT_LINE_CODE) } } @@ -162,22 +174,38 @@ .setContext(requireContext()) .setOnDialogButtonClickListener(object : ManagePointDialog.OnDialogButtonClickListener { + override fun onCancelClick() { + val selection = if (pointBeanDao.firstLinePoints.isEmpty()) { + 0 + } else { + pointBeanDao.firstLinePoints.size - 1 + } + binding.pointSpinner.setSelection(selection) + } + override fun onConfirmClick() { - lifecycleScope.launch(Dispatchers.IO) { - CameraInspectionService.weakReferenceHandler?.let { - it.sendEmptyMessage(LocaleConstant.START_ADD_POINT_CONFIG_CODE) - delay(500) - it.sendEmptyMessage(LocaleConstant.SELECT_LINE_CODE) - //循环设置巡航点 - for (i in 1..beans.size) { - val message = it.obtainMessage() - message.what = LocaleConstant.SETUP_POINT_CODE - message.obj = i - it.sendMessageDelayed(message, 500) + if (pointBeanDao.firstLinePoints.isEmpty()) { + binding.pointSpinner.setSelection(0) + } else { + binding.pointSpinner.setSelection(pointBeanDao.firstLinePoints.size - 1) + lifecycleScope.launch(Dispatchers.IO) { + CameraInspectionService.weakReferenceHandler?.let { + it.sendEmptyMessage(LocaleConstant.START_ADD_POINT_CONFIG_CODE) + delay(1000) + it.sendEmptyMessage(LocaleConstant.SELECT_LINE_CODE) + delay(1000) + //循环设置巡航点 + for (i in 1..beans.size) { + val message = it.obtainMessage() + message.what = LocaleConstant.SETUP_POINT_CODE + message.obj = i + it.sendMessage(message) + delay(1000) + } + it.sendEmptyMessage(LocaleConstant.START_ADD_POINT_CONFIG_CODE) + delay(1000) + it.sendEmptyMessage(LocaleConstant.END_ADD_POINT_CONFIG_CODE) } - it.sendEmptyMessage(LocaleConstant.START_ADD_POINT_CONFIG_CODE) - delay(500) - it.sendEmptyMessage(LocaleConstant.END_ADD_POINT_CONFIG_CODE) } } } diff --git a/app/src/main/java/com/casic/br/operationsite/widgets/ManagePointDialog.kt b/app/src/main/java/com/casic/br/operationsite/widgets/ManagePointDialog.kt index d23ca7a..bf020f4 100644 --- a/app/src/main/java/com/casic/br/operationsite/widgets/ManagePointDialog.kt +++ b/app/src/main/java/com/casic/br/operationsite/widgets/ManagePointDialog.kt @@ -89,7 +89,10 @@ binding.textView.isSelected = true - binding.dialogCancelButton.setOnClickListener { dismiss() } + binding.dialogCancelButton.setOnClickListener { + listener.onCancelClick() + dismiss() + } binding.dialogConfirmButton.setOnClickListener { listener.onConfirmClick() @@ -99,5 +102,7 @@ interface OnDialogButtonClickListener { fun onConfirmClick() + + fun onCancelClick() } } \ No newline at end of file