tableview cell的多次点击问题

This commit is contained in:
DDIsFriend
2023-10-24 15:48:55 +08:00
parent a929cc0c57
commit 2ac5c9901c
3 changed files with 17 additions and 10 deletions

View File

@@ -71,7 +71,7 @@ extension NotificationSetUpController : UITableViewDelegate,UITableViewDataSourc
// GROUP.setNewMessageAlert(newMessageAlert: isOn)
}
})
.disposed(by: disposeBag)
.disposed(by: cell!.disposeBag)
}
return cell!
@@ -186,12 +186,14 @@ class NotificationSetUpCell : DDTableViewCell {
public let switchButton : UISwitch
public let arrow : DDImageView
public let line : DDView
public var disposeBag : DisposeBag
override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
radiusView = DDView()
nameLabel = DDLabel.dd_init(withText: "", font: .mediumFont(auto(14)), textColor: .hex("000000").alpha(0.8))
switchButton = UISwitch()
arrow = DDImageView()
line = DDView.init()
disposeBag = DisposeBag()
super.init(style: style, reuseIdentifier: reuseIdentifier)
selectionStyle = .none
@@ -234,4 +236,9 @@ class NotificationSetUpCell : DDTableViewCell {
public required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override func prepareForReuse() {
super.prepareForReuse()
disposeBag = DisposeBag()
}
}

View File

@@ -535,7 +535,7 @@ extension RescuePendingOrderController : UITableViewDelegate,UITableViewDataSour
if USERP.canRejectDispatchHandle == true {
cell?.refuseButton.isHidden = false
cell?.refuseButton.snp.updateConstraints({ make in
make.right.equalTo(cell!.acceptButton.snp.left).offset(-auto(10))
make.right.equalTo(cell!.acceptButton.snp.left).offset(-auto(5))
make.width.equalTo(auto(80))
})
}else{
@@ -550,7 +550,7 @@ extension RescuePendingOrderController : UITableViewDelegate,UITableViewDataSour
cell?.acceptButton.isHidden = false
cell?.acceptButton.snp.updateConstraints({ make in
make.width.equalTo(auto(80))
make.right.equalTo(-auto(10))
make.right.equalTo(-auto(8))
})
}else{
cell?.acceptButton.isHidden = true
@@ -768,7 +768,7 @@ extension RescuePendingDispatchController : UITableViewDelegate,UITableViewDataS
.subscribe(onNext: { _ in
WEBTOOL.open(name: .reporting,appending: "&queryType=\(OrderTypeEnum.TO_DISPATCH_VEHICLE.rawValue)&userOrderId=\(model.userOrderId)&orderCode=\(model.orderCode)")
})
.disposed(by: disposeBag)
.disposed(by: cell!.disposeBag)
cell?.contactButton.rx.tap
.subscribe(onNext: { _ in
SC.userOrderId = model.userOrderId
@@ -795,7 +795,7 @@ extension RescuePendingDispatchController : UITableViewDelegate,UITableViewDataS
if USERP.canWaitdispatchBtn == true {
cell?.dispatchButton.isHidden = false
cell?.dispatchButton.snp.updateConstraints({ make in
make.right.equalTo(-auto(10))
make.right.equalTo(-auto(8))
make.width.equalTo(auto(80))
})
}else{
@@ -1408,7 +1408,7 @@ class RescuePendingOrderCell : DDTableViewCell {
}
acceptButton.snp.makeConstraints { make in
make.right.equalToSuperview().offset(-auto(10))
make.right.equalToSuperview().offset(-auto(8))
make.top.equalTo(reserveTitleLabel.snp.bottom).offset(auto(10))
make.width.equalTo(auto(80))
make.height.equalTo(auto(30))
@@ -1416,7 +1416,7 @@ class RescuePendingOrderCell : DDTableViewCell {
}
refuseButton.snp.makeConstraints { make in
make.right.equalTo(acceptButton.snp.left).offset(-auto(10))
make.right.equalTo(acceptButton.snp.left).offset(-auto(5))
make.top.equalTo(acceptButton)
make.width.equalTo(auto(80))
make.height.equalTo(auto(30))
@@ -1735,14 +1735,14 @@ class RescuePendingDispatchCell : DDTableViewCell {
}
contactButton.snp.makeConstraints { make in
make.right.equalTo(dispatchButton.snp.left).offset(-auto(10))
make.right.equalTo(dispatchButton.snp.left).offset(-auto(5))
make.top.equalTo(dispatchButton)
make.width.equalTo(auto(80))
make.height.equalTo(auto(30))
}
reportButton.snp.makeConstraints { make in
make.right.equalTo(contactButton.snp.left).offset(-auto(10))
make.right.equalTo(contactButton.snp.left).offset(-auto(5))
make.top.equalTo(dispatchButton)
make.width.equalTo(auto(80))
make.height.equalTo(auto(30))
@@ -1949,7 +1949,7 @@ class RescueIsIngCell : DDTableViewCell {
}
reportButton.snp.makeConstraints { make in
make.right.equalToSuperview().offset(-auto(10))
make.right.equalToSuperview().offset(-auto(8))
make.top.equalTo(destinationLabel.snp.bottom).offset(auto(10))
make.width.equalTo(auto(80))
make.height.equalTo(auto(30))