所有测试页面支持滑动,暗黑模式音标更清晰,结果页隐藏导航栏播放按钮
This commit is contained in:
@@ -20,6 +20,7 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate {
|
|||||||
navigation.navigationBar.prefersLargeTitles = true
|
navigation.navigationBar.prefersLargeTitles = true
|
||||||
window.rootViewController = navigation
|
window.rootViewController = navigation
|
||||||
window.makeKeyAndVisible()
|
window.makeKeyAndVisible()
|
||||||
|
window.backgroundColor = .systemBackground
|
||||||
self.window = window
|
self.window = window
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -93,6 +93,7 @@ final class QuizResultView: UIView {
|
|||||||
|
|
||||||
private func buildLayout() {
|
private func buildLayout() {
|
||||||
let scrollView = UIScrollView()
|
let scrollView = UIScrollView()
|
||||||
|
scrollView.alwaysBounceVertical = true
|
||||||
addSubview(scrollView)
|
addSubview(scrollView)
|
||||||
scrollView.translatesAutoresizingMaskIntoConstraints = false
|
scrollView.translatesAutoresizingMaskIntoConstraints = false
|
||||||
NSLayoutConstraint.activate([
|
NSLayoutConstraint.activate([
|
||||||
|
|||||||
@@ -52,6 +52,7 @@ final class QuizSetupViewController: UIViewController {
|
|||||||
contentStack.addArrangedSubview(countControl)
|
contentStack.addArrangedSubview(countControl)
|
||||||
|
|
||||||
let scrollView = UIScrollView()
|
let scrollView = UIScrollView()
|
||||||
|
scrollView.alwaysBounceVertical = true
|
||||||
scrollView.addSubview(contentStack)
|
scrollView.addSubview(contentStack)
|
||||||
contentStack.translatesAutoresizingMaskIntoConstraints = false
|
contentStack.translatesAutoresizingMaskIntoConstraints = false
|
||||||
NSLayoutConstraint.activate([
|
NSLayoutConstraint.activate([
|
||||||
|
|||||||
@@ -140,13 +140,24 @@ final class QuizViewController: UIViewController {
|
|||||||
let mainStack = UIStackView(arrangedSubviews: [headerStack, promptStack, inputStack, resultStack, UIView()])
|
let mainStack = UIStackView(arrangedSubviews: [headerStack, promptStack, inputStack, resultStack, UIView()])
|
||||||
mainStack.axis = .vertical
|
mainStack.axis = .vertical
|
||||||
mainStack.spacing = 24
|
mainStack.spacing = 24
|
||||||
view.addSubview(mainStack)
|
|
||||||
|
let scrollView = UIScrollView()
|
||||||
|
scrollView.alwaysBounceVertical = true
|
||||||
|
view.addSubview(scrollView)
|
||||||
|
scrollView.addSubview(mainStack)
|
||||||
|
scrollView.translatesAutoresizingMaskIntoConstraints = false
|
||||||
mainStack.translatesAutoresizingMaskIntoConstraints = false
|
mainStack.translatesAutoresizingMaskIntoConstraints = false
|
||||||
NSLayoutConstraint.activate([
|
NSLayoutConstraint.activate([
|
||||||
mainStack.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor, constant: 16),
|
scrollView.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor),
|
||||||
mainStack.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 16),
|
scrollView.leadingAnchor.constraint(equalTo: view.leadingAnchor),
|
||||||
mainStack.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: -16),
|
scrollView.trailingAnchor.constraint(equalTo: view.trailingAnchor),
|
||||||
mainStack.bottomAnchor.constraint(lessThanOrEqualTo: view.safeAreaLayoutGuide.bottomAnchor, constant: -16)
|
scrollView.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor),
|
||||||
|
|
||||||
|
mainStack.topAnchor.constraint(equalTo: scrollView.contentLayoutGuide.topAnchor, constant: 16),
|
||||||
|
mainStack.leadingAnchor.constraint(equalTo: scrollView.contentLayoutGuide.leadingAnchor, constant: 16),
|
||||||
|
mainStack.trailingAnchor.constraint(equalTo: scrollView.contentLayoutGuide.trailingAnchor, constant: -16),
|
||||||
|
mainStack.bottomAnchor.constraint(equalTo: scrollView.contentLayoutGuide.bottomAnchor, constant: -16),
|
||||||
|
mainStack.widthAnchor.constraint(equalTo: scrollView.frameLayoutGuide.widthAnchor, constant: -32),
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -386,6 +397,7 @@ final class QuizViewController: UIViewController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private func showQuizResult() {
|
private func showQuizResult() {
|
||||||
|
navigationItem.rightBarButtonItem = nil
|
||||||
progressView.setProgress(1, animated: true)
|
progressView.setProgress(1, animated: true)
|
||||||
let resultView = QuizResultView(
|
let resultView = QuizResultView(
|
||||||
total: questions.count,
|
total: questions.count,
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ final class WordCardCell: UITableViewCell {
|
|||||||
|
|
||||||
wordLabel.font = .preferredFont(forTextStyle: .headline)
|
wordLabel.font = .preferredFont(forTextStyle: .headline)
|
||||||
phoneticLabel.font = .preferredFont(forTextStyle: .caption1)
|
phoneticLabel.font = .preferredFont(forTextStyle: .caption1)
|
||||||
phoneticLabel.textColor = .tertiaryLabel
|
phoneticLabel.textColor = .secondaryLabel
|
||||||
meaningLabel.font = .preferredFont(forTextStyle: .subheadline)
|
meaningLabel.font = .preferredFont(forTextStyle: .subheadline)
|
||||||
meaningLabel.textColor = .secondaryLabel
|
meaningLabel.textColor = .secondaryLabel
|
||||||
|
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ final class WordDetailViewController: UIViewController {
|
|||||||
|
|
||||||
private func buildLayout() {
|
private func buildLayout() {
|
||||||
let scrollView = UIScrollView()
|
let scrollView = UIScrollView()
|
||||||
|
scrollView.alwaysBounceVertical = true
|
||||||
view.addSubview(scrollView)
|
view.addSubview(scrollView)
|
||||||
scrollView.translatesAutoresizingMaskIntoConstraints = false
|
scrollView.translatesAutoresizingMaskIntoConstraints = false
|
||||||
NSLayoutConstraint.activate([
|
NSLayoutConstraint.activate([
|
||||||
|
|||||||
Reference in New Issue
Block a user