mirror of
https://github.com/jiayouzl/Bitcoin-Monitoring.git
synced 2025-11-25 19:37:50 +08:00
## 新增功能 🚀 - 🔗 新增 BNB (币安币) 和 SOL (Solana) 币种支持 - 💰 现在支持 5 种主流虚拟货币: BTC/ETH/BNB/SOL/DOGE - 🎨 每种币种都有专属的 SF Symbols 图标 ## 系统优化 🔧 - 🐛 修复配置初始化逻辑,确保首次运行显示正确的默认值 (BTC + 30秒) - 📝 改进调试日志输出,移除冗余的 UserDefaults 域信息 - 🏗️ 优化配置加载逻辑,使用更严格的键存在性检查 ## 文档更新 📚 - 📖 更新 README.md,添加多币种功能说明 - 📝 完善使用指南,包含币种切换操作 - 🔗 更新 API 文档,列出所有支持的交易对 - 🎯 新增配置文件位置说明 ## 技术改进 ⚡ - 🔧 AppSettings 配置管理逻辑重构 - 🎯 增强配置初始化的错误处理 - 📱 更新界面预览截图 - 🏷️ 优化代码注释和架构文档 默认配置: BTC/USDT | 30秒刷新间隔 | 支持用户自定义
68 lines
1.6 KiB
Swift
68 lines
1.6 KiB
Swift
//
|
||
// CryptoSymbol.swift
|
||
// Bitcoin Monitoring
|
||
//
|
||
// Created by Mark on 2025/10/29.
|
||
//
|
||
|
||
import Foundation
|
||
|
||
/// 支持的主流虚拟货币枚举
|
||
/// 提供API符号、展示名称和图标信息
|
||
enum CryptoSymbol: String, CaseIterable, Codable {
|
||
case btc = "BTCUSDT"
|
||
case eth = "ETHUSDT"
|
||
case bnb = "BNBUSDT"
|
||
case sol = "SOLUSDT"
|
||
case doge = "DOGEUSDT"
|
||
|
||
/// 用于展示的币种简称
|
||
var displayName: String {
|
||
switch self {
|
||
case .btc:
|
||
return "BTC"
|
||
case .eth:
|
||
return "ETH"
|
||
case .bnb:
|
||
return "BNB"
|
||
case .sol:
|
||
return "SOL"
|
||
case .doge:
|
||
return "DOGE"
|
||
}
|
||
}
|
||
|
||
/// 币安API使用的交易对符号
|
||
var apiSymbol: String {
|
||
return rawValue
|
||
}
|
||
|
||
/// 菜单中展示的交易对名称
|
||
var pairDisplayName: String {
|
||
return "\(displayName)/USDT"
|
||
}
|
||
|
||
/// 对应的SF Symbols图标名称
|
||
var systemImageName: String {
|
||
switch self {
|
||
case .btc:
|
||
return "bitcoinsign.circle.fill"
|
||
case .eth:
|
||
return "hexagon.fill"
|
||
case .bnb:
|
||
return "diamond.fill"
|
||
case .sol:
|
||
return "circle.hexagongrid.fill"
|
||
case .doge:
|
||
return "pawprint.circle.fill"
|
||
}
|
||
}
|
||
|
||
/// 菜单标题(带勾选标记)
|
||
/// - Parameter isCurrent: 是否为当前选中币种
|
||
/// - Returns: 菜单展示文本
|
||
func menuTitle(isCurrent: Bool) -> String {
|
||
return isCurrent ? "✓ \(pairDisplayName)" : " \(pairDisplayName)"
|
||
}
|
||
}
|