NFCViewController.swift
2.85 KB
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
//
// NFCViewController.swift
// Twear
//
// Created by yangbin on 2022/2/12.
//
import UIKit
import CoreNFC
@available(iOS 13.0, *)
class NFCViewController: UIViewController {
var nfcList: [NFCModel] = []
@IBOutlet weak var tableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
title = LocString("卡包")
let addButton = UIButton(frame: CGRect(x: 0, y: 0, width: 40, height: 28))
addButton.setImage(UIImage(named: "device_add"), for: .normal)
addButton.addTarget(self, action: #selector(add), for: .touchUpInside)
navigationItem.rightBarButtonItem = UIBarButtonItem(customView: addButton)
tableView.register(UINib.init(nibName: "NFCCell", bundle: Bundle.main), forCellReuseIdentifier: "NFCCell")
tableView.contentInset = UIEdgeInsets.init(top: 5, left: 0, bottom: 10, right: 0)
tableView.tableFooterView = UIView(frame: CGRect.zero)
// Do any additional setup after loading the view.
}
@objc private func add() {
let vc1 = UIStoryboard.loadViewControllerIdentifier(storyboardName: "Setting", identifier: "NFCHomeVC")
navigationController?.pushViewController(vc1, animated: true)
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destination.
// Pass the selected object to the new view controller.
}
*/
}
@available(iOS 13.0, *)
extension NFCViewController: UITableViewDelegate, UITableViewDataSource {
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return SCREEN_WIDTH/7.0*3.0+10
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return nfcList.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "NFCCell", for: indexPath) as! NFCCell
cell.nfc = nfcList[indexPath.row]
return cell
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
// let cell = tableView.cellForRow(at: indexPath)
// cell.isSelected = false
let vc = UIStoryboard.loadViewControllerIdentifier(storyboardName: "Setting", identifier: "NFCDetailVC") as! NFCDetailVC
vc.nfc = nfcList[indexPath.row]
vc.index = indexPath.row
vc.nfcClosure = { [weak self] in
self?.nfcList = UserInfo.nfc
// self?.nfcList[indexPath.row] = nfc1
self?.tableView.reloadData()
}
navigationController?.pushViewController(vc, animated: true)
}
}