From 74067d82a43460d4f701ed22a8ad64cbc288b5dd Mon Sep 17 00:00:00 2001 From: nemanjabenkovic <138603822+nemanjabenkovic@users.noreply.github.com> Date: Tue, 9 Jan 2024 15:11:20 +0900 Subject: [PATCH] fix: Resolve Multiple-touch Bug (#481) --- .../TimerFinishViewController.swift | 28 +++++++++++++++---- 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/iOS/FlipMate/FlipMate/Presentation/TimerScene/ViewController/TimerFinishViewController.swift b/iOS/FlipMate/FlipMate/Presentation/TimerScene/ViewController/TimerFinishViewController.swift index 6cc42ba..bae4607 100644 --- a/iOS/FlipMate/FlipMate/Presentation/TimerScene/ViewController/TimerFinishViewController.swift +++ b/iOS/FlipMate/FlipMate/Presentation/TimerScene/ViewController/TimerFinishViewController.swift @@ -53,7 +53,7 @@ final class TimerFinishViewController: BaseViewController { return button }() - private lazy var cancleButton: UIButton = { + private lazy var cancelButton: UIButton = { let button = UIButton() button.setTitle(Constant.cancle, for: .normal) button.backgroundColor = FlipMateColor.darkBlue.color @@ -102,6 +102,10 @@ final class TimerFinishViewController: BaseViewController { } // MARK: - Life Cycle + override func viewDidAppear(_ animated: Bool) { + makeButtonsEnabled() + } + override func viewDidDisappear(_ animated: Bool) { deviceMotionManager.startDeviceMotion() } @@ -114,7 +118,7 @@ final class TimerFinishViewController: BaseViewController { $0.translatesAutoresizingMaskIntoConstraints = false } - [saveButton, cancleButton, titleLabel, learningTimeTitleLabel, learningTimeContentLabel].forEach { + [saveButton, cancelButton, titleLabel, learningTimeTitleLabel, learningTimeContentLabel].forEach { finishView.addSubview($0) $0.translatesAutoresizingMaskIntoConstraints = false } @@ -147,10 +151,10 @@ final class TimerFinishViewController: BaseViewController { saveButton.widthAnchor.constraint(equalTo: finishView.widthAnchor, multiplier: 0.5), saveButton.heightAnchor.constraint(equalTo: finishView.heightAnchor, multiplier: 0.2), - cancleButton.bottomAnchor.constraint(equalTo: finishView.bottomAnchor), - cancleButton.leadingAnchor.constraint(equalTo: finishView.leadingAnchor), - cancleButton.widthAnchor.constraint(equalTo: finishView.widthAnchor, multiplier: 0.5), - cancleButton.heightAnchor.constraint(equalTo: finishView.heightAnchor, multiplier: 0.2) + cancelButton.bottomAnchor.constraint(equalTo: finishView.bottomAnchor), + cancelButton.leadingAnchor.constraint(equalTo: finishView.leadingAnchor), + cancelButton.widthAnchor.constraint(equalTo: finishView.widthAnchor, multiplier: 0.5), + cancelButton.heightAnchor.constraint(equalTo: finishView.heightAnchor, multiplier: 0.2) ]) } @@ -168,10 +172,12 @@ final class TimerFinishViewController: BaseViewController { private extension TimerFinishViewController { @objc func saveButtonDidTapped() { viewModel.saveButtonDidTapped() + makeButtonsDisabled() } @objc func cancleButtonDidTapped() { viewModel.cancleButtonDidTapped() + makeButtonsDisabled() } } @@ -179,4 +185,14 @@ private extension TimerFinishViewController { func updateLearningTime(time: Int) { learningTimeContentLabel.text = time.secondsToStringTime() } + + func makeButtonsDisabled() { + cancelButton.isEnabled = false + saveButton.isEnabled = false + } + + func makeButtonsEnabled() { + cancelButton.isEnabled = true + saveButton.isEnabled = true + } }