Advance UIKit rewrite with AMap integration and core UI modules.
Integrate高德 SDK with simulator-safe build flags, add map views for operating area and punch points, refactor main tabs and key feature screens to UIKit with Diffable lists, and document Swift concurrency defaults in AGENTS.md. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@ -50,6 +50,7 @@ final class AppContentUnavailableView: UIView {
|
||||
actionsContainer.isHidden = actions.isEmpty
|
||||
}
|
||||
|
||||
/// 配置Views展示内容。
|
||||
private func configureViews(
|
||||
title: String,
|
||||
systemImage: String,
|
||||
|
||||
@ -9,6 +9,7 @@ import CoreGraphics
|
||||
|
||||
/// App 内通用尺寸定义。这里只放跨页面复用的字号和间距,具体业务页面的特殊尺寸仍留在页面本地。
|
||||
final class AppMetrics {
|
||||
/// 初始化实例。
|
||||
private init() {}
|
||||
|
||||
/// 字体尺寸实体,统一维护 App 内常用字号。
|
||||
|
||||
@ -119,6 +119,7 @@ fileprivate final class GlobalLoadingOverlayView: UIView {
|
||||
nil
|
||||
}
|
||||
|
||||
/// 配置Views展示内容。
|
||||
private func configureViews() {
|
||||
isUserInteractionEnabled = true
|
||||
accessibilityLabel = "加载中"
|
||||
@ -171,6 +172,7 @@ fileprivate final class GlobalLoadingOverlayView: UIView {
|
||||
])
|
||||
}
|
||||
|
||||
/// 刷新Presentation展示。
|
||||
private func refreshPresentation(animated: Bool) {
|
||||
let shouldShow = state.isVisible
|
||||
let updates = {
|
||||
@ -237,6 +239,7 @@ fileprivate final class GlobalLoadingOverlayView: UIView {
|
||||
|
||||
/// 从主包中加载 loading 动画资源,兼容 Resources 子目录和根目录。
|
||||
#if canImport(Lottie)
|
||||
/// 加载Animation数据。
|
||||
private static func loadAnimation() -> LottieAnimation? {
|
||||
if let animation = LottieAnimation.named("loading") {
|
||||
return animation
|
||||
@ -250,6 +253,7 @@ fileprivate final class GlobalLoadingOverlayView: UIView {
|
||||
return nil
|
||||
}
|
||||
#else
|
||||
/// 加载Animation数据。
|
||||
private static func loadAnimation() -> Any? {
|
||||
nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user