From 7ec1ca2ae7a712bde97caa5e9fa60e05d3eee6e7 Mon Sep 17 00:00:00 2001 From: algosketch Date: Sun, 29 Dec 2024 13:26:42 +0900 Subject: [PATCH] =?UTF-8?q?fix=20:=20QR=20=EC=8A=A4=EC=BA=94=20=ED=8E=98?= =?UTF-8?q?=EC=9D=B4=EC=A7=80=20UI=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../presentation/screen/qr/QrScanScreen.kt | 37 +++++++++++++---- .../src/main/res/drawable/ic_camera_flip.xml | 41 +++++++++++++++++++ presentation/src/main/res/values/strings.xml | 3 +- 3 files changed, 72 insertions(+), 9 deletions(-) create mode 100644 presentation/src/main/res/drawable/ic_camera_flip.xml diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/qr/QrScanScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/qr/QrScanScreen.kt index 56343eee..0b191d1e 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/qr/QrScanScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/qr/QrScanScreen.kt @@ -3,7 +3,7 @@ package com.nexters.boolti.presentation.screen.qr import androidx.compose.foundation.background import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth @@ -38,10 +38,12 @@ import com.nexters.boolti.presentation.QrScanEvent import com.nexters.boolti.presentation.QrScanViewModel import com.nexters.boolti.presentation.R import com.nexters.boolti.presentation.component.BTDialog -import com.nexters.boolti.presentation.component.BtCloseableAppBar +import com.nexters.boolti.presentation.component.BtAppBar +import com.nexters.boolti.presentation.component.BtAppBarDefaults import com.nexters.boolti.presentation.component.CircleBgIcon import com.nexters.boolti.presentation.component.ToastSnackbarHost import com.nexters.boolti.presentation.theme.Error +import com.nexters.boolti.presentation.theme.Grey30 import com.nexters.boolti.presentation.theme.Grey50 import com.nexters.boolti.presentation.theme.Success import com.nexters.boolti.presentation.theme.Warning @@ -91,9 +93,20 @@ fun QrScanScreen( Scaffold( topBar = { - BtCloseableAppBar( + BtAppBar( title = uiState.showName, - onClickClose = onClickClose, + navigateButtons = { + BtAppBarDefaults.AppBarIconButton( + onClick = onClickClose, + iconRes = R.drawable.ic_arrow_back, + ) + }, + actionButtons = { + BtAppBarDefaults.AppBarIconButton( + onClick = {}, + iconRes = R.drawable.ic_camera_flip, + ) + } ) }, bottomBar = { @@ -136,12 +149,20 @@ fun QrScanScreen( @Composable private fun QrScanBottombar(onClick: () -> Unit) { - Box( + Column( modifier = Modifier .fillMaxWidth() .background(MaterialTheme.colorScheme.background), - contentAlignment = Alignment.Center, + horizontalAlignment = Alignment.CenterHorizontally, ) { + Text( + modifier = Modifier.padding(top = 20.dp), + text = stringResource(R.string.entry_code_notice), + textAlign = TextAlign.Center, + style = MaterialTheme.typography.bodySmall.copy( + color = Grey50, + ), + ) Row( modifier = Modifier .clickable(onClick = onClick) @@ -154,13 +175,13 @@ private fun QrScanBottombar(onClick: () -> Unit) { .size(20.dp) .padding(end = 4.dp), painter = painterResource(id = R.drawable.ic_book), - tint = Grey50, + tint = Grey30, contentDescription = stringResource(R.string.show_entry_code), ) Text( text = stringResource(id = R.string.show_entry_code), style = MaterialTheme.typography.bodySmall, - color = Grey50, + color = Grey30, ) } } diff --git a/presentation/src/main/res/drawable/ic_camera_flip.xml b/presentation/src/main/res/drawable/ic_camera_flip.xml new file mode 100644 index 00000000..63fbd7ef --- /dev/null +++ b/presentation/src/main/res/drawable/ic_camera_flip.xml @@ -0,0 +1,41 @@ + + + + + + + diff --git a/presentation/src/main/res/values/strings.xml b/presentation/src/main/res/values/strings.xml index beae2619..2256747a 100644 --- a/presentation/src/main/res/values/strings.xml +++ b/presentation/src/main/res/values/strings.xml @@ -241,7 +241,8 @@ 입장 코드는 주최자 계정의 마이 > QR 스캔 > 해당 공연 스캐너에서 확인 가능해요. 입장 코드를 입력해 주세요 올바른 입장 코드를 입력해 주세요 - 입장코드 보기 + 입장 코드 보기 + QR 코드가 인식되지 않을 경우 티켓 화면 하단의\n\'입장 코드 입력하기\'에 아래 입장 코드를 입력해 주세요. 코드 복사 식별 코드를 복사했어요