Blame view

HDFwear/Setting/LanguageSettingVC.swift 4.06 KB
f2cf74c7   yangbin   1.0.20(4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  //
  //  LanguageSettingVC.swift
  //  Twear
  //
  //  Created by yangbin on 2021/12/18.
  //
  
  import UIKit
  import SnapKit
  import MBProgressHUD
  
  class LanguageSettingVC: UIViewController {
      
      @IBOutlet weak var tableView: UITableView!
      
b92bf3ed   daifengyi   feat:language pag...
16
      let languageArray: [AppSettings.Language] = [.system, .Chinese, .English]
f2cf74c7   yangbin   1.0.20(4)
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
      
      //[.system, .Chinese, .English, .Russisch, .Spanish, .German, .Italy, .French, .Poland, .Czech, .Skovak, .Hungarian, .Japanese, .Latvia, .Lithuania, .Estonia, .Portuguese ,.Arab]
      var languageDic: [AppSettings.Language: Bool] = [.system: false, .Chinese: false, .English: false, .Russisch: false, .Spanish: false, .German: false, .Italy: false, .French: false, .Poland: false, .Czech: false, .Skovak: false, .Hungarian: false, .Japanese: false, .Latvia: false, .Lithuania: false, .Estonia: false, .Portuguese: false, .Arab: false]
      
      let textDic: [AppSettings.Language: String] = [.system : LocString("跟随系统"), .Chinese: "简体中文", .English: "English", .Russisch: "Русский", .Spanish: "español", .German: "Deutsch", .Italy: "Italiano", .French: "Français", .Poland: "Polski", .Czech: "čeština", .Skovak: "Slovenčina", .Hungarian: "Magyar", .Japanese: "日本語", .Latvia: "latviešu", .Lithuania: "Lietuvių", .Estonia: "eesti", .Portuguese: "Português", .Arab: "عربى"]
      
      var curLanguage: AppSettings.Language = .system
      let admin = AdminHelper.shared.loadLocalAdminData()
      
      override func viewDidDisappear(_ animated: Bool) {
          super.viewDidDisappear(animated)
          MBProgressHUD.hide()
      }
      
      override func viewDidLoad() {
          super.viewDidLoad()
          title = LocString("语言设置")
          
          tableView.register(UINib.init(nibName: "SettingCell2", bundle: Bundle.main), forCellReuseIdentifier: "SettingCell2")
          tableView.tableFooterView = UIView(frame: CGRect.zero)
          
          curLanguage = AppSettings.Language(rawValue: admin.device.languageRaw)!
      
  
          languageDic[curLanguage] = true
          //        tableView.reloadData()
          // Do any additional setup after loading the view.
      }
      
      
  }
  
  extension LanguageSettingVC: UITableViewDelegate, UITableViewDataSource {
      
      
      
      
      func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
          return 50
      }
      
      
      func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
          return languageArray.count
      }
      
      func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
          let cell = tableView.dequeueReusableCell(withIdentifier: "SettingCell2", for: indexPath) as! SettingCell2
          cell.label.text = textDic[languageArray[indexPath.row]]
          cell.selectImageView.image = UIImage(named: languageDic[languageArray[indexPath.row]]! ? "setting_selected" : "setting_not_selected")
          return cell
      }
      
      //    func updateUI(_ indexPath: IndexPath, device: DeviceModel) {
      //        MBProgressHUD.hide()
      //        AdminHelper.shared.updateDevice(device)
      //        let cell = tableView.cellForRow(at: indexPath) as! SettingCell2
      //        let cell1 = tableView.cellForRow(at: IndexPath(row: 1-indexPath.row, section: indexPath.section)) as! SettingCell2
      //        cell.selectImageView.image = UIImage(named: "setting_selected")
      //        cell1.selectImageView.image = UIImage(named: "setting_not_selected")
      //    }
      //
      func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
          //        let cell = tableView.cellForRow(at: indexPath) as! SettingCell2
          _ = MBProgressHUD.showMessage("")
          languageDic[curLanguage] = false
          curLanguage = languageArray[indexPath.row]
          languageDic[languageArray[indexPath.row]]! = true
          tableView.reloadData()
          
          
          
          BluetoothManager.shared.setLanguage(languageArray[indexPath.row], timeFormat: TimeFormat(rawValue: UInt8(admin.userInfo.timeFormat))!, screenOnTime: 5, pair: 0) { error in
              MBProgressHUD.hide()
          }
          
      }
  }