diff --git a/app/src/main/java/ru/myitschool/work/ui/main/MainFragment.kt b/app/src/main/java/ru/myitschool/work/ui/main/MainFragment.kt index 3a80d74..821128c 100644 --- a/app/src/main/java/ru/myitschool/work/ui/main/MainFragment.kt +++ b/app/src/main/java/ru/myitschool/work/ui/main/MainFragment.kt @@ -42,7 +42,7 @@ class MainFragment: Fragment(R.layout.fragment_main) { } } binding.scan.setOnClickListener { - findNavController().navigate(QrResultDestination(user)) + findNavController().navigate(QrResultDestination(user, password)) findNavController().navigate(QrScanDestination) } binding.admin.setOnClickListener { diff --git a/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultDestination.kt b/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultDestination.kt index 32cceec..3d35faf 100644 --- a/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultDestination.kt +++ b/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultDestination.kt @@ -3,4 +3,4 @@ package ru.myitschool.work.ui.qr.result import kotlinx.serialization.Serializable @Serializable -data class QrResultDestination(val username: String) \ No newline at end of file +data class QrResultDestination(val username: String, val password: String) \ No newline at end of file diff --git a/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultFragment.kt b/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultFragment.kt index a6632ed..83476e2 100644 --- a/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultFragment.kt +++ b/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultFragment.kt @@ -24,13 +24,25 @@ class QrResultFragment: Fragment(R.layout.fragment_qr_result) { super.onViewCreated(view, savedInstanceState) _binding = FragmentQrResultBinding.bind(view) subscribe() - binding.close.setOnClickListener { findNavController().navigateUp() } + findNavController().currentBackStackEntry?.savedStateHandle?.let { val data = it.get(QrScanDestination.REQUEST_KEY)?.getString("key_qr") val username = findNavController().currentBackStackEntry?.toRoute()?.username username?.let { user -> - viewModel.tryParseData(user, data) + val password = + findNavController().currentBackStackEntry?.toRoute()?.password + password?.let { password -> + binding.close.setOnClickListener { + findNavController().navigate( + MainDestination( + user, + password + ) + ) + } + viewModel.tryParseData(user, data) + } } } } diff --git a/app/src/main/java/ru/myitschool/work/ui/qr/scan/QrScanFragment.kt b/app/src/main/java/ru/myitschool/work/ui/qr/scan/QrScanFragment.kt index a9ddaab..47df2d5 100644 --- a/app/src/main/java/ru/myitschool/work/ui/qr/scan/QrScanFragment.kt +++ b/app/src/main/java/ru/myitschool/work/ui/qr/scan/QrScanFragment.kt @@ -20,6 +20,8 @@ import com.google.mlkit.vision.barcode.BarcodeScanning import com.google.mlkit.vision.barcode.common.Barcode import ru.myitschool.work.R import ru.myitschool.work.databinding.FragmentQrScanBinding +import ru.myitschool.work.ui.admin.AdminDestination +import ru.myitschool.work.ui.qr.result.QrResultDestination import ru.myitschool.work.utils.collectWhenStarted import ru.myitschool.work.utils.visibleOrGone @@ -118,6 +120,12 @@ class QrScanFragment : Fragment(R.layout.fragment_qr_scan) { ?: requireActivity().onBackPressedDispatcher.onBackPressed() } + private fun goBack_for_cancel(user:String, password:String) { +// findNavControllerOrNull()?.popBackStack() +// ?: requireActivity().onBackPressedDispatcher.onBackPressed() + findNavController().navigate(QrResultDestination(user, password)) + } + private fun sendResult(bundle: Bundle) { setFragmentResult( QrScanDestination.REQUEST_KEY, diff --git a/app/src/main/res/layout/fragment_main.xml b/app/src/main/res/layout/fragment_main.xml index 54dac4b..9d4b9d4 100644 --- a/app/src/main/res/layout/fragment_main.xml +++ b/app/src/main/res/layout/fragment_main.xml @@ -15,52 +15,18 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" - app:layout_constraintVertical_bias="0.17000002" /> - - - - - - - -