我在viewcontroller中有一个标签和tableview,如下所示:
我想当用户点击tableViewCell上的步进按钮,然后上标签(绿色按钮下面的数字)得到更新。然而,我无法从我的小组课程中获取标签。
有什么建议吗? 编辑: 这是我的tablevc代码:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "basket", for: indexPath) as! basketcell2
cell.ConfigureCell(number: basket[basketfoodtitle[indexPath.row]]!, price: foodtitleprice[basketfoodtitle[indexPath.row]]!, foodtitle: basketfoodtitle[indexPath.row])
return cell
}
这是我的手机代码:
@IBAction func steperchanged(_ sender: Any) {
NumberOfFood.text = String(Int(stepper.value))
let totalprice = Int(stepper.value)*foodtitleprice[foodtitle.text!]!
TotalPrice.text = totalprice.stringFormatedWithSepator
}
func ConfigureCell(number:Int,price:Int,foodtitle:String) {
stepper.value = Double(number)
Price.text = price.stringFormatedWithSepator
NumberOfFood.text = String(number)
self.foodtitle.text = foodtitle
let totalprice = Int(stepper.value) * foodtitleprice[foodtitle]!
TotalPrice.text = totalprice.stringFormatedWithSepator
}
答案 0 :(得分:0)
前进的最佳方式是使用代表,但如果不可能,请检查以下代码,这是最简单的
var counterForTopLabel : Int = Int(){
didSet{
self.counterLabel.text = "\(counterForTopLabel)";
}
}
并且在您的cellForRowAtIndexPath中,您可以添加按钮的目标
cell.incrementCounterButton.addTarget(self, action: #selector(self.tappedIncrementButton(sender:)), for: .touchUpInside);
cell.decrementCounterButton.addTarget(self, action: #selector(self.tappedDecrementButton(sender:)), for: .touchUpInside);
然后这些函数将在
下面声明func tappedIncrementButton(sender : UIButton){
counterForTopLabel = counterForTopLabel + 1;
}
func tappedDecrementButton(sender : UIButton){
counterForTopLabel = counterForTopLabel - 1;
}