我有两个视图控制器。第一个视图控制器包含一个包含项目名称和成本的表视图。每当我点击任何表视图单元格时,第二个视图控制器将显示为弹出屏幕。我可以选择特定选定项目的单位数量,例如 - 1 +
我的问题是:当我点击表格视图中的任何项目时(例如:花费100卢比),我得到弹出屏幕并选择计数为2,因此总费用将为200卢比,它工作得非常好。所选项目的费用将添加到总金额中。但问题是:当我取消选择项目时,应从总值中删除附加值。它没有发生。
父视图控制器:
import UIKit
let finalPrice : Int = 0
func expandableTableView(_ expandableTableView: LUExpandableTableView, didSelectRowAt indexPath: IndexPath)
{
let inPrice = priceArr[indexPath.row]
UserDefaults.standard.set(inPrice, forKey: "inPrice")
let cell: UITableViewCell? = expandableTableView.cellForRow(at: indexPath)
if cell?.accessoryType == UITableViewCellAccessoryType.none
{
cell?.accessoryType = UITableViewCellAccessoryType.checkmark
arrData[indexPath.section].Children?[indexPath.row].isSelected = 1
let childViewController = childViewControllr(nibName: "childViewController", bundle: nil)
childViewController.delegate = self
childViewController.selectsegmentIndex = selectsegmentIndex
addChildViewController(childViewController)
view.addSubview(childViewController.view)
childViewController.view.frame = CGRect(x: 20, y: 70, width: self.view.frame.size.width-40, height: self.view.frame.size.height-100)
childViewController.view.center.x = self.view.center.x
childViewController.didMove(toParentViewController: self)
}
else
{
cell?.accessoryType = UITableViewCellAccessoryType.none
}
}
func totalCostLbl(data: Int)
{
print("data \(data)")
finalPrice = finalPrice + data
totalPriceLbl.text = "\(finalPrice) Rupees"
}
在我的子视图控制器中:
@IBAction func OkButtonAction(_ sender: UIButton)
{
totalPriceCount = UserDefaults.standard.integer(forKey: "inPrice")
totalPriceCount = totalPriceCount * numOfUnits
self.delegate?.totalCostLbl(data: totalPriceCount)
}