qr-basic-admin-scrollview(mne ploho) stable version
This commit is contained in:
parent
5129a8b3f2
commit
3a791255e5
@ -42,7 +42,7 @@ class MainFragment: Fragment(R.layout.fragment_main) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
binding.scan.setOnClickListener {
|
binding.scan.setOnClickListener {
|
||||||
findNavController().navigate(QrResultDestination(user))
|
findNavController().navigate(QrResultDestination(user, password))
|
||||||
findNavController().navigate(QrScanDestination)
|
findNavController().navigate(QrScanDestination)
|
||||||
}
|
}
|
||||||
binding.admin.setOnClickListener {
|
binding.admin.setOnClickListener {
|
||||||
|
@ -3,4 +3,4 @@ package ru.myitschool.work.ui.qr.result
|
|||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
|
||||||
@Serializable
|
@Serializable
|
||||||
data class QrResultDestination(val username: String)
|
data class QrResultDestination(val username: String, val password: String)
|
@ -24,13 +24,25 @@ class QrResultFragment: Fragment(R.layout.fragment_qr_result) {
|
|||||||
super.onViewCreated(view, savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
_binding = FragmentQrResultBinding.bind(view)
|
_binding = FragmentQrResultBinding.bind(view)
|
||||||
subscribe()
|
subscribe()
|
||||||
binding.close.setOnClickListener { findNavController().navigateUp() }
|
|
||||||
|
|
||||||
findNavController().currentBackStackEntry?.savedStateHandle?.let {
|
findNavController().currentBackStackEntry?.savedStateHandle?.let {
|
||||||
val data = it.get<Bundle>(QrScanDestination.REQUEST_KEY)?.getString("key_qr")
|
val data = it.get<Bundle>(QrScanDestination.REQUEST_KEY)?.getString("key_qr")
|
||||||
val username = findNavController().currentBackStackEntry?.toRoute<MainDestination>()?.username
|
val username = findNavController().currentBackStackEntry?.toRoute<MainDestination>()?.username
|
||||||
username?.let { user ->
|
username?.let { user ->
|
||||||
viewModel.tryParseData(user, data)
|
val password =
|
||||||
|
findNavController().currentBackStackEntry?.toRoute<MainDestination>()?.password
|
||||||
|
password?.let { password ->
|
||||||
|
binding.close.setOnClickListener {
|
||||||
|
findNavController().navigate(
|
||||||
|
MainDestination(
|
||||||
|
user,
|
||||||
|
password
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
viewModel.tryParseData(user, data)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -20,6 +20,8 @@ import com.google.mlkit.vision.barcode.BarcodeScanning
|
|||||||
import com.google.mlkit.vision.barcode.common.Barcode
|
import com.google.mlkit.vision.barcode.common.Barcode
|
||||||
import ru.myitschool.work.R
|
import ru.myitschool.work.R
|
||||||
import ru.myitschool.work.databinding.FragmentQrScanBinding
|
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.collectWhenStarted
|
||||||
import ru.myitschool.work.utils.visibleOrGone
|
import ru.myitschool.work.utils.visibleOrGone
|
||||||
|
|
||||||
@ -118,6 +120,12 @@ class QrScanFragment : Fragment(R.layout.fragment_qr_scan) {
|
|||||||
?: requireActivity().onBackPressedDispatcher.onBackPressed()
|
?: 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) {
|
private fun sendResult(bundle: Bundle) {
|
||||||
setFragmentResult(
|
setFragmentResult(
|
||||||
QrScanDestination.REQUEST_KEY,
|
QrScanDestination.REQUEST_KEY,
|
||||||
|
@ -15,52 +15,18 @@
|
|||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
app:layout_constraintVertical_bias="0.17000002" />
|
app:layout_constraintVertical_bias="0.076" />
|
||||||
|
|
||||||
<ImageView
|
|
||||||
android:id="@+id/photo"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/fullname"
|
|
||||||
tools:srcCompat="@tools:sample/avatars" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/position"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="TextView"
|
|
||||||
android:textSize="20sp"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/photo" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/lastEntry"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="TextView"
|
|
||||||
android:textSize="20sp"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/position" />
|
|
||||||
|
|
||||||
<Button
|
|
||||||
android:id="@+id/logout"
|
|
||||||
android:layout_width="256dp"
|
|
||||||
android:layout_height="48dp"
|
|
||||||
android:text="LOGOUT"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/lastEntry" />
|
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/refresh"
|
android:id="@+id/refresh"
|
||||||
android:layout_width="256dp"
|
android:layout_width="256dp"
|
||||||
android:layout_height="48dp"
|
android:layout_height="48dp"
|
||||||
|
android:layout_margin="10sp"
|
||||||
|
android:layout_marginTop="4dp"
|
||||||
|
android:background="@drawable/entry"
|
||||||
android:text="Refresh"
|
android:text="Refresh"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="0.503"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/logout" />
|
app:layout_constraintTop_toBottomOf="@+id/logout" />
|
||||||
|
|
||||||
@ -68,45 +34,143 @@
|
|||||||
android:id="@+id/scan"
|
android:id="@+id/scan"
|
||||||
android:layout_width="256dp"
|
android:layout_width="256dp"
|
||||||
android:layout_height="48dp"
|
android:layout_height="48dp"
|
||||||
|
android:layout_margin="10sp"
|
||||||
|
|
||||||
|
android:layout_marginTop="16dp"
|
||||||
android:layout_weight="10"
|
android:layout_weight="10"
|
||||||
|
android:background="@drawable/entry"
|
||||||
android:text="Scan QR"
|
android:text="Scan QR"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="0.503"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/refresh" />
|
app:layout_constraintTop_toBottomOf="@+id/refresh" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/error"
|
android:id="@+id/position"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
|
||||||
|
android:layout_margin="10sp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:text="TextView"
|
||||||
|
android:textSize="20sp"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="0.501"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/photo" />
|
||||||
|
|
||||||
|
<Button
|
||||||
|
android:id="@+id/logout"
|
||||||
android:layout_width="256dp"
|
android:layout_width="256dp"
|
||||||
android:layout_height="48dp"
|
android:layout_height="48dp"
|
||||||
android:text="TextView"
|
|
||||||
android:textAlignment="center"
|
android:layout_margin="10sp"
|
||||||
|
android:layout_marginTop="4dp"
|
||||||
|
android:background="@drawable/entry"
|
||||||
|
android:text="LOGOUT"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="0.503"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/scan" />
|
app:layout_constraintTop_toBottomOf="@+id/lastEntry" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/lastEntry"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_margin="10sp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:text="TextView"
|
||||||
|
android:textSize="20sp"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="0.501"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/position" />
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/admin"
|
android:id="@+id/admin"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_margin="10sp"
|
||||||
|
android:background="@drawable/entry"
|
||||||
android:text="admin"
|
android:text="admin"
|
||||||
android:visibility="visible"
|
android:visibility="visible"
|
||||||
app:layout_constraintBottom_toBottomOf="@+id/photo"
|
app:layout_constraintBottom_toBottomOf="@+id/photo"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintHorizontal_bias="0.666"
|
app:layout_constraintHorizontal_bias="0.603"
|
||||||
app:layout_constraintStart_toEndOf="@+id/photo"
|
app:layout_constraintStart_toEndOf="@+id/photo"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/fullname"
|
app:layout_constraintTop_toBottomOf="@+id/fullname"
|
||||||
|
app:layout_constraintVertical_bias="0.489"
|
||||||
tools:visibility="visible" />
|
tools:visibility="visible" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/error"
|
||||||
|
android:layout_width="258dp"
|
||||||
|
android:layout_height="33dp"
|
||||||
|
android:layout_margin="10sp"
|
||||||
|
android:layout_marginTop="15dp"
|
||||||
|
|
||||||
|
android:text="TextView"
|
||||||
|
android:textAlignment="center"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="0.503"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/scan" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView"
|
||||||
|
android:layout_width="251dp"
|
||||||
|
android:layout_height="58dp"
|
||||||
|
android:layout_marginTop="28dp"
|
||||||
|
android:background="@drawable/entry"
|
||||||
|
android:paddingTop="15sp"
|
||||||
|
android:paddingBottom="15sp"
|
||||||
|
android:text="Ваши проходы"
|
||||||
|
android:textAlignment="center"
|
||||||
|
android:textColor="#FFFFFF"
|
||||||
|
android:textColorLink="#FFFFFF"
|
||||||
|
android:textSize="24sp"
|
||||||
|
android:textStyle="normal"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/error" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/photo"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_margin="10sp"
|
||||||
|
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="0.501"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/fullname"
|
||||||
|
tools:srcCompat="@tools:sample/avatars" />
|
||||||
|
|
||||||
<ScrollView
|
<ScrollView
|
||||||
android:layout_width="409dp"
|
android:layout_marginTop="20dp"
|
||||||
android:layout_height="337dp"
|
android:background="@color/app_background"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/error"
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
tools:layout_editor_absoluteX="1dp">
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/textView"
|
||||||
|
app:layout_constraintVertical_bias="1.0"
|
||||||
|
tools:context=".MainActivity" android:layout_height="0sp" android:layout_width="0sp">
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:orientation="vertical" />
|
android:layout_marginTop="10sp"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
|
android:id="@+id/recyclerView"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="240dp"
|
||||||
|
android:nestedScrollingEnabled="false"
|
||||||
|
android:overScrollMode="never" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
</ScrollView>
|
</ScrollView>
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
@ -7,4 +7,5 @@
|
|||||||
<color name="teal_700">#FF018786</color>
|
<color name="teal_700">#FF018786</color>
|
||||||
<color name="black">#FF000000</color>
|
<color name="black">#FF000000</color>
|
||||||
<color name="white">#FFFFFFFF</color>
|
<color name="white">#FFFFFFFF</color>
|
||||||
|
<color name="app_background">#B8DEDEDE</color>
|
||||||
</resources>
|
</resources>
|
Loading…
x
Reference in New Issue
Block a user