Blame view

Twear/Setting(设置)/LanguageSettingVC.swift 3.98 KB
75d24c15   yangbin   123
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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
  //
  //  LanguageSettingVC.swift
  //  Twear
  //
  //  Created by yangbin on 2021/12/18.
  //
  
  import UIKit
  import SnapKit
  import MBProgressHUD
  
  class LanguageSettingVC: UIViewController {
      
      @IBOutlet weak var tableView: UITableView!
      
      let languageArray: [AppSettings.Language] = [.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 device = CurDevice
      
      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: 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(device.timeFormat))!, screenOnTime: 5, pair: 0) { error in
              MBProgressHUD.hide()
          }
          
      }
  }