改了level3色值
authorliangzhenying <867174124@qq.com>
Thu, 26 Mar 2026 06:45:02 +0000 (14:45 +0800)
committerliangzhenying <867174124@qq.com>
Thu, 26 Mar 2026 06:45:02 +0000 (14:45 +0800)
13 files changed:
ShenYin/ShenYin.xcodeproj/project.pbxproj
ShenYin/ShenYin/Channel/DeepChords/Channel/UI/JoyAiFunctionVC.swift
ShenYin/ShenYin/Channel/DeepChords/Channel/UI/JoyAiFunctionView.swift [new file with mode: 0644]
ShenYin/ShenYin/Channel/DeepChords/Channel/UI/JoyTabBC.swift
ShenYin/ShenYin/Channel/PLAYBOY/Channel/UI/PbAiFunctionVC.swift
ShenYin/ShenYin/Resource/colors/Colors+YL.swift
ShenYin/ShenYin/UI/Home/Device/HomeDeviceCell.swift
ShenYin/ShenYin/UI/Home/Root/CurrentDeviceView.swift
ShenYin/ShenYin/UI/Home/Root/HomeBottomView.swift [deleted file]
ShenYin/ShenYin/UI/Home/Root/HomeFunctionView.swift [deleted file]
ShenYin/ShenYin/UI/Home/Root/HomeHeadView.swift [deleted file]
ShenYin/ShenYin/UI/Home/Scan/AddDeviceVC.swift [deleted file]
ShenYin/ShenYin/UI/Home/Scan/BleScanVC.swift

index 9df6c43..a66c86e 100644 (file)
                                Channel/DeepChords/Channel/Config/CCDevice.swift,
                                Channel/DeepChords/Channel/Config/CCPage.swift,
                                Channel/DeepChords/Channel/UI/JoyAiFunctionVC.swift,
+                               Channel/DeepChords/Channel/UI/JoyAiFunctionView.swift,
                                Channel/DeepChords/Channel/UI/JoyCallingRecordVC.swift,
                                Channel/DeepChords/Channel/UI/JoyChatVC.swift,
                                Channel/DeepChords/Channel/UI/JoyChinese2EnglishVC.swift,
