Ich habe Problem dieses gemocht drehen: Wie Bild ausgewählte Zeile und unrotate Bild nicht ausgewählte Zeilen
ich eine Reihe habe, wenn ich die Zeile 0 klicken, es erweitert und Drop-Down-Bild drehen. Wenn ich auf Zeile 1 klicke, erweitern Sie Zeile 1 und die nicht angezeigte Zeile 0, das Dropdown-Bild in Zeile 0 zurück auf normal (Pfeil nach unten) und das Dropdown-Bild in Zeile 1 drehen (Pfeil nach oben).
Hier ist mein Code so weit:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let cell = self.tableView.cellForRow(at: indexPath) as! PaymentMethodCell
let clickedRow = indexPath.row
if indexPath.row == selectedRow{
print("yang muncul selectedRow = -1")
if cell.isSelected {
selectedRow = -1
print("This cell is deselected :\(selectedRow)")
cell.ivExpand.transform = CGAffineTransform(rotationAngle: (180.0 * CGFloat.pi) * 180.0)
}else{
selectedRow = indexPath.row
cell.ivExpand.transform = CGAffineTransform(rotationAngle: (180.0 * CGFloat.pi)/180.0)
}
}else{
if cell.isSelected {
selectedRow = indexPath.row
print("This cell is selected :\(selectedRow)")
cell.ivExpand.transform = CGAffineTransform(rotationAngle: (180.0 * CGFloat.pi)/180.0)
}else{
selectedRow = -1
cell.ivExpand.transform = CGAffineTransform(rotationAngle: (180.0 * CGFloat.pi) * 180.0)
}
cell.lblclickedsubcell.text="00"
print("cell.lblclickedsubcell.text:\(String(describing: cell.lblclickedsubcell.text!))")
}
tableView.reloadData()
}
aber das Ergebnis ist, nachdem ich die Zeile 0 erweitern und dann Reihe 1, Reihe 0 unexpand und Zeile 1 erweitert klicken. Aber Dropdown-Bild in Zeile 0 immer noch nicht wieder normal (Pfeil nach unten). es immer noch als Pfeil nach oben.
Hier ist cellForRowAt:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
var cell = tableView.dequeueReusableCell(withIdentifier: "PaymentMethodCell", for: indexPath) as! PaymentMethodCell
cell.ivPaymentMeyhod.contentMode = UIViewContentMode.scaleAspectFit
cell.ivPaymentMeyhod.contentMode = UIViewContentMode.left
cell.ivPaymentMeyhod.clipsToBounds=false
//cell.ivPaymentMeyhod.kf.setImage(with: url!)
cell.ivPaymentMeyhod.image = UIImage(named: "\(PaymentImageArray[indexPath.item])")
let clickedRow = indexPath.row
cell.lblclickedRow.text = "\(indexPath.row)"
let ContractNumber = "\(contractnumber!)"
if(CustomUserDefaults.shared.isGuest() || ContractNumber==""){
cell.lblContractNumber.text = ""
cell.lblContractAmount.text = ""
}else{
cell.lblContractNumber.text = "\(contractnumber!)"
cell.lblContractAmount.text = "\(contractamount!)"
}
if(clickedRow==0){
cell.tableView.isHidden=true
cell.XibView.isHidden=false
let AlfaIndoView = HowToPayView.AlfaIndoNib()
let cellwidth = cell.XibView.bounds.width
print("cellwidth:\(cellwidth)")
cell.XibView.addSubview(AlfaIndoView)
AlfaIndoView.autoresizingMask = [.flexibleHeight, .flexibleWidth]
AlfaIndoView.frame.size.width = cellwidth
}else if(clickedRow==1){
cell.tableView.isHidden=true
cell.XibView.isHidden=false
let POSindonesiaView = HowToPayView.POSindonesiaNib()
let cellwidth = cell.XibView.bounds.width
print("cellwidth:\(cellwidth)")
cell.XibView.addSubview(POSindonesiaView)
POSindonesiaView.autoresizingMask = [.flexibleHeight, .flexibleWidth]
POSindonesiaView.frame.size.width = cellwidth
}else if(clickedRow==2){
cell.tableView.isHidden=false
cell.XibView.isHidden=true
cell.setUpTable()
}else if(clickedRow==3){
cell.tableView.isHidden=false
cell.XibView.isHidden=true
cell.setUpTable()
}else if(clickedRow==4){
cell.tableView.isHidden=false
cell.XibView.isHidden=true
cell.setUpTable()
}else if(clickedRow==5){
cell.tableView.isHidden=false
cell.XibView.isHidden=true
cell.setUpTable()
}else if(clickedRow==6){
cell.tableView.isHidden=true
cell.XibView.isHidden=false
let ATMbersamaView = HowToPayView.ATMbersamaNib()
let cellwidth = cell.XibView.bounds.width
print("cellwidth:\(cellwidth)")
cell.XibView.addSubview(ATMbersamaView)
ATMbersamaView.autoresizingMask = [.flexibleHeight, .flexibleWidth]
ATMbersamaView.frame.size.width = cellwidth
}
return cell
}
Helfen Sie mir, diesen Code