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,
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) {
--- /dev/null
+//
+// 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())
+ }
+}
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
CCPage.gotoChat()
}
}
- func tapFunctionAction(_ type:HomeCellType){
+ func tapFunctionAction(_ type:JoyAiFuntionCellType){
switch type {
case .fileRecord:
CCPage.gotoFieldRecord()
v.text = "AI" + "智能对话".l10n
}
valueLabel.do { (v) in
- v.textColor = .rgb(0x8d8d8d)
+ v.textColor = .color(.level3)
v.font = .regular(12)
v.text = "AI" + "伙伴,随叫随到".l10n
}
}
}
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{
}
}
}
- var tapCallback:((HomeCellType)->Void)?
+ var tapCallback:((JoyAiFuntionCellType)->Void)?
override func setupViews() {
let h = 64.0
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
v.numberOfLines = 2
}
valueLabel.do { (v) in
- v.textColor = .rgb(0x8d8d8d)
+ v.textColor = .color(.level3)
v.font = .regular(10)
v.numberOfLines = 2
}
case level2
/// 三级标题
case level3
-
+ /// 占位符
case placeholder
-
+ /// 分割线
case separateLine
-
+ /// cell内容
case cellBg
-
+ /// 运动
case sport
}
case .level2:
return 0x666666
case .level3:
- return 0x999999
+ return 0x8d8d8d
case .placeholder:
return 0xcccccc
case .separateLine:
case .level2:
return 0x999999
case .level3:
- return 0xcccccc
+ return 0x8d8d8d
case .placeholder:
return 0x666666
case .separateLine:
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(_:)))
// 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()
+++ /dev/null
-//
-// 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())
- }
-}
-
+++ /dev/null
-//
-// 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
- }
- }
-}
+++ /dev/null
-//
-// 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)
- }
-
- }
- }
-}
-
-
-
-
+++ /dev/null
-////
-//// 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)
-// }
-// }
-//}
-//
else if state == .scan{
titleLabel.text = "正在扫描".l10n
desLabel.text = "请确保智能设备已连接电源,且位于手机附近".l10n
- desLabel.textColor = .rgb(0x8D8D8D)
+ desLabel.textColor = .color(.level3)
}
else{
//
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