Blame view
App/createNew/VCNhapMucChup.swift
3.68 KB
|
d774f0637
|
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 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
import UIKit
class VCNhapMucChup: UIViewController, IVCLoadDataTableViewUIThread {
@IBOutlet weak var edtTitle: UITextField!
@IBOutlet weak var topMargin: NSLayoutConstraint!
@IBOutlet weak var tableView: UITableViewLoadDataFromUIThread!
static func getInstance() -> VCNhapMucChup {
let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let vcOpen = storyboard.instantiateViewController(withIdentifier: "VCNhapMucChup") as! VCNhapMucChup
return vcOpen
}
override func viewDidLoad() {
super.viewDidLoad()
tableView.emptyText = "Empty"
CellMucChupWithDelete.registerClass(tableView: tableView, forCellReuseIdentifier: "CellMucChupWithDelete")
self.tableView.separatorStyle = UITableViewCellSeparatorStyle.singleLine
self.tableView.rowHeight = UITableViewAutomaticDimension
self.tableView.estimatedRowHeight = 150
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
tableView.initAndLoadData(self)
}
@IBAction func btnAddClick(_ sender: Any) {
if let title = edtTitle.text?.trimAndReturn(), title.length > 0 {
for item in tableView.itemsData {
if let mc = item as? MucChup, mc.name == title {
CommonUtils.showToastLong(text: LocalizedString("muc_chup_da_ton_tai"))
return
}
}
tableView.itemsData.insert(MucChup(name: title), at: 0)
tableView.insertRows(at: [IndexPath(row: 0, section: 0)], with: .automatic)
tableView.removeAllLoaddingEmpty()
edtTitle.text = ""
} else {
CommonUtils.showToastLong(text: LocalizedString("khong_de_trong"))
}
}
@IBAction func btnRightClick(_ sender: Any) {
saveMucChup()
_ = getVcRoot()?.changeCurrentController(VCChonMucChup.getInstance())
}
@IBAction func btnLeftClick(_ sender: Any) {
saveMucChup()
_ = getVcRoot()?.changeCurrentController(VCNhapTenCtruong.getInstance())
}
private func saveMucChup() {
var mucChups = [MucChup]()
for item in tableView.itemsData {
if let mucChup = item as? MucChup {
mucChups.append(mucChup)
}
}
getVcRoot()?.mucChups = mucChups
}
//region ============== TableView Data =========
func loadDataOnUI(complete: @escaping ([Any]?) -> ()) {
complete(getVcRoot()?.mucChups)
}
func getAllCell() -> [BaseCell] {
var baseCells: [BaseCell] = [BaseCell]();
baseCells.append(BaseCell(type: 0, identifier: "CellMucChupWithDelete"))
return baseCells
}
func getTypeOfData(baseobj: Any) -> Int {
return 0
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if let mucChup = self.tableView.getItem(indexPath) as? MucChup {
edtTitle.text = mucChup.name
}
}
func deleteMucChup(_ mucChupParam: MucChup) {
var indexFind = -1, index = -1
for item in self.tableView.itemsData {
index += 1
if let mucChup = item as? MucChup, mucChup.name == mucChupParam.name {
indexFind = index
break
}
}
if indexFind >= 0 {
tableView.itemsData.remove(at: indexFind)
tableView.deleteRows(at: [IndexPath(row: indexFind, section: 0)], with: .automatic)
}
}
//endregion
@IBAction func edtActionTrigerClick(_ sender: Any) {
edtTitle.endEditing(true)
}
func getVcRoot() -> VCRootCreateNew? {
return self.parent as? VCRootCreateNew
}
}
|