index c870bc7..76e579c 100644 (file)
@@ -8,10 +8,10 @@
 import UIKit
 
 class JoyAiFunctionVC:BaseVC{
-    let bgView = UIScrollView()
-    let headerView = HomeHeadView()
-    let functionView = HomeFunctionView()
-    let bottomView = HomeBottomView()
+    private let bgView = UIScrollView()
+    private let headerView = JoyAiFuntionHeadView()
+    private let functionView = JoyAiFuntionView()
+    private let bottomView = JoyAiFuntionBottomView()
     
     private var device: HomeDeviceModel
     init(device model: HomeDeviceModel) {
diff --git a/ShenYin/ShenYin/Channel/DeepChords/Channel/UI/JoyAiFunctionView.swift b/ShenYin/ShenYin/Channel/DeepChords/Channel/UI/JoyAiFunctionView.swift
new file mode 100644 (file)
index 0000000..bc2a45f
--- /dev/null
@@ -0,0 +1,304 @@
+//
+//  Home.swift
+//  ShenYin
+//
+//  Created by liangshi on 2025/8/6.
+//
+
+import UIKit
+class JoyAiFuntionHeadView: BaseView {
+    let icon = CurrentDeviceView()
+    let chatView = ItemView()
+    let subTitleView = ItemView()
+    
+    override func setupViews() {
+        addSubviews([icon,chatView,subTitleView])
+        
+        chatView.do { v in
+            v.titleLabel.text = "AI" + "智能对话".l10n
+            v.valueLabel.text = "AI" + "伙伴,随叫随到".l10n
+            v.tipsIcon.image = UIImage(named: "home_chat")
+        }
+        subTitleView.do { v in
+            v.titleLabel.text = "字幕翻译".l10n
+            v.valueLabel.text = "看视频,实时字幕翻译".l10n
+            v.tipsIcon.image = UIImage(named: "home_subtitle")
+        }
+    }
+    override func setupLayout() {
+        icon.snp.makeConstraints { make in
+            make.top.width.left.equalToSuperview()
+        }
+        if true {
+            chatView.snp.remakeConstraints { make in
+                make.left.right.equalToSuperview().inset(15)
+                make.top.equalTo(icon.snp.bottom).offset(20)
+                make.height.equalTo(116)
+            }
+            subTitleView.snp.remakeConstraints { make in
+                make.left.right.equalToSuperview().inset(15)
+                make.top.equalTo(chatView.snp.bottom).offset(10)
+                make.bottom.equalToSuperview()
+                make.height.equalTo(chatView)
+            }
+            subTitleView.isHidden = false
+        }
+        else{
+            chatView.snp.remakeConstraints { make in
+                make.left.right.equalToSuperview().inset(15)
+                make.top.equalTo(icon.snp.bottom).offset(20)
+                make.height.equalTo(116)
+                make.bottom.equalToSuperview()
+            }
+            subTitleView.isHidden = true
+        }
+    }
+    
+    class ItemView: BaseView {
+        let bottonView = UIView()
+        let tipsIcon = UIImageView()
+        let titleLabel = UILabel()
+        let valueLabel = UILabel()
+        let arrowIcon = UIImageView()
+        
+        override func setupViews() {
+            addSubviews([titleLabel,valueLabel,tipsIcon,arrowIcon])
+            
+            backgroundColor = .rgb(0xfafafa)
+            yc.setCornerRadius(22)
+            
+            titleLabel.do { (v) in
+                v.textColor = .color(.level1)
+                v.font = .bold(18)
+                
+            }
+            valueLabel.do { (v) in
+                v.textColor = .color(.level3)
+                v.font = .regular(14)
+            }
+            arrowIcon.image = UIImage(named: "arrow_2")
+        }
+        
+        override func setupLayout() {
+            titleLabel.snp.makeConstraints { make in
+                make.left.equalToSuperview().inset(15)
+                make.top.equalTo(35)
+            }
+            valueLabel.snp.makeConstraints { make in
+                make.left.equalTo(titleLabel)
+                make.top.equalTo(65)
+            }
+            arrowIcon.snp.makeConstraints { make in
+                make.width.equalTo(7)
+                make.height.equalTo(13)
+                make.centerY.equalTo(valueLabel)
+                make.left.equalTo(valueLabel.snp.right).offset(2)
+            }
+            tipsIcon.snp.makeConstraints { make in
+                make.size.equalTo(50)
+                make.right.equalToSuperview().inset(24)
+                make.top.equalToSuperview().inset(33)
+            }
+            
+        }
+    }
+}
+
+
+
+class JoyAiFuntionView: BaseView {
+    let list:[JoyAiFuntionCellType] = [.fileRecord,.callRecord,.chinese2English,.recordTranslate,.dialogTranslate,.textTranslate]
+    override func setupViews() {
+//        backgroundColor = .yellow
+        
+        let w = (kScreenWid - 45)/2.0
+        let h = 128.0
+        var x = 15.0
+        var y = 0.0
+        for (index, value) in list.enumerated() {
+            let view = HomeCell()
+            addSubview(view)
+            
+            view.type = value
+            x = Double(index%2)*w + Double(index%2 + 1)*15.0
+            y = Double(index/2)*h + Double(index/2)*15.0
+            view.snp.makeConstraints { make in
+                make.width.equalTo(w)
+                make.height.equalTo(h)
+                make.left.equalToSuperview().inset(x)
+                make.top.equalToSuperview().inset(y)
+                if index == list.count - 1 {
+                    make.bottom.equalToSuperview()
+                }
+            }
+        }
+    }
+    var enable:Bool = false{
+        didSet{
+            for item in self.subviews{
+                if let view = item as? HomeCell  {
+                    view.enable = enable
+                }
+            }
+        }
+    }
+
+}
+fileprivate class HomeCell: BaseView {
+    let bgView = UIView()
+    let icon = UIImageView()
+    let titleLabel = UILabel()
+    let valueLabel = UILabel()
+    let arrowIcon = UIImageView()
+    var type = JoyAiFuntionCellType.callRecord{
+        didSet{
+            titleLabel.text = type.title
+            valueLabel.text = type.subTitle
+            icon.image = UIImage(named: type.icon)
+        }
+    }
+    var enable:Bool = false
+    
+    override func setupViews() {
+        addSubview(bgView)
+        bgView.addSubviews([titleLabel,icon,valueLabel,arrowIcon])
+        bgView.do { v in
+            v.backgroundColor = .rgb(0xfafafa)
+            v.yc.setCornerRadius(22)
+        }
+        icon.do { v in
+//            v.backgroundColor = .lightGray
+        }
+        titleLabel.do { (v) in
+            v.textColor = .color(.level1)
+            v.font = .bold(14)
+            v.numberOfLines = 2
+//            v.backgroundColor = .blue
+            v.adjustsFontSizeToFitWidth = true
+        }
+        valueLabel.do { (v) in
+            v.textColor = .color(.level3)
+            v.font = .regular(10)
+            v.numberOfLines = 2
+//            v.backgroundColor = .red
+            v.adjustsFontSizeToFitWidth = true
+        }
+        arrowIcon.image = UIImage(named: "arrow_2")
+        yc.addTap(target: self, action: #selector(tapAction))
+    }
+    
+    override func setupLayout() {
+        bgView.snp.makeConstraints { make in
+            make.left.right.top.bottom.equalToSuperview()
+        }
+        icon.snp.makeConstraints { (m) in
+            m.width.equalTo(32)
+            m.height.equalTo(32)
+            m.left.equalToSuperview().inset(15)
+            m.top.equalToSuperview().inset(15)
+        }
+        titleLabel.snp.makeConstraints { (m) in
+            m.top.equalToSuperview().inset(60)
+            m.left.equalToSuperview().offset(15)
+            m.right.lessThanOrEqualTo(arrowIcon.snp.left)
+            m.height.equalTo(30)
+        }
+        valueLabel.snp.makeConstraints { (m) in
+            m.top.equalToSuperview().inset(90)
+            m.left.equalTo(titleLabel)
+            m.right.lessThanOrEqualTo(arrowIcon.snp.left)
+        }
+        arrowIcon.snp.makeConstraints { make in
+            make.width.equalTo(7)
+            make.height.equalTo(13)
+            make.bottom.equalToSuperview().inset(25)
+            make.right.equalToSuperview().inset(14)
+        }
+    }
+    @objc func tapAction(){
+        if !enable{
+            return
+        }
+        switch type {
+        case .fileRecord:
+            CCPage.gotoFieldRecord()
+        case .callRecord:
+            CCPage.gotoCallRecord()
+        case .chinese2English:
+            CCPage.gotoChinese2Enlgish()
+        case .recordTranslate:
+            CCPage.gotoTcty()
+        case .dialogTranslate:
+            CCPage.gotoDialogTranslate()
+        case .textTranslate:
+            App.shared.goToPage(TextTranlateVC())
+        case .recordHistory:
+            return
+        }
+    }
+}
+
+
+class JoyAiFuntionBottomView: BaseView {
+    let bottonView = UIView()
+    let tipsIcon = UIImageView()
+    let titleLabel = UILabel()
+    let valueLabel = UILabel()
+    let arrowIcon = UIImageView()
+    override func setupViews() {
+        addSubviews([bottonView])
+        bottonView.addSubviews([titleLabel,valueLabel,tipsIcon,arrowIcon])
+        //        backgroundColor = .red
+        bottonView.do { v in
+            v.backgroundColor = .rgb(0xfafafa)
+            v.yc.setCornerRadius(22)
+        }
+        tipsIcon.do { v in
+            //            v.backgroundColor = .lightGray
+            v.image = UIImage(named: "home_recordHistory")
+        }
+        titleLabel.do { (v) in
+            v.textColor = .color(.level1)
+            v.font = .bold(18)
+            v.text = "历史记录".l10n
+        }
+        valueLabel.do { (v) in
+            v.textColor = .color(.level3)
+            v.font = .regular(14)
+            v.text = "所有记录,一目了然".l10n
+        }
+        arrowIcon.image = UIImage(named: "arrow_2")
+        yc.addTap(target: self, action: #selector(tapAction))
+    }
+    
+    override func setupLayout() {
+        bottonView.snp.makeConstraints { make in
+            make.left.right.equalToSuperview().inset(15)
+            make.top.equalToSuperview()
+            make.bottom.equalToSuperview()
+            make.height.equalTo(116)
+        }
+        titleLabel.snp.makeConstraints { make in
+            make.left.equalToSuperview().inset(15)
+            make.top.equalTo(34)
+        }
+        valueLabel.snp.makeConstraints { make in
+            make.left.equalTo(titleLabel)
+            make.top.equalTo(65)
+        }
+        arrowIcon.snp.makeConstraints { make in
+            make.width.equalTo(7)
+            make.height.equalTo(13)
+            make.centerY.equalTo(valueLabel)
+            make.left.equalTo(valueLabel.snp.right).offset(2)
+        }
+        tipsIcon.snp.makeConstraints { make in
+            make.size.equalTo(50)
+            make.right.equalToSuperview().inset(24)
+            make.top.equalToSuperview().inset(33)
+        }
+    }
+    @objc func tapAction(){
+        App.shared.goToPage(HistoryRecordVC())
+    }
+}
index 11873e4..acd16d0 100644 (file)
@@ -57,7 +57,7 @@ class BaseTC:UITabBarController{
             
             let appearance = UITabBarAppearance()
             appearance.configureWithDefaultBackground()
-            appearance.stackedLayoutAppearance.normal.titleTextAttributes = [NSAttributedString.Key.foregroundColor:UIColor.rgb(0x8D8D8D)]
+        appearance.stackedLayoutAppearance.normal.titleTextAttributes = [NSAttributedString.Key.foregroundColor:UIColor.color(.level3)]
             appearance.stackedLayoutAppearance.selected.titleTextAttributes = [NSAttributedString.Key.foregroundColor:UIColor.color(.level1)]
             self.tabBar.standardAppearance = appearance
             self.tabBar.backgroundColor = .white
index b1e74f2..7dc174f 100644 (file)
@@ -80,7 +80,7 @@ class PbAiFunctionVC:BaseVC{
             CCPage.gotoChat()
         }
     }
-    func tapFunctionAction(_ type:HomeCellType){
+    func tapFunctionAction(_ type:JoyAiFuntionCellType){
             switch type {
             case .fileRecord:
                 CCPage.gotoFieldRecord()
@@ -144,7 +144,7 @@ fileprivate class AiFunctionHeadView: BaseView {
             v.text = "AI" + "智能对话".l10n
         }
         valueLabel.do { (v) in
-            v.textColor = .rgb(0x8d8d8d)
+            v.textColor = .color(.level3)
             v.font = .regular(12)
             v.text = "AI" + "伙伴,随叫随到".l10n
         }
@@ -182,7 +182,7 @@ fileprivate class AiFunctionHeadView: BaseView {
     }
 }
 fileprivate class AiFunctionView: BaseView {
-    let list:[HomeCellType] = [.fileRecord,.callRecord,.recordTranslate,.dialogTranslate,.textTranslate,.recordHistory]
+    let list:[JoyAiFuntionCellType] = [.fileRecord,.callRecord,.recordTranslate,.dialogTranslate,.textTranslate,.recordHistory]
     var enable:Bool = false{
         didSet{
             for item in self.subviews{
@@ -195,7 +195,7 @@ fileprivate class AiFunctionView: BaseView {
             }
         }
     }
-    var tapCallback:((HomeCellType)->Void)?
+    var tapCallback:((JoyAiFuntionCellType)->Void)?
     
     override func setupViews() {
         let h = 64.0
@@ -231,7 +231,7 @@ fileprivate class HomeCell: BaseView {
     let titleLabel = UILabel()
     let valueLabel = UILabel()
     let arrowIcon = UIImageView()
-    var type = HomeCellType.callRecord{
+    var type = JoyAiFuntionCellType.callRecord{
         didSet{
             titleLabel.text = type.title
             valueLabel.text = type.subTitle
@@ -265,7 +265,7 @@ fileprivate class HomeCell: BaseView {
             v.numberOfLines = 2
         }
         valueLabel.do { (v) in
-            v.textColor = .rgb(0x8d8d8d)
+            v.textColor = .color(.level3)
             v.font = .regular(10)
             v.numberOfLines = 2
         }
index 2050663..8689f71 100644 (file)
@@ -20,13 +20,13 @@ public enum YLColor {
     case level2
     ///  三级标题
     case level3
-
+    /// 占位符
     case placeholder
-
+    /// 分割线
     case separateLine
-    
+    /// cell内容
     case cellBg
-    
+    /// 运动
     case sport
 }
 
@@ -45,7 +45,7 @@ extension YLColor: ColorRGBProviderProtocol {
             case .level2:
                 return 0x666666
             case .level3:
-                return 0x999999
+                return 0x8d8d8d
             case .placeholder:
                 return 0xcccccc
             case .separateLine:
@@ -69,7 +69,7 @@ extension YLColor: ColorRGBProviderProtocol {
             case .level2:
                 return 0x999999
             case .level3:
-                return 0xcccccc
+                return 0x8d8d8d
             case .placeholder:
                 return 0x666666
             case .separateLine:
index fc05912..926e2b9 100644 (file)
@@ -59,7 +59,7 @@ class HomeDeviceCell: BaseCollectionViewCell {
             v.adjustsFontSizeToFitWidth = true
         }
         valueLabel.do { (v) in
-            v.textColor = .rgb(0x8d8d8d)
+            v.textColor = .color(.level3)
             v.font = .regular(12)
         }
         let longTap = UILongPressGestureRecognizer(target: self, action: #selector(handleLongPress(_:)))
index 24e302e..ef2ddff 100644 (file)
@@ -5,6 +5,73 @@
 //  Created by liangshi on 2025/8/12.
 //
 
+public enum JoyAiFuntionCellType: Int {
+    case fileRecord
+    case callRecord
+    case chinese2English
+    case recordTranslate
+    case dialogTranslate
+    case textTranslate
+    case recordHistory
+    
+    
+    var title:String{
+        switch self {
+        case .fileRecord:
+            return "现场录音".l10n
+        case .callRecord:
+            return "通话录音".l10n
+        case .chinese2English:
+            return "中英互译".l10n
+        case .recordTranslate:
+            return "同传听译".l10n
+        case .dialogTranslate:
+            return "对话翻译".l10n
+        case .textTranslate:
+            return "文本翻译".l10n
+        case .recordHistory:
+            return "历史记录".l10n
+        }
+    }
+    var subTitle:String{
+        switch self {
+        case .fileRecord:
+            return "随时随地,一键开录".l10n
+        case .callRecord:
+            return "一键录音,翻译转写".l10n
+        case .chinese2English:
+            return "实时对话,即时互译".l10n
+        case .recordTranslate:
+            return "一机一耳,面对面畅聊".l10n
+        case .dialogTranslate:
+            return "会议讲座,同步翻译".l10n
+        case .textTranslate:
+            return "即打即译,多语支持".l10n
+        case .recordHistory:
+            return "所有记录,一目了然".l10n
+        }
+    }
+    var icon:String{
+        switch self {
+        case .fileRecord:
+            return "home_fileRecord"
+        case .callRecord:
+            return "home_callRecord"
+        case .chinese2English:
+            return "home_chinese2English"
+        case .recordTranslate:
+            return "home_recordTranslate"
+        case .dialogTranslate:
+            return "home_dialogTranslate"
+        case .textTranslate:
+            return "home_textTranslate"
+        case .recordHistory:
+            return "home_history"
+        }
+    }
+}
+
+
 class CurrentDeviceView: BaseView {
     let connetedView = UIImageView(image: UIImage(named: "device_conneted_bg"))
     let imageView = UIImageView()
diff --git a/ShenYin/ShenYin/UI/Home/Root/HomeBottomView.swift b/ShenYin/ShenYin/UI/Home/Root/HomeBottomView.swift
deleted file mode 100644 (file)
index 0ed1a47..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-//
-//  HomeBottomView.swift
-//  ShenYin
-//
-//  Created by liangshi on 2025/8/6.
-//
-
-class HomeBottomView: BaseView {
-    let bottonView = UIView()
-    let tipsIcon = UIImageView()
-    let titleLabel = UILabel()
-    let valueLabel = UILabel()
-    let arrowIcon = UIImageView()
-    override func setupViews() {
-        addSubviews([bottonView])
-        bottonView.addSubviews([titleLabel,valueLabel,tipsIcon,arrowIcon])
-//        backgroundColor = .red
-        bottonView.do { v in
-            v.backgroundColor = .rgb(0xfafafa)
-            v.yc.setCornerRadius(22)
-        }
-        tipsIcon.do { v in
-//            v.backgroundColor = .lightGray
-            v.image = UIImage(named: "home_recordHistory")
-        }
-        titleLabel.do { (v) in
-            v.textColor = .color(.level1)
-            v.font = .bold(18)
-            v.text = "历史记录".l10n
-        }
-        valueLabel.do { (v) in
-            v.textColor = .rgb(0x8d8d8d)
-            v.font = .regular(14)
-            v.text = "所有记录,一目了然".l10n
-        }
-        arrowIcon.image = UIImage(named: "arrow_2")
-        yc.addTap(target: self, action: #selector(tapAction))
-    }
-    
-    override func setupLayout() {
-        bottonView.snp.makeConstraints { make in
-            make.left.right.equalToSuperview().inset(15)
-            make.top.equalToSuperview()
-            make.bottom.equalToSuperview()
-            make.height.equalTo(116)
-        }
-        titleLabel.snp.makeConstraints { make in
-            make.left.equalToSuperview().inset(15)
-            make.top.equalTo(34)
-        }
-        valueLabel.snp.makeConstraints { make in
-            make.left.equalTo(titleLabel)
-            make.top.equalTo(65)
-        }
-        arrowIcon.snp.makeConstraints { make in
-            make.width.equalTo(7)
-            make.height.equalTo(13)
-            make.centerY.equalTo(valueLabel)
-            make.left.equalTo(valueLabel.snp.right).offset(2)
-        }
-        tipsIcon.snp.makeConstraints { make in
-            make.size.equalTo(50)
-            make.right.equalToSuperview().inset(24)
-            make.top.equalToSuperview().inset(33)
-        }
-    }
-    @objc func tapAction(){
-        App.shared.goToPage(HistoryRecordVC())
-    }
-}
-
diff --git a/ShenYin/ShenYin/UI/Home/Root/HomeFunctionView.swift b/ShenYin/ShenYin/UI/Home/Root/HomeFunctionView.swift
deleted file mode 100644 (file)
index 2ae67bc..0000000
+++ /dev/null
@@ -1,207 +0,0 @@
-//
-//  Home.swift
-//  ShenYin
-//
-//  Created by liangshi on 2025/8/6.
-//
-
-import UIKit
-
-public enum HomeCellType: Int {
-    case fileRecord
-    case callRecord
-    case chinese2English
-    case recordTranslate
-    case dialogTranslate
-    case textTranslate
-    case recordHistory
-
-    
-    var title:String{
-        switch self {
-        case .fileRecord:
-            return "现场录音".l10n
-        case .callRecord:
-            return "通话录音".l10n
-        case .chinese2English:
-            return "中英互译".l10n
-        case .recordTranslate:
-            return "同传听译".l10n
-        case .dialogTranslate:
-            return "对话翻译".l10n
-        case .textTranslate:
-            return "文本翻译".l10n
-        case .recordHistory:
-            return "历史记录".l10n
-        }
-    }
-    var subTitle:String{
-        switch self {
-        case .fileRecord:
-            return "随时随地,一键开录".l10n
-        case .callRecord:
-            return "一键录音,翻译转写".l10n
-        case .chinese2English:
-            return "实时对话,即时互译".l10n
-        case .recordTranslate:
-            return "一机一耳,面对面畅聊".l10n
-        case .dialogTranslate:
-            return "会议讲座,同步翻译".l10n
-        case .textTranslate:
-            return "即打即译,多语支持".l10n
-        case .recordHistory:
-            return "所有记录,一目了然".l10n
-        }
-    }
-    var icon:String{
-        switch self {
-        case .fileRecord:
-            return "home_fileRecord"
-        case .callRecord:
-            return "home_callRecord"
-        case .chinese2English:
-            return "home_chinese2English"
-        case .recordTranslate:
-            return "home_recordTranslate"
-        case .dialogTranslate:
-            return "home_dialogTranslate"
-        case .textTranslate:
-            return "home_textTranslate"
-        case .recordHistory:
-            return "home_history"
-        }
-    }
-}
-
-
-class HomeFunctionView: BaseView {
-    let list:[HomeCellType] = [.fileRecord,.callRecord,.chinese2English,.recordTranslate,.dialogTranslate,.textTranslate]
-    override func setupViews() {
-//        backgroundColor = .yellow
-        
-        let w = (kScreenWid - 45)/2.0
-        let h = 128.0
-        var x = 15.0
-        var y = 0.0
-        for (index, value) in list.enumerated() {
-            let view = HomeCell()
-            addSubview(view)
-            
-            view.type = value
-            x = Double(index%2)*w + Double(index%2 + 1)*15.0
-            y = Double(index/2)*h + Double(index/2)*15.0
-            view.snp.makeConstraints { make in
-                make.width.equalTo(w)
-                make.height.equalTo(h)
-                make.left.equalToSuperview().inset(x)
-                make.top.equalToSuperview().inset(y)
-                if index == list.count - 1 {
-                    make.bottom.equalToSuperview()
-                }
-            }
-        }
-    }
-    var enable:Bool = false{
-        didSet{
-            for item in self.subviews{
-                if let view = item as? HomeCell  {
-                    view.enable = enable
-                }
-            }
-        }
-    }
-
-}
-fileprivate class HomeCell: BaseView {
-    let bgView = UIView()
-    let icon = UIImageView()
-    let titleLabel = UILabel()
-    let valueLabel = UILabel()
-    let arrowIcon = UIImageView()
-    var type = HomeCellType.callRecord{
-        didSet{
-            titleLabel.text = type.title
-            valueLabel.text = type.subTitle
-            icon.image = UIImage(named: type.icon)
-        }
-    }
-    var enable:Bool = false
-    
-    override func setupViews() {
-        addSubview(bgView)
-        bgView.addSubviews([titleLabel,icon,valueLabel,arrowIcon])
-        bgView.do { v in
-            v.backgroundColor = .rgb(0xfafafa)
-            v.yc.setCornerRadius(22)
-        }
-        icon.do { v in
-//            v.backgroundColor = .lightGray
-        }
-        titleLabel.do { (v) in
-            v.textColor = .color(.level1)
-            v.font = .bold(14)
-            v.numberOfLines = 2
-//            v.backgroundColor = .blue
-            v.adjustsFontSizeToFitWidth = true
-        }
-        valueLabel.do { (v) in
-            v.textColor = .rgb(0x8d8d8d)
-            v.font = .regular(10)
-            v.numberOfLines = 2
-//            v.backgroundColor = .red
-            v.adjustsFontSizeToFitWidth = true
-        }
-        arrowIcon.image = UIImage(named: "arrow_2")
-        yc.addTap(target: self, action: #selector(tapAction))
-    }
-    
-    override func setupLayout() {
-        bgView.snp.makeConstraints { make in
-            make.left.right.top.bottom.equalToSuperview()
-        }
-        icon.snp.makeConstraints { (m) in
-            m.width.equalTo(32)
-            m.height.equalTo(32)
-            m.left.equalToSuperview().inset(15)
-            m.top.equalToSuperview().inset(15)
-        }
-        titleLabel.snp.makeConstraints { (m) in
-            m.top.equalToSuperview().inset(60)
-            m.left.equalToSuperview().offset(15)
-            m.right.lessThanOrEqualTo(arrowIcon.snp.left)
-            m.height.equalTo(30)
-        }
-        valueLabel.snp.makeConstraints { (m) in
-            m.top.equalToSuperview().inset(90)
-            m.left.equalTo(titleLabel)
-            m.right.lessThanOrEqualTo(arrowIcon.snp.left)
-        }
-        arrowIcon.snp.makeConstraints { make in
-            make.width.equalTo(7)
-            make.height.equalTo(13)
-            make.bottom.equalToSuperview().inset(25)
-            make.right.equalToSuperview().inset(14)
-        }
-    }
-    @objc func tapAction(){
-        if !enable{
-            return
-        }
-        switch type {
-        case .fileRecord:
-            CCPage.gotoFieldRecord()
-        case .callRecord:
-            CCPage.gotoCallRecord()
-        case .chinese2English:
-            CCPage.gotoChinese2Enlgish()
-        case .recordTranslate:
-            CCPage.gotoTcty()
-        case .dialogTranslate:
-            CCPage.gotoDialogTranslate()
-        case .textTranslate:
-            App.shared.goToPage(TextTranlateVC())
-        case .recordHistory:
-            return
-        }
-    }
-}
diff --git a/ShenYin/ShenYin/UI/Home/Root/HomeHeadView.swift b/ShenYin/ShenYin/UI/Home/Root/HomeHeadView.swift
deleted file mode 100644 (file)
index 0764340..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-//
-//  HomeheadView.swift
-//  ShenYin
-//
-//  Created by liangshi on 2025/8/6.
-//
-
-
-class HomeHeadView: BaseView {
-    let icon = CurrentDeviceView()
-    let chatView = ItemView()
-    let subTitleView = ItemView()
-    
-    override func setupViews() {
-        addSubviews([icon,chatView,subTitleView])
-        
-        chatView.do { v in
-            v.titleLabel.text = "AI" + "智能对话".l10n
-            v.valueLabel.text = "AI" + "伙伴,随叫随到".l10n
-            v.tipsIcon.image = UIImage(named: "home_chat")
-        }
-        subTitleView.do { v in
-            v.titleLabel.text = "字幕翻译".l10n
-            v.valueLabel.text = "看视频,实时字幕翻译".l10n
-            v.tipsIcon.image = UIImage(named: "home_subtitle")
-        }
-    }
-    override func setupLayout() {
-        icon.snp.makeConstraints { make in
-            make.top.width.left.equalToSuperview()
-        }
-        if true {
-            chatView.snp.remakeConstraints { make in
-                make.left.right.equalToSuperview().inset(15)
-                make.top.equalTo(icon.snp.bottom).offset(20)
-                make.height.equalTo(116)
-            }
-            subTitleView.snp.remakeConstraints { make in
-                make.left.right.equalToSuperview().inset(15)
-                make.top.equalTo(chatView.snp.bottom).offset(10)
-                make.bottom.equalToSuperview()
-                make.height.equalTo(chatView)
-            }
-            subTitleView.isHidden = false
-        }
-        else{
-            chatView.snp.remakeConstraints { make in
-                make.left.right.equalToSuperview().inset(15)
-                make.top.equalTo(icon.snp.bottom).offset(20)
-                make.height.equalTo(116)
-                make.bottom.equalToSuperview()
-            }
-            subTitleView.isHidden = true
-        }
-    }
-    
-    class ItemView: BaseView {
-        let bottonView = UIView()
-        let tipsIcon = UIImageView()
-        let titleLabel = UILabel()
-        let valueLabel = UILabel()
-        let arrowIcon = UIImageView()
-        
-        override func setupViews() {
-            addSubviews([titleLabel,valueLabel,tipsIcon,arrowIcon])
-
-            backgroundColor = .rgb(0xfafafa)
-            yc.setCornerRadius(22)
-
-            titleLabel.do { (v) in
-                v.textColor = .color(.level1)
-                v.font = .bold(18)
-                
-            }
-            valueLabel.do { (v) in
-                v.textColor = .rgb(0x8d8d8d)
-                v.font = .regular(14)
-            }
-            arrowIcon.image = UIImage(named: "arrow_2")
-        }
-        
-        override func setupLayout() {
-            titleLabel.snp.makeConstraints { make in
-                make.left.equalToSuperview().inset(15)
-                make.top.equalTo(35)
-            }
-            valueLabel.snp.makeConstraints { make in
-                make.left.equalTo(titleLabel)
-                make.top.equalTo(65)
-            }
-            arrowIcon.snp.makeConstraints { make in
-                make.width.equalTo(7)
-                make.height.equalTo(13)
-                make.centerY.equalTo(valueLabel)
-                make.left.equalTo(valueLabel.snp.right).offset(2)
-            }
-            tipsIcon.snp.makeConstraints { make in
-                make.size.equalTo(50)
-                make.right.equalToSuperview().inset(24)
-                make.top.equalToSuperview().inset(33)
-            }
-            
-        }
-    }
-}
-
-
-
-
diff --git a/ShenYin/ShenYin/UI/Home/Scan/AddDeviceVC.swift b/ShenYin/ShenYin/UI/Home/Scan/AddDeviceVC.swift
deleted file mode 100644 (file)
index 74d17df..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-////
-////  AddDeviceVC.swift
-////  ShenYin
-////
-////  Created by liangshi on 2025/8/11.
-////
-//
-//import UIKit
-//
-//class AddDeviceVC:BaseVC{
-//    
-//    let titleLabel = UILabel()
-//    let addView = AddDeviceSectionView()
-//    let scanView = AddDeviceSectionView()
-//    
-//
-//    
-//    override func setupViews() {
-//        self.navBar.title = ""
-//        
-////        navBar.rightView.setImage(UIImage(named: "tips_cion"), for: .normal)
-//        view.addSubviews([titleLabel,addView,scanView])
-//        titleLabel.do { v in
-//            v.text = "从这里选择一项用来添加设备".l10n
-//            v.textColor = .color(.level1)
-//            v.font = .medium(14)
-//            v.textAlignment = .center
-//        }
-//        addView.do { v in
-//            v.icon.image = UIImage(named: "device_ble")
-//            v.yc.setCornerRadius(20)
-//            v.btn.set(title: "添加设备".l10n,font: .regular(14),style: .theme1, target: self, action: #selector(addAction))
-//        }
-//        scanView.do { v in
-//            v.icon.image = UIImage(named: "device_qr")
-//            v.yc.setCornerRadius(20)
-//            v.btn.set(title: "扫码连接".l10n,font: .regular(14),style: .theme1, target: self, action: #selector(scanAction))
-//        }
-//    }
-//    override func setupLayout() {
-//        titleLabel.snp.makeConstraints { make in
-//            make.top.equalTo(kNavBtm + 10)
-//            make.left.equalToSuperview()
-//            make.width.equalTo(kScreenWid)
-//        }
-//        addView.snp.makeConstraints { make in
-//            make.top.equalTo(titleLabel.snp.bottom).offset(30)
-//            make.left.right.equalToSuperview().inset(18)
-//            make.height.equalTo(228)
-//        }
-//        scanView.snp.makeConstraints { make in
-//            make.top.equalTo(addView.snp.bottom).offset(20)
-//            make.left.right.height.equalTo(addView)
-//        }
-//    }
-//
-//    override func navRightViewTapped() {
-//
-//    }
-//    @objc func addAction(){
-//        App.shared.goToPage(BleScanVC())
-//    }
-//    @objc func scanAction(){
-//        App.shared.goToPage(QrVC())
-//    }
-//}
-//class AddDeviceSectionView: BaseView {
-//    let icon = UIImageView()
-//    let btn = CustomButton()
-//    
-//    override func setupViews() {
-//        backgroundColor = .white
-//        addSubviews([icon,btn])
-//        icon.do { v in
-//        }
-//    }
-//    
-//    override func setupLayout() {
-//        icon.snp.makeConstraints { make in
-//            make.width.equalTo(106)
-//            make.height.equalTo(90)
-//            make.centerX.equalToSuperview()
-//            make.top.equalToSuperview().inset(38)
-//        }
-//        btn.snp.makeConstraints { make in
-//            make.top.equalToSuperview().inset(166)
-//            make.left.right.equalToSuperview().inset(49)
-//            make.height.equalTo(49)
-//        }
-//    }
-//}
-//
index a9c40f7..cdd36dc 100644 (file)
@@ -179,7 +179,7 @@ class ScanStateCell: BaseTableViewCell {
             else if state == .scan{
                 titleLabel.text = "正在扫描".l10n
                 desLabel.text = "请确保智能设备已连接电源,且位于手机附近".l10n
-                desLabel.textColor = .rgb(0x8D8D8D)
+                desLabel.textColor = .color(.level3)
             }
             else{
                 //
@@ -199,7 +199,7 @@ class ScanStateCell: BaseTableViewCell {
             v.numberOfLines = 0
         }
         desLabel.do { (v) in
-            v.textColor = .rgb(0x8D8D8D)
+            v.textColor = .color(.level3)
             v.font = .semiBold(14)
             v.textAlignment = .center
             v.numberOfLines = 0